Насколько я понимаю, поскольку решение линейной программы всегда происходит в вершине ее многогранного выполнимого множества (если решение существует и оптимальное значение целевой функции ограничено снизу, предполагая задачу минимизации), как можно выполнить поиск через интерьер возможного региона будет лучше? Это сходится быстрее? При каких обстоятельствах было бы выгодно использовать симплекс-метод по сравнению с методами внутренней точки? Проще ли реализовать в коде, чем другой?
14
Ответы:
Исходя из личного опыта, я бы сказал, что симплекс-методы немного легче понять, как реализовать, чем методы внутренних точек, основываясь на личном опыте реализации как основного симплексного метода, так и базового метода внутренних точек в MATLAB в рамках изучения линейного программирования. , Основными препятствиями в простейшем симплексе являются правильная реализация Фазы I и Фазы II, а также правильное выполнение правила антициклирования. Основные препятствия в реализации метода внутренних точек для линейного программирования, как правило, заключаются в правильной реализации итерационного метода и соответствующем масштабировании параметра барьера.
Вы можете найти более полное обсуждение плюсов и минусов каждого алгоритма в учебнике по линейному программированию, таких как Введение в линейную оптимизацию Берцимаса и Цициклиса. ( Отказ от ответственности: я изучил линейное программирование из этого учебника и взял линейное программирование в Массачусетском технологическом институте от жены Берцимаса.) Вот некоторые из основ:
Плюсы симплекса:
Минусы симплекса:
Плюсы методов интерьерной точки:
Минусы методов внутренней точки:
источник
Ответ прост. Они оба (симплекс и методы внутренней точки) являются зрелой областью с алгоритмической точки зрения. Они оба работают очень хорошо на практике. Хорошая репутация IPM (методы внутренней точки зрения) обусловлена его полиномиальной сложностью в худшем случае. Это не относится к симплексу, который имеет комбинаторную сложность. Тем не менее комбинаторные линейные программы практически никогда не встречаются на практике. Для очень больших задач IP кажется немного быстрее, но это правило не является обязательным. По моему мнению, ИС может быть легко понять и реализовать, но наверняка кто-то еще может не согласиться, и это нормально. Теперь, в LP, если решение уникально, оно определенно будет в вершине (и IP, и Simplex также преуспевают здесь). Решение также может быть на поверхности многогранника или на ребре, в этом случае, смежная вершина (или вершины) также является решением (опять же, IP и симплекс преуспевают). Так что они в значительной степени одинаковы.
источник