Скачиваний:
2
Добавлен:
01.05.2025
Размер:
557.57 Кб
Скачать

1 Постановка задачи

1.1 Качественное описание исследуемой операции

На автоматической линии обрабатывается партия из n деталей – А, А+1,… А+n-1. Время наладки линии для обработки Аi детали зависит от того, какая деталь обрабатывается перед этим. Совокупность времен переналадки представлена в виде матрицы || tij ||, где tij– время переналадки линии с обработки Аi детали на обработку Аj детали; i , j . Необходимо определить порядок обработки деталей, при котором затраты времени на переналадку автоматической линии минимальны. При этом следует учесть, что обработка деталей ведется по партиям и по окончании обработки последней детали партии автоматическая линия должна быть переналажена на выпуск первой детали партии. Поставленную задачу решить методом ветвей и границ и методом полного перебора. Задачу необходимо решить для следующих данных:

1.2 Концептуальная модель операции

Исходная задача может быть представлена как задача коммивояжера, которая формулируется следующим образом:

Задано n городов и матрица расстояний между ними. Коммивояжер должен посетить каждый из городов один и только один раз и вернуться в исходный пункт, причем его маршрут должен быть таким, чтобы минимизировать суммарную длину пройденного пути.

    1. Математическая постановка задачи

Вводятся переменные /1/:

Хij = 1, – если коммивояжер переезжает из Аi в Аj;

Хij = 0, – в противном случае.

Тогда необходимо минимизировать функционал суммарной длины маршрута:

(4.1)

при условиях

(4.2)

(4.3)

, (4.4)

где ui , uj - произвольные целые и неотрицательные числа. Условие (4.2) означает, что коммивояжер выезжает из каждого города ровно один раз, а условие (4.3) – что он въез­жает в каждый город ровно один раз. Условия (4.4) в аналитической форме отражают циклич­ность маршрута. Нетрудно доказать что для любого цикла можно найти ui, удовлетворяю­щие условию (4.3) . Пусть ui = Р, если коммивояжер посещает город Аi на p-м этапе. Тогда при xij = 0 для всех i,j выполняется условие 2, а при хij=1 условие (4.3) превраща­ется в равенство, т.к. ui - u j + (n – 1) xij = Р – (Р + 1) + (n – 1) = n – 2.

2 Алгоритмизация решения задачи

2.1 Анализ методов решения задачи

Метод прямого перебора для задачи коммивояжера с n городами основан на генера­ции n перестановок, определении на каждой перестановке суммарной длины пути и выборе в качестве оптимальной - перестановки с минимальной длиной пути. Для генерации перестано­вок целесообразно использовать алгоритм реупорядочения перестановочного хво­ста (алгоритм – 1) /9/. К положительным сторонам этого метода следует отнести его про­стоту, обозримость, а также принципиальную возможность получения на гипотетической ЭВМ решение для задачи любой размерности. Основным недостатком рассматриваемого метода является стремительное возрастание количества перестановок при возрастании n. Так, при n = 10, количество перестановок равно 8628800. Этот недостаток существенно ограничи­вает использование данного метода для решения практических задач на реаль­ных ЭВМ.

Существенно уменьшить количество вариантов при определенных исходных данных по­зволяет алгоритм Литтла, являющийся развитием метода ветвей и границ применительно к задаче коммивояжера /1/. Сущность метода состоит в том, что множество всех планов разбива­ется на два подмножества, первое из которых, содержит планы с непосредственным переходом из n - го города в l - й, а второе подмножество содержит планы с переходом из n-го города в l - й через промежуточные города. Для каждого подмножества вводится нижняя оценка и в качестве перспективного выбирается подмножество с минимальной оценкой. Перспек­тивное подмножество аналогично разбивается на два подмножества, и для выбора нового перспективного подмножества сравниваются нижние оценки вновь сконструирован­ных подмножеств с нижней оценкой подмножества, отброшенного на первом этапе. Про­цесс ветвления продолжается до тех пор, пока не будет получена совокупность перспектив­ных пар, образующих замкнутый цикл длиной n . Основной недостаток данного метода – зависимость количества выполняемых операций не только от размерности матрицы расстоя­ний, но и от значений элементов этой матрицы. Следует отметить, что при некоторых значе­ниях элементов матрицы расстояний метод ветвей и границ по количеству операций совпадает с методом прямого перебора. Кроме того, при машинной реализации этого ме­тода необходимо хранить преобразованные матрицы расстояний для всех конкурирующих подмножеств, что значительно повышает требования к объему памяти ЭВМ. В то же время на современном этапе развития теории дискретного программирования метод ветвей и гра­ниц является наиболее приемлемым для точного решения задачи коммивояжера при неболь­ших значениях n . Подробное описание этого метода приведено в /1/.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]