Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по моделированию.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
1.77 Mб
Скачать

Лекция 6

Задачи оптимального планирования раскроя в деревообработке

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

Задача оптимального планирования раскроя формулируется следующим образом: задана спецификация сырья, известны схемы раскроя, которые будут использоваться в процессе раскроя, а также спецификация продукции, которую требуется получить. Требуется определить оптимальный план раскроя. То есть требуется определить, какое количество сырья следует раскроить по каждой из схем раскроя, так чтобы выбранный критерий оптимальности принял экстремальное значение. При этом необходимо выполнить спецификационный план по выпуску продукции, а объем перерабатываемого сырья каждого вида не должен превышать имеющихся запасов сырья.

В деревообработке задача оптимального планирования раскроя возникает при планировании раскроя пиловочного сырья на пиломатериалы, раскрое древесностружечных плит на мебельные заготовки, пиломатериалов на заготовки. При раскрое пиловочного сырья задаются объем пиловочника каждой размерно-качественной группы, требуемый объем пиломатериалов каждого сечения и набор поставов, которые будут использоваться при раскрое. При раскрое древесностружечных плит исходными данными являются количество плит, требуемое количество заготовок каждого размера и набор карт раскроя, по которым будет производиться раскрой. При раскрое пиломатериалов на заготовки необходимо учитывать объемы пиломатериалов и заготовок с различными размерно-качественными характеристиками. Соответственно, в результате решения задачи оптимального раскроя пиловочного сырья определяется объем пиловочника, который требуется раскроить по каждому поставу, при раскрое древесностружечных плит количество плит, раскраиваемое по каждой карте раскроя, а при раскрое пиломатериалов на заготовки количество пиломатериалов раскраиваемых по каждой схеме раскроя.

Вне зависимости от того, какая именно задача раскроя рассматривается ее можно формализовать в виде задачи линейного программирования,

У которой в качестве элементов решения будут использоваться переменные, соответствующие количеству сырья (исходного материала) определенного вида, который раскраивается по одной из возможных схем раскроя. В качестве критерия оптимальности, как правило, используется минимум используемого сырья.

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

Задача оптимального планирования раскроя древесностружечных плит на мебельные заготовки формулируется следующим образом. Путь задана спецификация мебельных заготовок (указаны размеры и количество заготовок каждого размера) и известны карты раскроя, которые будут использоваться в процессе получения заготовок. Требуется найти оптимальный план раскроя, то есть определить, какое количество плит необходимо раскроить по каждой карте раскроя так, чтобы полученные результаты были наилучшими с точки зрения выбранного критерия оптимальности, а количество полученных заготовок каждого размера не менее заданного в спецификации.

Рассмотрим пример. Пусть имеются две карты раскроя, показанные на рис 6.1. Эти карты предназначены для получения заготовок 2-х размеров, 1-го и 2-го. Заготовок первого размера требуется получить в количестве не менее 80 шт., заготовок 2-го размера не менее 320. Требуется построить математическую модель для получения оптимального плана по критерию минимума общего количества раскраиваемых плит. Требуется определить какое количество плит необходимо раскроить по каждой карте раскроя так, чтобы суммарное количество израсходованных плит было минимально. При этом количество полученных заготовок каждого размера должно быть не менее заданного в условиях задачи.

Обозначим через количество плит, которые необходимо раскроить по 1-й карте раскроя, а через - количество плит которые надо раскроить по 2-й карте. Тогда общее количество раскраиваемых плит буде равно сумме плит раскраиваемых по1-й и 2-й карте раскроя. Соответственно целевая функция задачи запишется следующим образом:

+ → min (6.1)

Перейдем, теперь к формированию системы ограничений модели, которые должны обеспечить выполнение спецификационного плана по выпуску заготовок.

1-ая карта раскроя 2-ая карта раскроя

Рис. 6.1 карта раскроя плит ДСтП на мебельные заготовки.

Рассмотрим процесс формирования ограничений по количеству заготовок 1 –го размера.

При раскрое одной плиты по 1-й карте раскроя будет получено две заготовки 1-го размера. При раскрое плит таких заготовок будет получено в раз больше, т.е. 2 . При раскрое одной плиты по 2-й карте раскроя будет получено 3 заготовки 1-го размера, а при раскрое плит 3 .

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

2 + 3 (6.2)

Поскольку должно быть получено не менее 80 заготовок первого размера, ограничение на количество заготовок 1-го размера будет выглядеть следующим образом:

2 + 3 ≥ 80 (6.3)

Аналогичным образом можно записать ограничение на количество заготовок 2-го размера:

3 + 2 ≥ 320 (6.4)

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

Целевая функция:

+ → min (6.5)

Ограничения:

2 + 3 ≥ 80 (6.6)

3 + 2 ≥ 320 (6.7)

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

(6.8) Ограничение на количество заготовок:

(6.9)

Где:

- количество плит которое необходимо раскроить по j-ой карте раскроя в соответствии с оптимальным планом, j= ;

- общее количество карт раскроя, которые будут использоваться;

- количество заготовок -го размера которые требуется получить в соответствии со спецификационным планом, .

N-общее количество размеров заготовок, в спецификации заготовок;

- количество заготовок -го размера, которое можно получить при раскрое одной плиты по j карте раскроя;

Расчет оптимального плана раскроя пиловочного сырья на пиломатериалы

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

Имеется пиловочное сырье, рассортированное на различные размерно-качественные группы и известен объем пиловочника каждой группы. Задана спецификация пиломатериалов, которые требуется получить, а также набор поставов, которые будут использоваться в процессе раскроя. Требуется найти оптимальный план раскроя, то есть требуется определить какое количество сырья каждой размерно-качественной группы требуется распилить по каждому поставу, так чтобы суммарный объем распиленного сырья был минимален. При этом необходимо выполнение следующих условий:

1.Объем сырья каждой размерно-качественной группы перерабатываемый в соответствии с оптимальным планом не должен превышать имеющихся запасов пиловочника данной размерно- качественной группы;

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

Рассмотрим пример построения математической модели задачи оптимального планирования раскроя пиловочного сырья.

Пусть имеется пиловочное сырье 2-х диаметров 16 и 18 см, объем которого V1 и V2 равен соответственно 350 и 450 м3. Требуется получить пиломатериалы толщиной 19, 25 и 32 мм в количестве Q1 = 80, Q2 = 170 и

Q3 = 150 м3 соответственно. При распиловке предполагается использовать по два постава для сырья каждого диаметра. Характеристики этих поставов, спецификации сырья и пиломатериалов приведены в табл. 3.1-3.4

D, см

Vj, м3

T, мм

Qр, м3

16

350

19

80

25

170

18

450

32

150

Табл. 6.1 спецификация табл. 6.2 спецификация

Пиловочного сырья пиломатериалов

Таблица 6.3

Значения выхода пиломатериалов по поставам

При раскрое бревен диаметром 16 см

Номер постава

Выход пиломатериалов (%) по поставам

32 мм

25 мм

19 мм

Итого по поставу

1

18,6

25,1

16,1

59,8

2

0

50,3

7,4

57,7

Таблица 6.4

Значение выхода пиломатериалов по поставам

При раскрое бревен диаметром 18 см

Номер постава

Выход пиломатериалов (%) по поставам

32 мм

25 мм

19 мм

Итого по поставу

1

29,7

20,1

9,3

59,1

2

38,6

0

20,9

59,5

Отметим, что в таблице 6.3 - 6.4 для каждого диаметра используется своя система нумерации поставов.

Обозначим через количество сырья диаметром 16 см которое необходимо распилить по 1 поставу. Первый индекс переменной - это индекс диаметра бревна, второй индекс постава. Объем сырья этого же диаметра, которое будет распиливаться по 2-му поставу обозначим, соответственно .

Для второго диаметра (d=18 cм) объем сырья распиливаемого по 1-му поставу будет обозначаться , по второму . Очевидно, что общий объем используемого сырья буде равен сумме объемов сырья каждого диаметра распиливаемого по каждому поставу. Поэтому выражение для целевой функции задачи реализующей критерий минимума распиливаемого сырья с учетом введенных обозначений будет иметь вид:

+ + + → min (6.10)

Запишем теперь ограничение на объем перерабатываемого сырья диаметром 16 см. По 1-му поставу распиливается м3, по 2-му м3. Суммарный объем переработки пиловочника этого диаметра не должен превышать 350 м3. Таким образом ограничение по объему переработки пиловочника 1-го диаметра ( d=16 см) будет иметь вид:

+ ≤ 350 (6.11) Аналогично записывается и ограничение на объем переработки пиловочника 2-го диаметра (d=18 см) -

+ ≤ 450 (6.12)

Перейдем, теперь к формированию системы ограничений модели, которые должны обеспечить выполнение спецификационного плана по выпуску пиломатериалов. Сначала рассмотрим ограничение по объему выпуска пиломатериалов толщиной 19 мм. Как следует из таблицы 3.3 коэффициент выхода этих пиломатериалов при раскрое сырья диаметром 16 см по 1-му поставу равен 0,161, по 2-му-0,074 . При распиловке сырья диаметром 18 см по 1-му поставу коэффициент выхода пиломатериалов толщиной 19 мм равен 0,093 , а по 2-му - 0,209. Следовательно, при раскрое 1-го м3 пиловочного сырья диаметра 16 см по 1-му поставу пиломатериалов толщиной 19 мм будет получено 0,161 м3. При раскрое м3 пиловочника таких пиломатериалов будет получено в раз больше: 0,161∙ . При раскрое 1 м3 пиловочника диаметром 16 см по 2-му поставу будет получено 0,074 пиломатериалов толщиной 19 мм, при раскрое м3 сырья – в раз больше: 0,074∙ .

Таким образом количество пиломатериалов толщиной 19 мм, которые будут получены при распиловке пиловочника d = 16 cм равно:

0,161 + 0,074 (6.13)

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

0,093 + 0,209 . (6.14)

А общее количество пиломатериалов толщиной 19 мм получаемых при распиловке сырья обеих диаметров составит

0,161 + 0,074 + 0,093 + 0,209 (6.15)

Поскольку необходимо получить не менее 80 м3 пиломатериалов толщиной 19 мм, ограничение по объему пиломатериалов этой толщины запишется следующим образом:

0,161 + 0,074 + 0,093 + 0,209 ≥ 80 (6.16)

Аналогичным образом запишется ограничение по объему выпуска пиломатериалов толщиной 25 мм

0,251 + 0,503 + 0,201 + 0 ≥ 170 (6.17)

И пиломатериалов толщиной 32 мм.

0,186 + 0 + 0,297 + 0,386 ≥ 150 (6.18)

Таким образом, окончательно, математическая модель будет иметь вид:

Целевая функция:

+ + + → min (6.19)

Ограничения:

+ ≤ 350 (6.20)

+ ≤ 450 (6.21)

0,161 + 0,074 + 0,093 + 0,209 ≥ 80 (6.22)

0,251 + 0,503 + 0,201 + 0 Х22 ≥ 170 (6.23)

0,186 + 0 + 0,297 + 0,386 Х22 ≥ 150 (6.24)

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

Целевая функция:

(6.25)

Ограничения по объему раскраиваемого сырья:

(6.26)

Ограничения на объем вырабатываемых пиломатериалов:

(6.27)

Где -объем пиловочника i-го вида, который раскраивается по j-му

поставу; i = 1, …, n; j = 1, Ni;

N - количество размерно- качественых групп сырья;

Ni - количество поставов, используемых при распиловке сырья i-го вида;

Vi - объем сырья i-го вида;

- коэффициент выхода пиломатериалов p-го сечения при

Распиловке сырья i- го вида по j-му поставу;

Qp - объем пиломатериалов p-го сечения заданный в спецификации пиломатериалов ;

Лекция 7

Транспортные задачи линейного программирования

Это задачи об оптимизации схем перевозок различных грузов и другие задачи, имеющие аналогичные математические модели.

Пример. Имеются 3 предприятия-поставщика, выпускающие однородную продукцию, которую надо отправить 4 потребителям. Такими поставщиками могут быть, например, лесопильные предприятия, снабжающие мебельные фабрики пиломатериалами. Предприятия –поставщики мы будем обозначать А123 а предприятия – потребители В1234 .

Известны запасы груза у каждого поставщика ,объёмы заявок каждого потребителя , а также стоимость перевозок единицы груза от каждого поставщика к каждому потребителю .

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

При этом должны выполняться следующие условия:

1. Все запасы груза от каждого поставщика должны быть вывезены полностью.

2. Заявки каждого потребителя должны быть удовлетворены полностью.

Исходные данные задачи сведем в таблицу 7.1, которая называется транспортной таблицей.

Табл.7.1

Поставщики

Запас груза

Потребители

В1

В2

В3

В4

А1

а1=40

А2

а2=30

А3

а3=50

Заявки

20

60

10

30

Числа, стоящие в правых верхних углах клеток табл.7.1 показывают, чему равна стоимость перевозки одной единицы груза от соответствующего поставщика к соответствующему потребителю. Например, цифра «2», стоящая в правом верхнем углу верхней клетки 1-го столбца таблицы, означает, что стоимость перевозки одной единицы груза от 1-го поставщика А1 к первому потребителю В1 равна 2 единицам.

Составим математическую модель задачи, которую будем решать по критерию минимума суммарной стоимости перевозки всех грузов.

Так как требуется определить, какое количество груза должно быть перевезено от каждого поставщика к каждому потребителю, в качестве элементов решения мы будем использовать двухиндексные переменные, первый индекс которых будет соответствовать номеру поставщика, а второй- номеру потребителя. Для первого поставщика соответствующие элементы решения будут иметь следующий смысл:

- количество груза перевозимого от 1-го поставщика к 1-му потребителю;

- количество груза перевозимого от 1-го поставщика к 2-му потребителю;

……………………………………………………………………………………….

- количество груза перевозимого от 1-го поставщика к 4-му потребителю.

У элементов решения относящихся к второму поставщику, первый индекс будет равен 2:

- количество груза перевозимого от 2-го поставщика к 1-му потребителю;

- количество груза перевозимого от 2-го поставщика к 2-му потребителю;

……………………………………………………………………………………….

- количество груза перевозимого от 2-го поставщика к 4-му потребителю,

А у относящихся к 3-му поставщику-«3».

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

Найдем целевую функцию модели. Стоимость перевозки одной единицы груза от первого поставщика к первому потребителю равна 2-м единицам. Стоимость перевозки единиц груза будет в раз больше: 2 . Стоимость перевозки от 1-го поставщика к 2-му потребителю будет равна 8 , а к третьему и четвертому- 7 и 4 . Аналогичным образом можно найти затраты на перевозку груза и от остальных поставщиков а общие затраты на перевозку будут равны

2 +8 +7 +4 +9 +1 +6 +3 +10 +12 + +11 →max ( 7.1)

Выражение (7.1) является целевой функцией задачи. Составим ограничения по вывозу продукции от каждого поставщика. Первый поставщик должен отправить в адрес 1-го, 2-го, 3-го и 4-го потребителя соответственно , , и единиц груза, всего =40. Т. е. ограничение, обеспечивающее вывоз всего груза от 1-го поставщика будет иметь вид:

+ + + =40 (7.2)

Аналогичные ограничения можно записать для 2-го и 3-го поставщиков:

+ + + =30, (7.3)

+ + + =50, (7.4)

Запишем условие того, что полностью выполнена заявка 1-го потребителя. Это произойдет в том случае, если количество груза, полученного им от 1-го, 2-го и 3-го поставщиков в сумме будет равно 20:

+ + =20 (7.5)

Аналогичные выражения можно записать для каждого из 4-х поставщиков.

Для 2-го:

+ + =60 (7.6)

Для 3-го:

+ + =10 (7.7)

Для 4-го:

+ + =30 (7.8)

Отметим, что при формировании ограничений (7.2)- (7.4) для поставщиков суммируются элементы решения находящиеся в соответствующей строке табл.7.1,

А при формировании ограничений (7.5)-(7.8) для потребителей суммируются элементы решения находящиеся в соответствующем столбце. В модель, также необходимо включить тривиальные ограничений на неотрицательность элементов решения:

(7.9)

Где i- индекс поставщика, i=1,3

j - индекс потребителя, j=1,4

Выражения (7.1) - (7.9) образуют математическую модель транспортной задачи (сокращенно ТЗ). Видно, что транспортная задача описывается моделью линейного программирования и потому в принципе может быть решена, например, симплекс – методом. Однако благодаря её специфическому виду (все коэффициенты при переменных в ограничениях 7.2-7.8 равны 1), её можно решать и более простыми методами.

Математическая модель транспортной задачи в общем виде.

Рассмотрим математическую модель ТЗ в общем виде. Пусть имеется m поставщиков с запасами груза a1;a2…am и n потребителей с объёмами заявок b1;b2…bn. Известна стоимость перевозок единицы груза от i-го поставщика к j-му потребителю. Требуется определить сколько груза следует перевести от каждого поставщика к каждому потребителю так чтобы общая стоимость перевозки грузов была минимальна, все запасы груза от каждого поставщика полностью вывезены, а заявки каждого потребителя полностью удовлетворены. Предполагается, что суммарные запасы груза равны суммарным потребностям в нем:

(7.10)

Задачи, предполагающие выполнение этого условия называются закрытыми транспортными задачами.

Пусть – количество груза перевозимого от i-того поставщика к j потребителю. Требования вывести весь груз от каждого поставщика записывается в виде следующих m уравнений.

(7.11)

Или

(7.12)

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

(7.13)

Или (7.14)

Выражение для целевой функции задачи имеет следующий вид:

(7.15)

Совокупность выражений (7.12) - (7.15) – это математическая модель транспортной задачи.

Лекция 8

Решение транспортных задач, как и обычных ЗЛП осуществляется в 2 этапа.

На I-м этапе отыскивается опорное решение транспортной задачи, на II-м – это решение последовательно улучшается до получения оптимального решения.

Отыскание опорного решения транспортной задачи

Один из методов отыскания опорного решения - это метод северо-западного угла.

Согласно этому методу клетки транспортной таблицы заполняются последовательно начиная с левой верхней клетки (северо-западный угол).

Пример. Рассмотрим ТЗ для трёх поставщиков и четырех потребителей. Её условия сведём в транспортную таблицу 8.1

Табл.8.1

Поставщик

Потребитель

В1

В2

В3

В4

Запас груза

А1

30

30

А2

50

10

40

А3

80

20

20

40

Объём заявок

40

60

20

40

Обо­значим клетку на пересечении строки ; и столбца через (i, j). При решении транспортной задачи, условия которой при­ведены в табл. 8.1, в левую верхнюю клетку (1.1) транспорт­ной таблицы запишем минимальное из чисел , . В данном случае — это число = 30. Это означает, что весь груз от первого поставщика полностью вывезен: = 30, и строку можно исключить из дальнейшего рассмотрения, приняв остальные переменные этой строки столбца , и равными нулю.

Переходим к клетке (2, 1), находящейся ниже рассмот­ренной. Первому потребителю требуется еще 10 единиц груза, которые можно отправить от второго поставщика. Поэтому чи­сло 10 вписываем в данную клетку: = 10. Так как заявка первого потребителя полностью выполнена , переходим к заполнению вто­рого столбца таблицы, начиная с клетки (2,2). Сюда впишем 40 единиц груза от поставщика , которые у него еще имеются, а 20 которые недостает второму по­требителю, возьмем у поставщика : =20.

В результате мы полностью удовлетворим полностью заявку потребителя . Оставшиеся у третьего поставщика 60 единиц груза распределим следующим образом. 20 единиц груза передадим третьему по­требителю =20 удовлетворив таким образом полностью его заявку. Четвертому потребителю останется =40 единиц груза, что полностью соответствует его заявке.

Таким образом, груз всех поставщиков полностью рас­пределен и удовлетворены заявки всех потребителей, т. е. най­дено допустимое решение данной задачи. Этому решению соответствуют следующие значения элементов решения:

=30, =10, =40, =20, =20, =40 (8.1)

Значение остальных переменных в этом решении равны 0.Для того чтобы это решение было опорным, необходимо выполнение следующего условия: число занятых клеток в транспортной таблице дол­жно быть равно N = m + n—1. В данном случае это условие вы­полнено: заполнено шесть клеток и N = 3 + 4—1=6. Подсчи­таем значение целевой функции, соответствующее найденному опорному решению:

W=3 х 30 + 7 х 5 + 2 х 5 + 1 х 40 + 3 х 25+ 16 х 25 =960 (8.2)

Как правило, опорное решение, полученное методом се­веро-западного угла, значительно отличается от оптимального потому, что при его отыскании мы нигде не учитывали стои­мость перевозок. Рассмотрим более эффективный метод оты­скания опорного решения —

Метод наименьшего элемента.

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

Продемонстрируем применение этого метода. Наименьшая стоимость перевозки единицы груза в транспортной таблице 8.1 соответствует клетке (3, 2): = 1. В нее запишем наи­меньшее из чисел и , т. е. 60 (табл.8.2). Среди оставшихся клеток наименьшая стоимость перевозок соответствует клетке (2, 2): = 1, но поскольку заявка второго потребителя уже удовлетворена, оставшиеся клетки во втором столбце табл 8.2 не рассматриваются. Следующей, в порядке возрастания стоимости перевозок, следует рассмотреть клетку (1,1) или клетку (3,3). Для обеих этих клеток стоимость перевозок одинакова и равна 3. Начнем с клетки (3,3) и запишем в нее число 20- ровно столько требуется третьему потребителю и ровно столько осталось у третьего поставщика. Затем заполним клетку (1,1) записав нее число 30. Следующей (в порядке возрастания стоимости) должна быть клетка (1, 4), но поскольку у первого поставщика весь груз уже вывезен, ее а также клетку (1,2) пропускаем и переходим к клетке (2, 1). Сюда записываем число 10, равное оставшейся потребно­сти в грузе для пункта . После этого у второго поставщика останется 40 единиц груза, которые можно перевезти только четвертому потребителю: =40.

В результате получено опор­ное решение:

=30, =10, =40, =60, =20

Отличающееся от предыдущего решения, найденного методом северо-западного угла. Значение целевой функции для него равно:

3х30+7х10+40х11+1х60+3х20=720

Т. е.. Значительно лучше, чем для опор­ного решения, полученного по методу северо-западного угла. За счет перехода к использованию метода наименьшего элемента транспортные затраты удалось снизить на 240 единиц.

Табл.8.2

Поставщик

Потребитель

В1

В2

В3

В4

Запас груза

А1

30

30

А2

50

10

40

А3

80

60

20

Объём заявок

40

60

20

40

Количество N заполненных клеток в табл. 8.3 равно 5, т. Е. Меньше чем m+n-1=6.

Следовательно, полученное допустимое решение является вырожденным.

Метод потенциалов.

Это метод, позволяющий, исходя из заданного опорного решения перейти к лучшему решению, и ,в конечном счёте, найти оптимальное решение задачи.

Допустим, что имеется некоторое опорное решение, приведенное в табл. 8.3 Значение целевой функции для этого опорного решения равно:

4х30+2х10+3х40+6х25+11х10+8х15=120+20+120+150+110+120=640

Табл.8.3

Поставщики

Запас

В1

В2

В3

В4

Потенциалы Ui

Поставщиков

А1

35

25

10

U1=0

А2

45

30

15

U2=-3

А3

50

10

40

U3=-3

Объём заявок

30

10

65

25

Потенциалы Vj потребителей

V1=7

V2=5

V3=6

V4=11

Приведенное опорное решение, скорее всего, не является оптимальным. Так при анализе табл. 8.4 можно предположить, что снабже­ние четвертого потребителя грузом из запасов первого постав­щика нерационально из-за высокой стоимости перевозок: = 11. Нужно попытаться так изменить план перевозок, чтобы часть груза из запасов первого поставщика досталась не чет­вертому, а первому потребителю, для которого стоимость пере­возок значительно ниже: = 5. Практически это означает, что часть груза из клетки (1, 4) следует переносится в клетку (1, 1). В этом случае, однако пункт получит излишек груза, а пункту его будет недоставать. Чтобы восстановить баланс, можно это же количество груза перенести из клетки (2, 1) в клетку (2, 4). Идея подобного перераспределения ресурсов и положена в основу метода потенциалов.

Метод потенциалов предполагает выполнение следующих этапов

  1. Каждому поставщику ставится в соответствие некоторая переменная называемая потенциалом данного поставщика. Каждому потребителю ставится в соответствие переменная , которая называется потенциалом потребителя. Потенциалы поставщиков записываются в последний столбец, а потенциалы потребителей- в последнюю строку таблицы 8.3.

В нашем случае:

U1;U2;U3 – потенциалы поставщиков,

V1;V2;V3;V4 - потенциалы потребителей.

Этап 2.Для вычисления значений этих переменных составляется и решатся система уравнений. При этом для каждой занятой клетки (i,j) составляется свое уравнение, имеющее вид:

+ = , (8.3)

Где - стоимость перевозки единицы груза для данной клетки; и –соответственно потенциалы поставщика и потребителя. В нашем случае мы получаем следующую систему уравнений:

1-3 U1+V3=6

1-4 U1+V4=11

2-1 U2+V1=4 (8.4)

2-4 U2+V4=8

3-2 U3+V2=2

3-3 U3+V3=3

Каждое уравнение соответствует одной заполненной клетке. Поэтому

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

Пусть U1=0. Тогда получаем =6, =11. Далее легко определяются значения =-3, =-3, =7, =5, =6, которые заносятся в табл. 8.4.

Этап 3. Для каждой свободной клетки вычисляется сумма соответствующих потенциалов поставщика и потребителя:

= + . ( 8.5 )

Величина называется псевдостоимостью. В нашем случае получаем:

=0+7=7

=0+5=5

=-3+5=2 (8.6)

=-3+6=3

=-3+7=4

=-3+11=8

Полученные значения псевдостоимости записываются в левых нижних углах ссответствующих пустых клеток (см. Табл 8.3).

Этап 4.Для каждой свободной клетки сравнивают вычисленные значения Zij с соответствующими значениями стоимости Сij. Если во всех свободных клетках псевдостоимости не превышают стоимостей, то данный опорный план оптимален. Иными словами, опорный план оптимален, если для каждой свободной клетки пвседостоимость не превышает соответствующую стоимость перевозок. Математически, условие оптимальности опорного плана записывается следующим образом:

< Сij , (8.7)

для всех i и j, соответствующих свободным клеткам. Если это решение не выполняется хотя бы для одной свободной клетки, оптимальное решение еще не достигнуто.

В нашем случае величина псевдостоимости =7 для левой верхней клетки (клетка1,1) больше величины стоимости =5:

>

Следовательно, исходный опорный план не оптимален.

Для его улучшения выполняются следующие этапы алгоритма.

Этап 5.Среди всех свободных клеток с отрицательной разностью Сij- Zij 0 отыскивается та, где эта разность наибольшая по абсолютной величине. В нашем случае – это клетка 1-1.

Этап 6. Строится цикл – это многоугольник с прямыми углами, одна из вершин которого находится в выбранной свободной клетки, а все остальные – в занятых. Такой цикл и при том единственный всегда можно найти. В данном случае цикл содержит клетки 1-1; 1-4; 2-4; 2-1. Вершины цикла помечают чередующимися знаками «+» и «-», при этом вершина в свободной клетки помечается знаком «+». Среди клеток помеченных знаком «-» выбирается та, в которой записано min количество груза, в данном случае это клетка 1-4. Содержимое в ней количество груза прибавляют к числам, стоящим в клетках, помеченных знаком «+», и вычитают из чисел в клетках, помеченных знаком «-». Эта процедура называется переносом по циклу. В результате получается новый опорный план (См. Табл.8.5). Этот план заведомо не хуже предыдущего.

Табл. 8.5

Поставщик

Запас

В1

В2

В3

В4

А1

35

10

25

U1=0

А2

45

20

25

U2=-1

А3

50

10

40

U3=-3

Объём заявок

30

10

65

25

V1=5

V2=5

V3=6

V4=9

Этот план заведомо не хуже предыдущего. Чтобы убедится в этом, вычислим для него значение целевой функции.

10*5+25*6+4*20+8*25+2*10+3*40=50+150+80+200+20+120=620

Напомним, что значение целевой функции для исходного опорного плана было равно 640. То есть, за счет перемещения груза по циклу мы уменьшили стоимость транспортных затрат на 20 единиц. Отметим, также, что после переноса по циклу, рекомендуется проверить корректность полученного результата с точки зрения удовлетворения заявок потребителей и условия вывоза всего объема груза от потребителей, а также проверить соответствует ли число занятых клеток N опорному решению: N=m+n-1.

Этап 7. Проверяется оптимальность вновь полученного плана. Для этого повторяются этапы 1-6.… Если план оказался оптимальным, то решение задачи заканчивается, если нет, то вновь организуется построение цикла с целью получения нового опорного плана, и т. Д. Такая процедура всегда приводит к получению оптимального решения за конечное число шагов.

Найдем потенциалы Ui поставщиков и потенциалы Vj потребителей для опорного плана показанного в табл. 8.5. Этому плану соответствует следующая система ограничений:

1-1 U1+V1=5

1-3 U1+V3=6

2-1 U2+V1=4 (8.9)

2-4 U2+V4=8

    1. U3+V2=2

    2. U3+V3=3

Присвоив U1 значение равное 0, получаем: V1=5; V2=5; V3=6; V4=9; U2=-1; U3=-1.

Эти значения заносим в последнюю строку и последний столбец табл. 8.5.

Далее, в соответствии с процедурой, описанной в 3 этапе, для каждой свободной клетки вычисляется псевдостоимость Zij соответствующих потенциалов поставщика и потребителя:

1-2 =0+5=5

1-3 =0+9=9

2-2 =-1+5=4 (8.10)

2-3 =-1+6=5

3-1 =-3+5=2

3-4 =-3+9=6

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

Zij < Сij, для всех i и j, соответствующих свободным клеткам.

Это означает, что полученный опорный план является оптимальным. Таким образом оптимальным является следующее решение задачи:

=10, =25, =20, =10, =25, =40

Значения остальных переменных в оптимальных решении равны нулю. Например, =0, и это означает, что от 1-го поставщика к 1-му потребителю перевозки грузов осуществляться не будут