Автор работы: Пользователь скрыл имя, 11 Мая 2014 в 22:37, реферат
Краткое описание
В теории сложности вычислений задача об упаковке в контейнеры — NP-трудная комбинаторная задача. Задача заключается в упаковке объектов предопределённой формы в конечное число контейнеров предопределённой формы таким способом, чтобы число использованных контейнеров было наименьшим или количество или объём объектов (которые упаковывают) были наибольшими. Различают следующие алгоритмы задач об упаковке в контейнеры: «Следующий подходящий» (NF), «Первый подходящий» (FF), «Наилучший подходящий» (BF), On-line, с ограниченным доступом к контейнерам, «Первый подходящий с упорядочиванием» (FFD), Aε. Работу алгоритмов рассмотрим далее.
Содержание
1. Введение. 2. Задача упаковки в контейнеры. 2.1. Алгоритм «Следующий подходящий» (NF). 2.2. Алгоритм «Первый подходящий» (FF). 2.3. Алгоритм «Наилучший подходящий» (BF). 2.4. Алгоритмы типа On-line. 2.5. Алгоритмы с ограниченным доступом к контейнерам. 2.6. Алгоритм «Первый подходящий с упорядочиванием» (FFD). 2.7. Алгоритм Aε. 2.8. Релаксация линейного программирования. 2.9. Оценки Martello & Toth. 3. Общий алгоритм решения задачи об упаковке. 4. Вывод. Список литературы
Следовательно, для предметов
из множества L3 требуется как минимум
отдельных контейнеров.
Теорема. Для любого 0 ≤ α ≤ 1/2 величина
является нижней оценкой для OPT(L).
Доказательство. Заменим вес каждого предмета
из множества L3 на α. Тогда в один контейнер войдет
предметов, и для множества L3 потребовалось
бы
дополнительных контейнеров.
Но часть предметов из L3 можно уложить в контейнеры
для L2. Каждый из них
имеет 1– wi, i∈L2 свободного места, где поместится
предметов из L3.
Следствие 1. Величина H = max{H1(α ), H2(α ), 0 ≤α ≤ 0,5} является нижней оценкой
для OPT(L).
Следствие 2.
Доказательство. При α = 0 получаем H ≥ H1(0) = max{|L2|, H0}≥ H0.
Как найти H, не перебирая все значения α ?
Следствие 3. Пусть V — множество всех различных
значений wi ≤ 0,5.
Тогда
т. е. после сортировки предметов
получаем TH = O(n + nlog n).
Общий алгоритм решения
задачи об упаковке
Предварительное
упорядочивание объектов в соответствии
с отношением доминирования.
Исследование соотношений по
качеству объектов. Путём попарного сравнения
объектов определяется асимметричное
транзитивное отношение доминирования:
P0={(yi,yj)ÎY´Y | "k=1,…,N; yik£ yjk и $p: yip< yjp }
Выделение паретовых
слоёв.
В соответствии с отношением
P0 на множестве
объектов можно выделить подмножество
недоминируемых объектов. После их удаления
можно выделить второе подмножество и
т.д. до исчерпания множества. Выделенные
слоя являются паретовыми слоями.
Предварительная
упаковка объектов.
Она заключается в применении
алгоритма АОЧ по слоям.
Пусть упаковка объектов (i-1)
первых слоёв возможна, но объекты i-го
слоя уже не входят. Рассмотрим частный
случай, когда каждый объект (i-1)-го слоя
превосходит каждый объект i-го слоя и
каждый объект i-го слоя в свою очередь
превосходит каждый объект (i+1)-го слоя,
причём объекты, принадлежащие одному
слою, эквиваленты по качеству. В этом
случае можно сразу переходить к шагу
6, т.к. имеется вся необходимая информация
для упаковки объектов в месте их предполагаемого
"разреза" на группы упакованных
и неупакованных объектов.
В общем случае такая информация
отсутствует. Для уменьшения неопределённости
требуются шаги 4,5.
Определение информации,
требующейся для предварительного упорядочивания
объектов.
Производится сравнение объектов
(i-1), i и (i+1) слоёв, т.е. тех слоёв, где вероятно
произойдёт разделение объектов при упаковке.
Определяется объём информации, необходимый
для упорядочения этих объектов по качеству.
Если объекты этих слоёв находятся
в отношении доминирования или "почти"
доминирования (т.е. доминирования по всем
критериям, кроме одного), то информация
для упорядочения этих объектов может
быть получена от ЛПР путём прямого опроса.
ЛПР предъявляют объекты (попарно) и выясняют,
какой из них для ЛПР является более ценным.
При возникновении противоречий (A>B>C>A)
необходимо указывать на эти противоречия
ЛПР для их разрешения.
В общем случае объекты отличаются
оценками по нескольким критериям и при
этом являются достаточно представительными
элементами множества Y. Для их упорядочения
требуется дополнительная информация
о предпочтениях ЛПР.
Например, если все объекты
можно расположить в соответствии с оценками
так, как это приведено на рис. 3.1,а ,то объекты
2 и 5, 4 и 6, 4 и 7 оказываются несравнимыми.
Для их упорядочения нужна дополнительная
информация от ЛПР (рис. 3.1,б).
Методы прямого опроса в данной
ситуации используются редко, т.к. это
достаточно сложная для ЛПР операция выбора.
Выявление предпочтений ЛПР осуществляется
с помощью построения решающего правила
ЛПР (мы рассмотрим это позже).
Рис. 3.1. Пример построения квазипорядка
для объектов
Построение квазипорядка
на множестве объектов.
На основе сформированного
на шаге 4 бинарного отношения можно построить
квазипорядок (рис. 3.1,в) и выделить паретовые
слои. При этом считается, что объект, принадлежащий
высшему слою, "потенциально" лучше
объекта из низшего слоя.
Нахождение различных
вариантов упаковки.
К построенному квазипорядку
итеративно применяется алгоритм АОЧ.
Среди объектов, упакованных на первом
этапе, выделяется подмножество объектов,
превосходящих каждый из остальных упакованных,
если таковые имеются. Это подмножество
подлежит обязательной упаковке. Далее
к списку применяется алгоритм АОЧ, но
объекты из вышеуказанного подмножества
не отбрасываются. Т.о., алгоритм применяется,
начиная с i-го слоя объектов.
Будем применять алгоритм АОЧ
до исчерпания списка. Получим варианты
с различными значениями критериев, например,
для случая двух критериев (рис. 3.2):
Рис. 3.2. Примеры оценок вариантов
решений по двум критериям
Определение компромисса
между критериями (3) и (4).
ЛПР может выбрать один из полученных
вариантов или указать соотношение значений
критериев, по которому будет произведён
этот выбор, например:
K = max (0.9O1 + 0.3O2)
Метод решения задачи об упаковке
может быть распространён на случаи, когда:
часть объектов может быть упакована
только в определённые контейнеры;
несколько объектов имеют общие
части и должны быть упакованы вместе.
4.Вывод
Существует множество разновидностей
этой задачи (двумерная упаковка, линейная упаковка, упаковка по весу, упаковка по стоимости и т. п.), которые могут применяться
в разных областях, как собственно в вопросе
оптимального заполнения контейнеров,
загрузки грузовиков с ограничением по
весу, созданием резервных копий на съёмных
носителях и т. д. Так как задача является NP-трудной, то использование точного
переборного алгоритма возможно только
при небольших размерностях. Обычно для
решения задачи используют эвристические приближённые полиномиальные
алгоритмы.
Список литературы
1. E.G. Coffman, M.R. Garey, D.S. Johnson. Approximation
algorithms for bin
packing: A survey. http://www.math.nsc.ru/LBRT/k5/bp-chapter.pdf
2. Э.Х. Гимади. О некоторых
математических моделях и методах
планирования крупномасштабных
проектов //Модели и методы оптимизации.
Труды Института математики.
Новосибирск. Наука. Сиб. Отд–ние.
2011. с. 89–115.
3. М. Гэри, Д. Джонсон. Вычислительные
машины и труднорешаемые задачи.
М.: Мир, 2009. с. 154–191.