Складність симплексного алгоритму


36

Яка верхня межа алгоритму симплексного пошуку рішення лінійної програми?

Як би я міг шукати доказ для такої справи? Начебто найгірший випадок, якщо кожну вершину потрібно відвідувати, це . Однак на практиці алгоритм симплекс буде працювати значно швидше, ніж це для більш стандартних проблем.O(2n)

Як я можу пояснити середню складність проблеми, яка вирішується за допомогою цього методу?

Будь-яка інформація або посилання високо оцінені!


5
Зауважте, що, як сказала Машка у відповіді , у нас насправді немає «алгоритму симплексу». Існує багато різних алгоритмів симплексу, залежно від вибору правила повороту.
Цуйосі Іто

2
У куба розмірності є 2 n вершин, і так це, якщо верхня межа для будь-якого симплексного варіанту на (наприклад, Klee-Minty) кубиках. Однак є багатогранники в розмірі n з 2 n гранями, такі як подвійні циклічні багатогранники з більш ніж 2 n вершинами, тому 2 n не є безпосередньою верхньою межею для часу виконання симплексного методу для квадратних матриць обмеження взагалі . n2nn2n2n2n
Рахул Савані

Відповіді:


72

Алгоритм симплекс дійсно відвідує всі 2n вершин у гіршому випадку ( Klee & Minty 1972 ), і це виявляється правдою для будь-якого детермінованого правила зведення. Однак у важливій роботі, що використовує згладжений аналіз, Спілман та Тенг (2001) довели, що коли входи в алгоритм трохи випадковим чином збурені, очікуваний час роботи алгоритму симплекс є багаточленним для будь-яких входів - це в основному говорить про те, що для будь-яка проблема, яка існує поблизу, буде ефективно вирішувати симплекс-метод, і вона в значній мірі охоплює будь-яку лінійну програму реального світу, яку ви хочете вирішити. Потім Кельнер і Шпільман (2006) представив багаточленний рандомізований симплекс-алгоритм, що truley працює на будь-яких входах, навіть поганих для оригінального алгоритму симплексу.


36

Як сказав Лев, в гіршому випадку алгоритм відвідує всі 2г вершини, де г - кількість змінних. Однак ефективність симплексного алгоритму також може сильно залежати від конкретного правила, що використовується. Наскільки мені відомо, досі залишається відкритим питання, чи існує специфічне детерміноване правило з суто експоненціальним найгіршим часом роботи. Багато кандидатів були виключені за результатами нижньої межі. Нещодавно Фрідманн, Хансен та Цвік також показали перші не поліноміальні нижні межі для деяких природних рандомізованих правил стрижня з деякими виправленнями, наданими пізніше .

нn86


4
і, як JeffE вказував в іншому питанні ( cstheory.stackexchange.com/questions/2149/… ), найкращий поточний субекспоненціальний метод є різновидом подвійного симплексу.
Суреш Венкат

Посилання на папір Вершиніна мертва.
kutschkem

8

Щоб отримати уявлення про найгірший і середній випадок аналізу симплексного методу, слід прочитати "Згладжений аналіз: чому алгоритм симплекс зазвичай займає поліноміальний час". Спілман і Тенг.


3

Хорошим посиланням на те, чому симплекс не працює в поліноміальний час, а не чому він є експоненціальним, є комбінаторна оптимізація Papadimitriou & Steiglitz, Розділ 8.6, в якій вони демонструють, що Simplex не є алгоритмом поліноміального часу.


1

D=200

GLPK Simplex Optimizer, v4.65
200 rows, 200 columns, 20100 non-zeros
Preprocessing...
199 rows, 200 columns, 20099 non-zeros
Scaling...
 A: min|aij| =  1.000e+00  max|aij| =  1.607e+60  ratio =  1.607e+60
...
Constructing initial basis...
Size of triangular part is 199
*     0: obj =   0.000000000e+00 inf =   0.000e+00 (200)
*     1: obj = -6.223015278e+139 inf =   0.000e+00 (0)
OPTIMAL LP SOLUTION FOUND
Time used:   0.0 secs
Memory used: 3.4 Mb

Чи може хтось запропонувати інші способи побудови складних проблем для симплексного методу, повільного, але не обмеженого пам’яттю?

Додано: латинські квадрати ака- 3d-перестановки-матриці, здається, мають багато вершин - скільки?
Теорія та практика теоретичніші, ніж на практиці.


-1

Оригінальний алгоритм симплекс можуть розходитися; вона цикли на певних випадках. Значить, ніякої загальної межі. Інші відповіді дають вам відповіді на різні модифікації алгоритму Simplex.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.