реферат, рефераты скачать
 

Динамическое и линейное программирование


[pic]

Сводка результатов по пунктам 1-3 приведена в таблице 2.

|Таблица 2. |

|[pic|30 |11 |45 |6 |B |[pic|[pic|[pic]|

|] | | | | | |] |] | |

|[pic|3 |2 |6 |0 |150 |0 |6 |50 |

|] | | | | | | | | |

| |4 |2 |3 |5 |130 |0 |3 |[pic]|

| |4 |3 |2 |4 |124 |8 |0 |0 |

|[pic|22 |0 |14 |0 |1290 | | |[pic]|

|] | | | | | | | | |

|[pic|0 |7 |0 |9 | | | | |

|] | | | | | | | | |

4. Транспортная задача

Транспортная задача – это задача о минимизации транспортных расходов,

связанных с обеспечением пунктов потребления определенным количеством

однородной продукции, производимой (хранимой) в нескольких пунктах

производства (хранения). В общем виде задача может быть сформулирована

следующим образом:

Однородный продукт, сосредоточенный в [pic] пунктах производства

(хранения), необходимо распределить между [pic] пунктами потребления.

Стоимость перевозки единицы продукции известна для всех маршрутов.

Необходимо составить такой план перевозок, при котором запросы всех пунктов

потребления были бы удовлетворены за счет имеющихся продуктов в пунктах

производства и общие транспортные расходы по доставке продуктов были бы

минимальными.

Примем следующие обозначения:

|[pic]|Номер пункта производства (хранения) (i=1,2,…,m) |

|[pic]|Номер пункта потребления (j=1,2,…,n) |

|[pic]|Количество продукта, имеющиеся в i-ом пункте |

| |производства |

|[pic]|Количество продукта, необходимое для j-го пункта |

| |потребления |

|[pic]|Стоимость перевозки единицы продукта из i-го пункта |

| |отправления в j-ый пункт назначения |

|[pic]|Количество груза, планируемого к перевозке от i-го |

| |пункта отправления в j-ый пункт назначения |

Тогда, при наличии баланса производства и потребления:

[pic]

математическая модель транспортной задачи будет выглядеть следующим

образом:

найти план перевозок

[pic], где [pic]; [pic]

минимизирующий общую стоимость всех перевозок

[pic]

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

|[pic], где [pic] |(4.1) |

и любому потребителю доставляется необходимое количества груза

|[pic], где [pic] |(4.2) |

причем, по смыслу задачи

[pic], …, [pic]

Для решения транспортной задачи чаще всего применяется метод потенциалов,

при котором вводят обозначение вектора симплексных множителей или

потенциалов:

[pic]

Тогда:

[pic], где [pic]; [pic]

Откуда следует:

[pic], где [pic]; [pic]

При этом один из потенциалов можно выбирать произвольно, т.к. в системе

(4.1) и (4.2) одно уравнение линейно зависит от остальных, а остальные

потенциалы находятся, что для базисных значений [pic].

Предположим, что однородный продукт, находящийся в трех пунктах

производства (m=3), необходимо доставить в четыре пункта потребления

(n=4). При этом матрица [pic] транспортных затрат на перевозку единицы

продукта из любого пункта отправления в любой пункт назначения, вектор

[pic] объемов запасов продукта в пунктах производства и вектор [pic]

объемов продукта, необходимых пунктам потребления, имеют вид:

|[pic] |[pic] |

|[pic] | |

Тогда получается, что общий объем продукта в пунктах производства

[pic] больше, чем требуется всем потребителям [pic], т.е. имеем открытую

модель транспортной задачи.

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

необходимо ввести фиктивный пункт потребления с объемом потребления

[pic] единиц,

при этом тарифы на перевозку продукта в этот пункт потребления будут равны

нулю, т.к. фактического перемещения продукта не происходит.

Тогда, первое базисное допустимое решение легко построить по правилу

«северо-западного угла». А т.к. оценки базисных клеток транспортной таблицы

равны нулю, то, приняв, что [pic], первая транспортная таблица и потенциалы

имеют вид:

|[|[|30 |11 |45 |36 |28 | |[pic] |[pic] |

|p|p| | | | | | |[pic] |[pic] |

|i|i| | | | | | |[pic] |[pic] |

|c|c| | | | | | |[pic] |[pic] |

|]|]| | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

|50 |30 |11 |9 |* | |[pic]| | |

|70 | | |36 |34 | |[pic]| | |

|30 | | | |2 |28 |[pic]| | |

| |[pic|[pic|[pic|[pic|[pic| | | |

| |] |] |] |] |] | | | |

Т.к. наибольшая положительная оценка всех свободных клеток транспортной

таблицы, соответствует клетке 14, то строим цикл пересчета: 14-13-23-24 и

производим перераспределение поставок вдоль цикла пресчета:

|[pic] |[pic] |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

| |9 |* |( |[pic]|[pic]|( |0 |9 |

| |36 |34 | |[pic]|[pic]| |45 |25 |

| | |[pic] | |

То получаем второе базисное допустимое решение и находим новые

потенциалы, полагая [pic]:

|[|[|30 |11 |45 |36 |28 | |[pic] |[pic] |

|p|p| | | | | | |[pic] |[pic] |

|i|i| | | | | | |[pic] |[pic] |

|c|c| | | | | | |[pic] |[pic] |

|]|]| | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

|50 |30 |11 | |9 | |[pic]| | |

|70 | |* |45 |25 | |[pic]| | |

|30 | | | |2 |28 |[pic]| | |

| |[pic|[pic|[pic|[pic|[pic| | | |

| |] |] |] |] |] | | | |

Т.к. теперь наибольшая положительная оценка всех свободных клеток

транспортной таблицы, соответствует клетке 22, то строим цикл пересчета: 22-

12-14-24 и производим перераспределение поставок вдоль цикла пресчета:

|[pic] |[pic] |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

| |11 |9 |( |[pic]|[pic]|( |0 |20 |

| |* |25 | |[pic]|[pic]| |11 |14 |

| | |[pic] | |

Отсюда получаем третье базисное допустимое решение и находим новые

потенциалы, принимая [pic]:

|[|[|30 |11 |45 |36 |28 | |[pic] |[pic] |

|p|p| | | | | | |[pic] |[pic] |

|i|i| | | | | | |[pic] |[pic] |

|c|c| | | | | | |[pic] |[pic] |

|]|]| | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

|50 |30 | | |20 | |[pic]| | |

|70 |* |11 |45 |14 | |[pic]| | |

|30 | | | |2 |28 |[pic]| | |

| |[pic|[pic|[pic|[pic|[pic| | | |

| |] |] |] |] |] | | | |

Т.к. наибольшая положительная оценка всех свободных клеток транспортной

таблицы, теперь соответствует клетке 21, то строим цикл пересчета: 21-11-14-

24 и производим перераспределение поставок вдоль цикла пресчета:

|[pic] |[pic] |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

| |30 |20 |( |[pic]|[pic]|( |16 |34 |

| |* |14 | |[pic]|[pic]| |14 |0 |

| | |[pic] | |

Получаем четвертое базисное допустимое решение и находим новые

потенциалы, принимая [pic]:

|[|[|30 |11 |45 |36 |28 | |[pic] |[pic] |

|p|p| | | | | | |[pic] |[pic] |

|i|i| | | | | | |[pic] |[pic] |

|c|c| | | | | | |[pic] |[pic] |

|]|]| | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

|50 |16 | | |34 | |[pic]| | |

|70 |14 |11 |45 | | |[pic]| | |

|30 | | |* |2 |28 |[pic]| | |

| |[pic|[pic|[pic|[pic|[pic| | | |

| |] |] |] |] |] | | | |

Т.к. наибольшая положительная оценка всех свободных клеток транспортной

таблицы, соответствует клетке 33, то строим цикл пересчета: 33-23-21-11-14-

34 и производим перераспределение поставок вдоль цикла пресчета:

|[pic] |[pic] |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

| |16| |34|(|[pi| |[pi|(|14| |36|

| | | | | |c] | |c] | | | | |

| |14|45| | |[pi|[pi| | |16|43| |

| | | | | |c] |c] | | | | | |

| | |* |2 | | |[pi|[pi| | |2 |0 |

| | | | | | |c] |c] | | | | |

| | |[pic] | |

Получаем пятое базисное допустимое решение и находим новые потенциалы,

опять принимая [pic]:

|[|[|30 |11 |45 |36 |28 | |[pic] |[pic] |

|p|p| | | | | | |[pic] |[pic] |

|i|i| | | | | | |[pic] |[pic] |

|c|c| | | | | | |[pic] |[pic] |

|]|]| | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

|50 |14 | | |36 | |[pic]| | |

|70 |16 |11 |43 | |* |[pic]| | |

|30 | | |2 | |28 |[pic]| | |

| |[pic|[pic|[pic|[pic|[pic| | | |

| |] |] |] |] |] | | | |

Теперь наибольшая положительная оценка всех свободных клеток транспортной

таблицы, соответствует клетке 25, отсюда строим цикл пересчета: 25-23-33- и

производим перераспределение поставок вдоль этого цикла пресчета:

|[pic] |[pic] |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

| |43 |* |( |[pic]|[pic]|( |15 |28 |

| |2 |28 | |[pic]|[pic]| |30 |0 |

| | |[pic] | |

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

потенциалы, принимая [pic]:

|[|[|30 |11 |45 |36 |28 | |[pic] |[pic] |

|p|p| | | | | | |[pic] |[pic] |

|i|i| | | | | | |[pic] |[pic] |

|c|c| | | | | | |[pic] |[pic] |

|]|]| | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

| | | | | | | | |[pic] |[pic] |

|50 |14 | | |36 | |[pic]| | |

|70 |16 |11 |15 | |28 |[pic]| | |

|30 | | |30 | | |[pic]| | |

| |[pic|[pic|[pic|[pic|[pic| | | |

| |] |] |] |] |] | | | |

Находим оценки всех свободных клеток таблицы:

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

|[pic] | |

| |Все [pic], где [pic]; [pic] |

Т.к. получили таблицу для которой нет ни одной положительной оценки,

следовательно, найдено оптимальное базисное допустимое решение:

[pic]

при котором транспортные расходы по обеспечению продуктом всех четырех

пуктов потребления будут наименьшими. При этом из второго пункта

производства товар будет вывезен не полностью, т.е. там останется остаток

продукта 28 единиц.

5. Распределение капитальных вложений

Задача о распределении капитальных вложений – это нелинейная задача

распределения ресурсов между предприятиями одного производственного

объединения или отрасли.

Предположим, что указано [pic] пунктов, где требуется построить или

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

сумма. При этом известен прирост мощности или прибыли для каждого

предприятия, в зависимости от суммы капитальных вложений в это предприятие.

Требуется найти такое распределение капитальных вложений между

предприятиями, которое максимизирует суммарный прирост мощности или прибыли

всей отрасли.

Примем следующие обозначения:

|[pic] |Номер предприятия (j=1,2,…,n) |

|[pic] |Общая сумма капитальных вложений |

|[pic] |Сумма капитальных вложений в j-ое предприятие |

|[pic] |Прирост мощности или прибыли j-го предприятия, если |

| |оно получит xj денежных единиц капитальных вложений |

Тогда, задача состоит в том, чтобы найти такие значения

[pic], [pic], …, [pic], при которых значение суммарного прироста прибыли

или мощности всей отрасли:

[pic]

было бы наибольшим, при ограничении общей суммы: [pic], причем будем

считать, что все переменные [pic] принимают только целые неотрицательные

значения, т.е.:

[pic]=0 или 1, или 2, или 3, …; [pic]

Эту задачу можно решить методом динамического программирования. Для этого

необходимо ввести параметр состояния [pic] и функцию состояния [pic]:

|[pic]|Некоторое количество предприятий, для которых |

| |определяется параметр и функция состояния ([pic]) |

|[pic]|Сумма капитальных вложений, выделяемая нескольким |

| |предприятиям ([pic]) |

|[pic]|Максимальный прирост прибыли или мощности на первых |

| |[pic] предприятиях, если они вместе получат [pic] |

| |капитальных вложений |

Тогда, если из [pic] денежных единиц k-ое предприятие получит [pic]

денежных единиц, то остаток [pic] денежных средств необходимо распределить

между предприятиями от первого до [pic] так, чтобы был получен максимальный

прирост прибыли или мощности [pic]. Следовательно, прирост прибыли или

мощности k предприятий будет равен [pic] и нужно выбрать такое значение

[pic] между 0 и [pic], чтобы увеличение прибыли или мощности k предприятий

было бы максимальным, т.е.:

[pic], где [pic].

Если же k=1, то:

[pic]

Допустим, что производственное объединение состоит из четырех предприятий

(n=4). Общая сумма капитальных вложений равна 700 денежных единиц (b=700),

при этом суммы выделяемые предприятиям кратны 100 денежным единицам.

Значения функций [pic] приведены в таблице 3:

|Таблица 3. |

|[pic] |0 |100 |200 |300 |400 |500 |600 |700 |

|[pic] |0 |42 |58 |71 |80 |89 |95 |100 |

|[pic] |0 |30 |49 |63 |68 |69 |65 |60 |

|[pic] |0 |22 |37 |49 |59 |68 |76 |82 |

|[pic] |0 |50 |68 |82 |92 |100 |107 |112 |

Для заполнения таблицы 5 необходимо в таблице 4 сложить значения

функции [pic] со значениями [pic] и на каждой северо-восточной диагонали

выбрать наибольшее число (отмечено звездочкой), указав соответствующие

значение [pic]:

|Таблица 4. |

| |[pic] |0 |100 |200 |300 |400 |500 |600 |700 |

|[pic|[pic] |0 |42 |58 |71 |80 |89 |95 |100 |

|] | | | | | | | | | |

| |[pic] | | | | | | | | |

|0 |0 |0 |42* |58 |71 |80 |89 |95 |100 |

|100 |30 |30 |72* |88 |101 |110 |119 |125 | |

|200 |49 |49 |91* |107* |120 |129 |138 | | |

|300 |63 |63 |105 |121* |134* |143* | | | |

|400 |68 |68 |110 |126 |139 | | | | |

Страницы: 1, 2, 3


ИНТЕРЕСНОЕ



© 2009 Все права защищены.