stringtranslate.com

Комбинаторная оптимизация

Минимальное остовное дерево взвешенного планарного графа . Поиск минимального остовного дерева — распространенная проблема, связанная с комбинаторной оптимизацией.

Комбинаторная оптимизация — это подобласть математической оптимизации , которая состоит из поиска оптимального объекта из конечного набора объектов, [1] где множество возможных решений дискретно или может быть сведено к дискретному множеству. Типичными задачами комбинаторной оптимизации являются задача коммивояжера («TSP»), задача минимального связующего дерева («MST») и задача о рюкзаке . Во многих таких задачах, например упомянутых ранее, исчерпывающий поиск неразрешим, поэтому вместо этого приходится прибегать к специализированным алгоритмам, которые быстро исключают большие части пространства поиска, или к алгоритмам аппроксимации.

Комбинаторная оптимизация связана с исследованием операций , теорией алгоритмов и теорией сложности вычислений . Он имеет важные применения в нескольких областях, включая искусственный интеллект , машинное обучение , теорию аукционов , разработку программного обеспечения , СБИС , прикладную математику и теоретическую информатику .

В некоторой исследовательской литературе [2] дискретная оптимизация рассматривается как состоящая из целочисленного программирования вместе с комбинаторной оптимизацией (которая, в свою очередь, состоит из задач оптимизации , связанных со структурами графов ), хотя все эти темы тесно переплетаются в научной литературе. [ нужны разъяснения ]

Приложения

Приложения комбинаторной оптимизации включают, помимо прочего:

Методы

Существует большое количество литературы по алгоритмам с полиномиальным временем для некоторых специальных классов дискретной оптимизации. Значительная часть ее объединена теорией линейного программирования . Некоторыми примерами задач комбинаторной оптимизации, охватываемыми этой структурой, являются кратчайшие пути и деревья кратчайших путей , потоки и циркуляции , остовные деревья , задачи сопоставления и матроиды .

Для NP-полных задач дискретной оптимизации текущая исследовательская литература включает следующие темы:

Задачи комбинаторной оптимизации можно рассматривать как поиск лучшего элемента из некоторого набора дискретных элементов; поэтому, в принципе, для их решения можно использовать любой алгоритм поиска или метаэвристику . Возможно, наиболее универсально применимыми подходами [ слова ласки ] являются подходы ветвей и границ (точный алгоритм, который можно остановить в любой момент времени для использования в качестве эвристики), метод ветвей и разрезов (использует линейную оптимизацию для создания границ), динамический программирование (рекурсивное построение решения с ограниченным окном поиска) и табу-поиск (жадный алгоритм замены). Однако общие алгоритмы поиска не гарантируют, что они первыми найдут оптимальное решение, и не гарантируют, что они будут работать быстро (за полиномиальное время). Поскольку некоторые задачи дискретной оптимизации являются NP-полными , например задача коммивояжера (решения), [7] это ожидается, если только P=NP .

Для каждой задачи комбинаторной оптимизации существует соответствующая проблема принятия решения , которая спрашивает, существует ли допустимое решение для некоторой конкретной меры . Например, если есть граф , который содержит вершины и , задача оптимизации может заключаться в том, чтобы «найти путь от до , который использует наименьшее количество ребер». Ответ этой задачи может быть, скажем, 4. Соответствующей проблемой решения будет вопрос: «Существует ли путь от к , который использует 10 или меньше ребер?» На эту проблему можно ответить простым «да» или «нет».

Область аппроксимационных алгоритмов занимается алгоритмами поиска почти оптимальных решений сложных задач. Обычная версия решения в таком случае является неадекватным определением проблемы, поскольку она указывает только приемлемые решения. Несмотря на то, что мы могли бы ввести подходящие задачи принятия решений, тогда эту проблему более естественно охарактеризовать как задачу оптимизации. [8]

Задача оптимизации NP

Задача NP-оптимизации (NPO) — это задача комбинаторной оптимизации со следующими дополнительными условиями. [9] Обратите внимание, что упомянутые ниже полиномы являются функциями размера входных данных соответствующих функций, а не размера некоторого неявного набора входных экземпляров.

Это означает, что соответствующая проблема решения находится в NP . В информатике интересные задачи оптимизации обычно обладают вышеуказанными свойствами и, следовательно, являются задачами НКО. Задача дополнительно называется задачей P-оптимизации (ПО), если существует алгоритм, который находит оптимальные решения за полиномиальное время. Часто, имея дело с классом NPO, интересуются задачами оптимизации, для которых варианты решения являются NP-полными . Обратите внимание, что отношения жесткости всегда относятся к некоторому уменьшению. Из-за связи между алгоритмами аппроксимации и задачами вычислительной оптимизации, сокращения, которые в некотором отношении сохраняют аппроксимацию, являются для этого предмета более предпочтительными, чем обычные сокращения Тьюринга и Карпа . Примером такого сокращения может быть L-редукция . По этой причине задачи оптимизации с NP-полными версиями решения не обязательно называются NPO-полными. [10]

НКО подразделяются на следующие подклассы по степени их аппроксимируемости: [9]

Задача NPO называется полиномиально ограниченной (PB), если для каждого экземпляра и для каждого решения мера ограничена полиномиальной функцией размера . Класс NPOPB — это класс задач NPO, которые полиномиально ограничены.

Конкретные проблемы

Оптимальный тур коммивояжера по 15 крупнейшим городам Германии . Это самый короткий из 43 589 145 600 [11] возможных туров, в рамках которых каждый город посещается ровно один раз.

Смотрите также

Примечания

  1. ^ Шрийвер 2003, с. 1.
  2. ^ Дискретная оптимизация. Эльзевир. Архивировано из оригинала 5 июля 2013 г. Проверено 8 июня 2009 г.
  3. ^ Сбихи, Абделькадер; Эглезе, Ричард В. (2007). «Комбинаторная оптимизация и зеленая логистика» (PDF) . 4ИЛИ . 5 (2): 99–116. дои : 10.1007/s10288-007-0047-3. S2CID  207070217. Архивировано (PDF) из оригинала 26 декабря 2019 г. Проверено 26 декабря 2019 г.
  4. ^ Эскандарпур, Маджид; Дежакс, Пьер; Мемчик, Джо; Петон, Оливье (2015). «Проектирование устойчивой сети цепочки поставок: обзор, ориентированный на оптимизацию» (PDF) . Омега . 54 : 11–32. дои : 10.1016/j.omega.2015.01.006. Архивировано (PDF) из оригинала 26 декабря 2019 г. Проверено 26 декабря 2019 г.
  5. ^ Хобе, Алекс; Фоглер, Дэниел; Сейболд, Мартин П.; Эбигбо, Анози; Сеттгаст, Рэндольф Р.; Саар, Мартин О. (2018). «Оценка скорости потока жидкости через сеть трещин с использованием комбинаторной оптимизации». Достижения в области водных ресурсов . 122 : 85–97. arXiv : 1801.08321 . Бибкод : 2018AdWR..122...85H. doi :10.1016/j.advwatres.2018.10.002. S2CID  119476042. Архивировано из оригинала 21 августа 2020 г. Проверено 16 сентября 2020 г.
  6. ^ Кук 2016.
  7. ^ «Приближение-TSP» (PDF) . Архивировано (PDF) из оригинала 1 марта 2022 г. Проверено 17 февраля 2022 г.
  8. ^ Аузиелло, Джорджо; и другие. (2003), Сложность и аппроксимация (исправленная редакция), Springer, ISBN 978-3-540-65431-5
  9. ^ аб Хромкович, Юрай (2002), Алгоритмика для сложных задач , Тексты по теоретической информатике (2-е изд.), Springer, ISBN 978-3-540-44134-2
  10. ^ Канн, Вигго (1992), Об аппроксимируемости задач NP-полной оптимизации , Королевский технологический институт, Швеция, ISBN 91-7170-082-Х
  11. ^ Возьмите один город и заберите все возможные приказы остальных 14 городов. Затем разделите на два, потому что не имеет значения, в каком направлении во времени они следуют друг за другом: 14!/2 = 43 589 145 600.

Рекомендации

Внешние ссылки