Самая быстрая сложность для комбинаторного алгоритма ILP?


14

Я интересно, что это лучший известный алгоритм, в терминах big- нотации, для решения целочисленных линейного программирования?O

Я знаю, что проблема в полном, поэтому я не ожидаю ничего полиномиального. И я знаю, что есть много эвристик и тому подобного, которые используются в практических приложениях, таких как CPLEX, но меня больше интересует формальная сложность точного алгоритма в худшем случае.NP

Некоторые -полные задачи имеют алгоритмы во времени O ( b n p ( n ) ), где 1 < b < 2, а p - многочлен. Покрытие вершин, независимый набор и 3SAT попадают в эту категорию, но обычные SAT и TSP не (насколько мы знаем).NPO(bnp(n))1<b<2p

Могут ли быть сделаны такие заявления о целочисленном программировании или конкретных подэлементах?

Если у кого-нибудь есть справка по связанной проблеме Quantifier Free Presburger Arithmetic, меня это тоже очень заинтересует.


1
Аардал, Карен, Роберт Вейсмантел и Лоуренс А. Уолси. «Нестандартные подходы к целочисленному программированию». Дискретная прикладная математика 123.1 (2002): 5-74. дает много ссылок. Может быть, вы можете найти ответ, посмотрев на них, или проследив, какие новые статьи ссылаются на этот. Посмотрите на Раздел 2 в частности.
Юхо

В чем разница между и O ( 99 н ) ? O(1.1n)O(99n)
Седобородый

@greybeard, не так много для P против NP, но очень много с точки зрения реальной управляемости, в зависимости от констант, это имеет огромное значение.
Jmite

1
O(bn)O(cn)bc

@jmite Готово. Была ли для вас какая-либо ссылка или вы смогли найти какую-то новую информацию?
Юхо

Ответы:


3

Из того, что я могу сказать путем поиска, определенное исследование выглядит так:

Аардал, Карен, Роберт Вейсмантел и Лоуренс А. Уолси. «Нестандартные подходы к целочисленному программированию». Дискретная прикладная математика 123.1 (2002): 5-74.

В частности, в разделе 2.1 обсуждается целочисленное программирование в ограниченной размерности и представлены алгоритмы, разработанные разными авторами. Действительно, в опросе перечислено много ссылок и обсуждаются некоторые практические реализации.

Для фиксированного числа переменных целочисленное линейное программирование решается за полиномиальное время по алгоритму Ленстры.


хорошо, но какой алгоритм самый быстрый?
15:00

@vzn Я не знаю, это не более чем ответ, охватывающий "конкретные подэкземпляры".
Юхо
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.