Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
61-64,67-74.doc
Скачиваний:
5
Добавлен:
25.09.2019
Размер:
394.75 Кб
Скачать

73. Применение метода дп для решения задачи двух станков.

Постановка задачи. Имеется n – деталей и два станка. Каждая деталь обрабатывается сначала на первом станке (станок 1), затем на втором (станок 2). Станки включаются одновременно в момент времени t=0. Время обработки детали i на первом станке равно ai, на втором bi. В какой последовательности надо запустить детали на обработку, чтобы общее время обработки всех деталей было минимальным?

Решение задачи

Пронумеруем детали, множество номеров обозначим через I={1,2,…n}.

Первый этап метода динамического программирования – погружение задачи в семейство аналогичных задач.

Для этого будем рассуждать следующим образом. Из партии I удалим k любых деталей с номерами i1, i2 ,…, ik . рассмотрим остальные n-k деталей. Пусть Ik=I\{ i1, i2 ,…, ik } – множество номеров оставшихся деталей. Каждая деталь i c номером из Ik обрабатывается сначала на станке 1, а затем на станке 2. Станок 1 включается в момент времени t=0, а станок 2 – через y ед.времени после станка 1.

Если Ik= I и у=0, то получим исходную задачу.

Введем функцию Беллмана – оптимальное (минимальное) время обработки n-k деталей с номерами из Ik, если станок 2 включается через y ед.времени после станка 1. обозначим ее Bn-k(i1, i2 ,…, ik|y} (1.1)

Cоставим уравнение Беллмана. Используем при этом принцип оптимальности. Из множества деталей с номерами из Ik возьмем произвольную деталь i и первой запустим на обработку.

Станок 1 включился в момент t=0, а значит в момент t= a1 он закончит обработку детали i и освободится. Деталь i уйдет на обработку на станок 2.

Станок 2 включился в момент t=y, а значит, время окончания обработки детали i на этом станке зависит от соотношения ai и у:

если у<= ai ( станок 2 включился, а станок 1 еще обрабатывает деталь i ), то в момент t=ai деталь i начнет обрабатываться на станке 2, а в момент t=ai+ bi обработка детали i на обоих станках закончится;

если у>ai ( станок 1 освободился, а станок 2 еще не включен, деталь i ждет момента включения), то деталь i начнет обрабатываться на станке 2 в момент t=у, а в момент t=у+ bi обработка детали i на обоих станках закончится.

Итак, момент освобождения станка 2 равен (1.2)

Далее будут обрабатываться детали с номерами из множества Ik\{i}. Для них станок 1 включается в момент t= ai, а станок 2 - в момент, который определяется согласно 1.2, т.е. через bi ед. времени после станка 1, если у<= ai, или через ((у-ai)+ bi) ед. времени, если y>a

74. Применение ДП для решения задачи замены оборудования.

Постановка задачи. На некотором производстве рассматривается процесс эксплуатации оборудования в период времени длительностью n лет. Этот период условно разбивается на этапы (например, один этап – один год). В начале каждого этапа относительно оборудования принимается решение: продолжать эксплуатировать старое или заменить его новым оборудованием. Решение зависит от следующих четырех характеристик оборудования: производительности, величины эксплуатационных расходов, остаточной стоимости старого и стоимости нового оборудования. Отметим, что первые три характеристики старого оборудования определяются его возрастом. Эти характеристики определяют прибыль, получаемую от эксплуатации оборудования.

Алгоритм решения. Введем обозначения. Пусть t – возраст оборудования, t=0, 1, …, n, где n – длина планового периода; r(t) – стоимость продукции, производимой за год на единице оборудования, возраст которого t лет (производительность); u(t) – ежегодные затраты на обслуживание этого оборудования (эксплуатационные расходы); s(t) – остаточная стоимость оборудования; p – стоимость нового оборудования.

Первый этап метода динамического программирования – погружение задачи в семейство аналогичных задач. Рассмотрим при всех сформулированных условиях плановый период, включающий последние n-k лет. Будем считать, что возраст оборудования на начало k+1 –го года равен t лет . ясно, что Если k=0, то получим исходную задачу.

Введем функцию Беллмана – максимальное значение прибыли за последние n-k лет планового периода от использования оборудования, возраст которого на начало k+1 –го года равен t лет. Обозначим ее через . Заметим, что это функция 2-х аргументов k и t. В принятых обозначениях возраст t=0 соответствует эксплуатации нового оборудования.

Перейдем ко второму этапу ДП – составлению уравнения Беллмана. Для этого рассмотрим 2 возможные ситуации на начало k+1 года.

Если на k+1-м году оборудование, возраст которого t лет, сохранить, то прибыль предприятия от его использования равна - стоимость произведенной продукции минус стоимость эксплуатационных издержек. Следуя принципу оптимальности, считаем, что все последующие годы решение о замене оборудования принималось оптимально. Поэтому общая прибыль за последние n-k лет в этом случае равна

(1.1)

Пусть на k+1 –ом году оборудование, возраст которого t лет, заменяется новым. Тогда прибыль предприятия за этот год состоит из выручки от продажи старого плюс стоимость произведенной продукции на новом оборудовании минус стоимость эксплуатационных издержек нового оборудования и минус затраты на его покупку, т.е. равна . Согласно принципу оптимальности за последние n-k лет прибыль в этом случае равна . (1.2)

Таким образом, если величина прибыли (1.1) больше или равна величине прибыли (1.2), то нужно работать на старом оборудовании, а противном случае оборудование следует заменить. Объединяя (1.1) и (1.2), запишем уравнение Беллмана: , (1.3)

Где первое выражение определяет прибыль, которая может быть получена за последние n-k лет на старом оборудовании, второе – при его замене. При этом предполагается, что переход к работе на новом оборудовании происходит за один этап.

Полагая в (1.3) k=n-1, получаем начальное условие для этого рекуррентного относительно аргумента k уравнения. Оно имеет вид уравнения одноэтапного процесса, для которого слагаемые и не имеют экономического смысла, и поэтому исключается, таким образом, прибыль от использования оборудования, возраст которого t лет, в последний год планового периода равна

(1.4)

Третий этап метода ДП – поиск решения уравнения (1.3) с начальными условиями (1.4) и построения по нему решения исходной задачи.

В уравнении (1.3) положим k=n-2:

(1.5)

Далее полагаем в уравнении (1.3) k=n-3, n-4,…,0. после процесса оптимизации получим последовательность , , …, .

Исходные данные заносим в таблицу 1:

Таблица 1 – Исходные данные

T

0

1

2

N

r(t)

r(0)

r(1)

r(2)

r(n)

u(t)

u(0)

U(1)

u(2)

u(n)

s(t)

s(0)

s(1)

s(2)

s(n)

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

Таблица 2

T

0

1

2

n

B1(t) – прибыль за последний год

B1(0)

B1(1)

B1(2)

B1(n)

B2(t) – прибыль за последние 2 года

B2(0)

B2(1)

B2(2)

B2(n)

Bn(t) – прибыль за весь плановый период

Bn(0)

Bn(1)

Bn(2)

Bn(n)

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