Jump to content

Конфигурация линейной программы

Конфигурационная линейная программа ( configuration-LP ) — это метод линейного программирования, используемый для решения комбинаторной оптимизации задач . Оно было введено в контексте проблемы сокращения запасов . [1] [2] Позже он был применен к упаковке контейнера. [3] [4] и проблемы с планированием работы . [5] [6] В Configuration-LP существует переменная для каждой возможной конфигурации — каждого возможного мультинабора элементов, который может поместиться в одну корзину (эти конфигурации также известны как шаблоны ). Обычно количество конфигураций экспоненциально зависит от размера задачи, но в некоторых случаях можно получить приближенные решения, используя только полиномиальное количество конфигураций.

В мусорной упаковке

[ редактировать ]

Интегральный ЛП

[ редактировать ]

В задаче об упаковке корзин имеется n предметов разного размера. Цель состоит в том, чтобы упаковать предметы в минимальное количество контейнеров, где каждый контейнер может содержать не более B . — Допустимая конфигурация набор размеров с суммой не более B. это

  • Пример : [7] предположим, что размеры элементов равны 3,3,3,3,3,4,4,4,4,4 и B =12. Тогда возможные конфигурации: 3333; 333; 33, 334; 3, 34, 344; 4, 44, 444. Если бы у нас было всего три элемента размера 3, то мы не смогли бы использовать конфигурацию 3333.

Обозначим через S множество различных размеров (и их количество). Обозначим через C множество различных конфигураций (и их количество). Для каждого размера s в S и конфигурации c в C обозначим:

  • n s — количество элементов размера s .
  • a s , c — количество вхождений размера s в конфигурации c .
  • x c — переменная, обозначающая количество бункеров с конфигурацией c .

Тогда конфигурация LP упаковки в контейнер будет следующей:

для всех s в S (- все n s предметов размера s упакованы ).

для всех c в C (всего существует не более n контейнеров, то есть не более n каждой отдельной конфигурации).

Конфигурация LP представляет собой целочисленную линейную программу , поэтому в общем случае она NP-сложна. Более того, даже сама проблема, как правило, очень велика: в ней есть C переменных и S ограничений. Если наименьший размер элемента равен eB (для некоторой дроби e в (0,1)), то в каждом контейнере может находиться до 1/ e элементов, поэтому количество конфигураций C ~ S 1/ и , которое может быть очень большим, если e мало (если e считать константой, то целочисленную ЛП можно решить методом перебора: существует не более S 1/е конфигураций, и для каждой конфигурации существует не более n возможных значений, поэтому существует не более комбинации для проверки. Для каждой комбинации нам необходимо проверить S- ограничения, поэтому время выполнения равно , который является полиномиальным по n, когда S, e постоянны). [7]

Однако этот ILP служит основой для нескольких алгоритмов аппроксимации. Основная идея этих алгоритмов состоит в том, чтобы свести исходный экземпляр к новому экземпляру, в котором S мало, а e велико, поэтому C относительно мало. Тогда ЗЛП можно решить либо полным перебором (если S , C достаточно малы), либо релаксацией ее в дробную ЛП.

Дробный LP

[ редактировать ]

Дробная конфигурация LP упаковки контейнеров. Это релаксация линейного программирования вышеупомянутой ILP. Он заменяет последнее ограничение с ограничением . Другими словами, каждую конфигурацию можно использовать дробное количество раз. Релаксацию впервые представили Гилмор и Гомори. [2] и ее часто называют линейной программой Гилмора-Гомори . [8]

  • Пример : предположим, что имеется 31 элемент размера 3 и 7 элементов размера 4, а размер ячейки равен 10. Конфигурации: 4, 44, 34, 334, 3, 33, 333. Ограничения: [0,0 ,1,2,1,2,3]* x =31 и [1,2,1,1,0,0,0]* x =7. Оптимальным решением дробного LP является [0,0,0,7,0,0,17/3]. То есть: имеется 7 бункеров конфигурации 334 и 17/3 бункеров конфигурации 333. Обратите внимание, что только две разные конфигурации необходимы.

Вкратце дробный ЛП можно записать так:

Где 1 — вектор (1,...,1) размера C , A S матрица размера на C , в которой каждый столбец представляет одну конфигурацию, а n — вектор ( n 1 ,..., n С ).

Решение дробной ЛП

[ редактировать ]

Линейная программа без ограничений целостности может быть решена за время, полиномиальное по числу переменных и ограничений. Проблема в том, что количество переменных в дробной конфигурации LP равно числу возможных конфигураций, которое может быть огромным. Кармаркар и Карп [9] представить алгоритм, который решает эту проблему.

Сначала они строят двойственную линейную программу дробного ЛП:

.

Он имеет S переменных y 1 ,..., y S и ограничения C : для каждой конфигурации c существует ограничение , где — столбец A, представляющий конфигурацию c . 3Он имеет следующую экономическую интерпретацию. [9] Для каждого размера s мы должны определить неотрицательную цену y s . Наша прибыль — это общая стоимость всех товаров. Мы хотим максимизировать прибыль n y при условии, что общая цена товаров в каждой конфигурации не превышает 1.

Во-вторых, они применяют вариант метода эллипсоида , которому не нужно перечислять все ограничения — ему просто нужен оракул разделения . Оракул разделения — это алгоритм, который по заданному вектору y либо утверждает, что это осуществимо, либо находит ограничение, которое он нарушает. Оракул разделения для двойного ЛП может быть реализован путем решения задачи о рюкзаке с размерами s и значениями y : если оптимальное решение задачи о рюкзаке имеет общее значение не более 1, то y осуществимо; если оно больше 1, то значение невозможно , y а оптимальное решение задачи о рюкзаке определяет конфигурацию, для которой ограничение нарушается.

В-третьих, они показывают, что при приближенном решении задачи о рюкзаке можно получить приближенное решение двойственной ЛП, а отсюда — приближенное решение первичной ЛП; см. Алгоритмы упаковки контейнеров Кармаркара-Карпа .

В общем, для любого коэффициента допуска h находит базовое допустимое решение со стоимостью не более LOPT(I) + h и работает во времени:

,

где S — количество разных размеров, n — количество разных предметов, а размер наименьшего предмета — eB . В частности, если e ≥ 1/ n и h = 1, алгоритм находит решение с не более чем LOPT+1 интервалами во времени: . Рандомизированный вариант этого алгоритма выполняется за ожидаемое время:

.

Округление дробной ЛП

[ редактировать ]

Кармаркар и Карп далее разработали способ округления дробной ЛП до приближенного решения целой ЛП; см. Алгоритмы упаковки контейнеров Кармаркара-Карпа . Их доказательство показывает, что аддитивная дыра целочисленности этой ЛП находится за O(log 2 ( н )). Позже Хоберг и Ротвосс [10] улучшили свой результат и доказали, что разрыв целочисленности находится за O(log( n )). Самая известная нижняя граница разрыва целочисленности — это константа Ω(1). Нахождение точного разрыва целостности является открытой проблемой.

В покрытии бункера

[ редактировать ]

В задаче о покрытии контейнера имеется n предметов разного размера. чтобы упаковать предметы в максимальное количество контейнеров, причем каждый контейнер должен содержать как минимум B. Цель состоит в том , Естественная конфигурация LP для этой проблемы может быть такой:

где A представляет собой все конфигурации элементов с суммой не ниже B (можно брать только конфигурации, минимальные по включению). Проблема с этой ЛП заключается в том, что в задаче о покрытии контейнеров обработка мелких предметов проблематична, поскольку мелкие предметы могут быть необходимы для оптимального решения. При разрешении мелких предметов количество конфигураций может оказаться слишком большим даже для техники Кармаркара и Карпа. Чирик, Джонсон и Кеньон [11] представить альтернативный LP. Во-первых, они определяют набор элементов, которые называются small . Пусть T — общий размер всех мелких предметов. Затем они создают матрицу A, представляющую все конфигурации с суммой <2. Затем они рассматривают вышеуказанную ЛП с одним дополнительным ограничением: Дополнительное ограничение гарантирует, что «свободное место» в контейнерах может быть заполнено мелкими предметами. Двойной вариант этой ЛП более сложен и не может быть решен с помощью простого оракула разделения рюкзака. Чирик, Джонсон и Кеньон [11] представить другой метод решения этой задачи приблизительно за экспоненциальное время в 1/эпсилон. Янсен и Солис-Оба [12] представить улучшенный метод решения этой задачи приблизительно за экспоненциальное время в 1/эпсилон.

В машинном планировании

[ редактировать ]

В задаче планирования несвязанных машин имеется m разных машин, которые должны обрабатывать n разных заданий. Когда машина i обрабатывает задание j занимает время pi , это , j . Цель состоит в том, чтобы распределить задания между машинами так, чтобы максимальное время завершения работы машины было как можно меньшим. Вариант решения этой проблемы таков: при заданном времени T существует ли раздел, в котором время завершения всех машин не превышает T ?

Для каждой машины i существует конечное число подмножеств заданий, которые могут быть обработаны машиной за время не более T. i Каждое такое подмножество называется конфигурацией машины i . Обозначим через C i ( T набор всех конфигураций для машины i в данный момент времени T. ) Для каждой машины i и конфигурации c в C i ( T ) определите переменную который равен 1, если фактическая конфигурация, используемая на машине i, равна c , и 0 в противном случае. Тогда ограничения LP таковы:

  • для каждой машины i в 1,..., m;
  • для каждого задания j в 1,..., n;
  • для каждого i , j .

Характеристики

[ редактировать ]

Разрыв целостности конфигурации-LP для планирования несвязанных машин равен 2. [5]

См. также

[ редактировать ]
  1. ^ Эйземанн, Курт (1 апреля 1957 г.). «Проблема обрезки» . Наука управления . 3 (3): 279–284. дои : 10.1287/mnsc.3.3.279 . ISSN   0025-1909 .
  2. ^ Перейти обратно: а б Гилмор, ПК; Гомори, Р.Э. (1961). «Подход к линейному программированию к задаче резки». Исследование операций . 9 (6): 849–859. дои : 10.1287/опре.9.6.849 . JSTOR   167051 . S2CID   8079477 .
  3. ^ Кармаркар, Нарендра; Карп, Ричард М. (1 ноября 1982 г.). «Эффективная аппроксимационная схема одномерной задачи упаковки контейнеров» . 23-й ежегодный симпозиум по основам информатики (SFCS 1982) : 312–320. дои : 10.1109/SFCS.1982.61 . S2CID   18583908 .
  4. ^ Бансал, Нихил; Капрара, Альберто; Свириденко, Максим (01.10.2006). «Улучшенные алгоритмы аппроксимации для многомерных задач упаковки контейнеров» . 2006 г. 47-й ежегодный симпозиум IEEE по основам информатики (FOCS'06) . стр. 697–708. дои : 10.1109/FOCS.2006.38 . ISBN  0-7695-2720-5 . S2CID   7690347 .
  5. ^ Перейти обратно: а б Вершае, Хосе; Визе, Андреас (1 августа 2014 г.). "О конфигурации-LP для планирования на несвязанных машинах" . Журнал планирования . 17 (4): 371–383. arXiv : 1011.4957 . дои : 10.1007/s10951-013-0359-4 . ISSN   1099-1425 . S2CID   34229676 .
  6. ^ Кноп, Душан; Кутецкий, Мартин (04 марта 2020 г.). «Планирование ядер через конфигурацию LP». arXiv : 2003.02187 [ cs.DS ].
  7. ^ Перейти обратно: а б Клэр Матье. «Алгоритмы аппроксимации. Часть I, неделя 3: упаковка контейнеров» . Курсера . Архивировано из оригинала 15 июля 2021 г.
  8. ^ Ротвосс, Т. (1 октября 2013 г.). «Аппроксимация упаковки ячеек в ячейки O(log OPT · Log Log OPT)» . 54-й ежегодный симпозиум IEEE по основам информатики , 2013 г. стр. 20–29. arXiv : 1301.4010 . дои : 10.1109/FOCS.2013.11 . ISBN  978-0-7695-5135-7 . S2CID   15905063 .
  9. ^ Перейти обратно: а б Кармаркар, Нарендра; Карп, Ричард М. (ноябрь 1982 г.). «Эффективная аппроксимационная схема одномерной задачи упаковки контейнеров» . 23-й ежегодный симпозиум по основам информатики (SFCS 1982) : 312–320. дои : 10.1109/SFCS.1982.61 . S2CID   18583908 .
  10. ^ Хоберг, Ребекка; Ротвосс, Томас (2017). «Логарифмический аддитивный разрыв целостности для упаковки в контейнеры». Материалы двадцать восьмого ежегодного симпозиума ACM-SIAM по дискретным алгоритмам . Общество промышленной и прикладной математики. стр. 2616–2625. дои : 10.1137/1.9781611974782.172 . ISBN  978-1-61197-478-2 . S2CID   1647463 .
  11. ^ Перейти обратно: а б Чирик, Янош; Джонсон, Дэвид С.; Кеньон, Клэр (9 января 2001 г.). «Улучшенные алгоритмы аппроксимации покрытия ячеек» . SODA '01: Материалы двенадцатого ежегодного симпозиума ACM-SIAM по дискретным алгоритмам . Общество промышленной и прикладной математики. стр. 557–566. ISBN  978-0-89871-490-6 .
  12. ^ Янсен, Клаус; Солис-Оба, Роберто (21 ноября 2002 г.). «Асимптотическая полностью полиномиальная схема аппроксимации времени для покрытия контейнеров» . Алгоритмы и вычисления . Конспекты лекций по информатике. Том. 2518. Шпрингер-Верлаг. стр. 175–186. дои : 10.1007/3-540-36136-7_16 . ISBN  978-3-540-00142-3 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 03ee8482eb3e13d94dc4b0bd29391460__1704501000
URL1:https://arc.ask3.ru/arc/aa/03/60/03ee8482eb3e13d94dc4b0bd29391460.html
Заголовок, (Title) документа по адресу, URL1:
Configuration linear program - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)