Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Применение ЭВМ пособие.pdf
Скачиваний:
93
Добавлен:
15.03.2016
Размер:
637.99 Кб
Скачать

На основании критериев Баейеса, Вальда Сэвиджа и Гурвица делается вывод об оптимальной стратегии.

Задания по теме «Критерии принятия решения» в приложении Д.

7 ТРАНСПОРТНАЯ ЗАДАЧА

7.1 Постановка транспортной задачи по критерию стоимости

Транспортная задача (Т3) формулируется следующим образом: некоторый однородный продукт, сосредоточенный у m поставщиков Аi, в количестве аi (i=1,m) единиц соответственно, необходимо доставить n потребителям Вj в количестве bj ( j=1,n) единиц. Известна стоимость cij, перевозки единицы груза от поставщика Аi; к потребителю Вj. Необходимо составить план перевозок, позволяющий вывезти все грузы от поставщиков Ai, полностью удовлетворить потребности потребителей Вj и имеющий минимальную стоимость. Для построения экономико-математической модели ТЗ рассмотрим матрицу X

 

x11

x12

K x1n

X=

x21

x22

K x2n

 

K

K K

K

 

xm1

xm2

K

xmn

где хij (i=1,m; j=1,n) обозначает количество единиц груза, которое необходимо доставить от поставщика Аi потребителю Вj. Матрица Х=[хij] называется матрицей планирования или планом перевозок. Предполагается, что все хij>=0.

Тарифы перевозок cij единицы груза от поставщика Аi к потребителю Вj запсывается в виде матрицы С=[cij]m*n:

éс11

с12

K с1n ù

C= êêc21

c22

K c2n úú ,

ê

cm2

ú

ëcm1

K cmn û

которая называется матрицей тарифов. Условия задачи представляется в виде таблицы 13, которая называется распределительной.

Таблица 13 – Распределительная таблица

Поставщики

 

Потребители

 

Запасы

 

B1

B2

 

BN

 

 

с11

с12

 

с1n

a1

A1

х11

х12

 

х1n

 

 

С21

С22

 

С2n

a2

A2

Х21

х22

 

х2n

 

 

 

 

 

 

 

Am

Сm1

сm2

 

сmn

am

 

хm1

хm2

 

хmn

 

 

 

 

 

 

 

Потребности

b1

b2

 

bm

 

42

Экономико-математическая модель ТЗ должна отражать все условия и цель задачи: переменные xij должны удовлетворять ограничениям по запасам, потребностям и условиям неотрицательности. Эти условия можно записать следующим образом:

ì n

 

= ai

(i = 1, m)

 

ïåxy

 

ï j=1

 

 

 

 

ï m

 

= bj

( j = 1,n)

(50)

íåxy

ï j=1

 

 

 

 

ïx

y

³ 0

 

 

ï

 

 

 

 

ï

 

 

 

 

 

î

 

 

 

 

 

Суммарная стоимость перевозок выражается суммой

m

n

 

(51)

F= ååcy xy

® min

 

i=1

j=1

 

 

План перевозок Х=[xij] называется допустимым, если он удовлетворяет системе ограничений (50). Допустимый план перевозок, доставляющий минимум ЦФ (51) называется оптимальным. Модель ТЗ называется закрытой, если суммарный объём груза, имеющегося у поставщиков, равен суммарному спросу потребителей:

m

n

(52)

åai

= åbj

 

i=1

j=1

 

Если выполняется одно из условий

m

n

m

n

(53)

åai

> åbj

или åai

< åbj

 

i=1

j=1

i=1

j=1

 

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

Теорема (о существовании допустимого плана).

Для того, чтобы ТЗ имела допустимые планы, необходимо и достаточно

m n

выполнение условия åai = åbj

i=1 j=1

7.2 Построение начального опорного плана

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

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

Построение опорных планов, а также преобразование их проводятся непосредственно в распределительной таблице. Если в плане перевозок переменная хik равна числу отличному от нуля, то это число записывается в соответствующей клетке (i;k) и она считается занятой или базисной. Если же

43

хik=0, то клетка (i;k) остается свободной. При этом число базисных клеток, должке быть равно m+n-1, а соответствующий опорный план называется невырожденным.

Дня построения начального опорного плана можно использовать методы o метод северо-западного угла;

o метод Фогеля;

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

Рассмотрим метод минимального элемента. Сущность этого метода состоит

вследующем. В первую очередь заполняется клетка с минимальным значением тарифа. При этом в клетку записывается максимально возможное значение поставки. Из рассмотрения исключают строку, соответствующую поставщику, запасы которого полностью израсходованы, или столбец. соответствующий потребителю, спрос которого полностью удовлетворен. После этого из оставшихся клеток таблицы снова выбирают клетку с наименьшим тарифом. Процесс распределения заканчивается, когда все запасы поставщиков исчерпаны, а спрос потребителей полностью удовлетворен. В результате получим опорный план, который должен содержать m+n-1 базисных клеток. Если же число занятых клеток окажется меньше, чем m+n-1, то план называется вырожденным. Для дальнейшего решения задачи в свободную клетку, которая не образует замкнутых циклов с ранее занятыми клетками, нужно поместить число 0 — нуль-поставку и эта клетка считается занятой.

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

Поставим в соответствие каждому поставщику числа ui(i=1,m), а потребителю - числа vi (j=1,n), которые называются потенциалами. Если план Х=[хij] ТЗ является оптимальным, то ему соответствует система из m+n потенциалов, удовлетворяющих условиям ui+vj=cij для базисных клеток ui+vj>cij и для свободных клеток (I=1,m, j=1,n). Потенциалы можно найти, решив систему уравнений ui+vj=cij составленных для каждой базисной клетки. Так как система неопределённая, то, чтобы найти решение, одному из потенциалов придаём произвольное числовое значение, например ноль, тогда остальные потенциалы определяются однозначно.

7.4 Условия оптимальности

Для исследования плана на оптимальность для каждой свободной клетки определяем разность между тарифом клетки и суммой потенциалов. Число Sij

называется оценкой свободной клетки

Sij=cij-(ui+vj)

(54)

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

44

клетки одной строки (или одного столбца). Цикл включает одну свободную клетку, остальные клетки цикла должны быть занятыми.

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

+

-

Xij0

-

Xi0j

+

Xij

λ=min{xij0;xi0j}

Рисунок 9 – Построение цикла транспортной задачи

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

Сформулируем алгоритм решения ТЗ методом потенциалов: o построить начальный опорный план;

o вычислить потенциалы поставщиков и потребителей ui+vj;

o вычислить оценки Sij для свободных клеток и проверить план на оптимальность;

oесли план не оптимален, то перейти к нехудшему опорному плану.

7.5Открытая модель транспортной задачи

Для открытой модели возможны два случая: суммарные запасы превышают суммарные потребности:

m

n

åai

> åbj

i=1

j=1

суммарные потребности превышают суммарные запасы:

m

n

åai

< åbj

i=1

j=1

Открытая модель ТЗ решается приведением к закрытой модели. (55) вводится фиктивный потребитель Вn+1 потребности которого

m n

bn+1= åai åbj

i=1 j=1

в случае (56) вводится фиктивный поставщик Am+1, запасы которого

(55)

(56)

В случае

(57)

45

m

n

(58)

an+1=åbi

- åa j

 

i=1

j=1

 

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

Пример 1. Магазины «Форум» (В1), «Октябрьский» (В2), «ЦУМ» (В3), «Континент» (В4) получает мясную продукцию от мясокомбинатов города Минска (А1), Могилёва (А2) и Витебска (А3), которые ежедневно могут поставить соответственно 60, 40, 35 тонн мясной продукции. Суточные потребности магазинов составляют 40, 25, 20, 50 тонн. Известна матрица транспортных расходов на доставку 1 тонны мясной продукции из мясокомбината каждому магазину и себестоимость единицы продукции.

1.Методом потенциалов найти план перевозок мясной продукции при котором минимизируются суммарные затраты по её изготовлению и доставки потребителям при обязательном условии, что продукция пункта, в котором себестоимость её производства наименьшая, распределяется полностью;

2.Вычислить суммарные затраты Fmin;

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

é5

4

1

2ù

ê

2

6

ú

C= ê4

3ú

ê

3

5

ú

ë7

4û

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

1) Экономико-математическая модель задачи

Представим данные задачи в виде распределительной таблицы 14 Таблица 14 – Распределительная таблица

Bj

 

 

B1

 

B2

 

B3

 

B4

 

 

 

Ai

 

 

 

 

 

 

 

 

 

 

 

 

A1

 

 

 

5

 

4

 

1

2

 

60

 

 

x11

 

 

x12

 

x13

 

x14

 

 

 

A2

 

 

 

4

 

2

 

6

3

 

40

 

 

x21

 

 

x22

 

x23

 

x24

 

 

 

A3

 

 

 

7

 

3

 

5

4

 

35

 

 

x31

 

 

x32

 

x33

 

x34

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bj

 

 

40

 

25

 

20

 

50

 

135

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

4

 

 

 

 

 

 

 

 

 

Так как åai

= åbj

= 135 , то

модель

ТЗ

закрытая.

Экономико-математическая

i=1

 

j=1

 

 

 

 

 

 

 

 

 

модель задачи имеет вид:

46

ìx11 + x12 + x13 + x14 = 60 ïïx21 + x22 + x23 + x24 = 40

ïïx31 + x32 + x33 +x34 = 35 ïx11 + x21 + x31 = 40

íïx12 + x22 + x32 = 25

ïïx13 + x23 + x33 = 20 ïx14 + x24 + x34 = 50

ïîxy ³ 0,i = 1.3, j = 1.4

Целевая функция определяется из соотношения: F=5x11+4x12+x13+2x14+4x21+2x22+6x23+3x24+7x31+3x32+5x33+4x34 min

2) Построение начального опорного плана

Начальный опорный план получим по методу минимального элемента. Этот план представлен в таблице 15.

Таблица 15 – Начальный опорный план

Bj

B1

 

B2

 

B3

 

 

B4

 

ai

ui

Ai

 

 

 

 

 

 

 

 

 

 

 

A1

 

5

4

20

 

1

40

 

2

60

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A2

+

4

2

 

 

6

10

 

3

40

1

 

 

25

 

 

 

 

 

 

 

A3

35

7

3

 

 

5

 

 

4

35

4

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bj

40

 

25

 

20

 

 

50

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

vj

3

 

1

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

Записывается

начальное

опорное

решение

 

 

 

 

 

 

 

 

æ 0

0

20

40ö

 

 

 

 

 

ç

5

25

0

10

÷

 

 

 

 

 

X0=ç

÷

 

 

 

 

 

ç

35

0

0

0

÷

 

 

 

 

 

è

ø

 

 

и определяется соответствующее значение целевой функции

F0=20+2*40+4*5+2*25+3*10+7*35=445

3) Решение задачи методом потенциалов

Пусть каждому поставщику Аi соответствуют потенциалы ui,а каждому потребителю Bj потенциалы vj (i=1,m; j=1,n). Составим систему потенциалов

47

ïìu1 + v3

= 1

(59)

ïu1 + v4

= 2

 

ïu

+ v

= 4

 

í 2

1

= 2

 

ïu2

+ v2

 

ï

+ v4

= 3

 

ïu2

 

ïu

+ v

= 1

 

î 3

1

 

 

Для ее решения примем u1=0, тогда, решая систему (59) находим v3=1, v4=2,

u2=1, v1=3, u3=4, v2=1.

Найденные потенциалы поставщиков и потребителей указаны справа и внизу таблицы 15.

4) Проверка условий оптимальности

Для проверки условия оптимальности находят оценки свободных клеток Sij

S11=5-(3+0)=2

S12=4-(1+0)=3

S23=6-(1+1)=4

S32=3-(1+4)=-2

S33=5-(1+4)=0

S34=4-(2+4)=-2

Полученный план не является оптимальным, т.к. среди оценок Sij есть

отрицательные S32=S34=-2 .

Получены две перспективные клетки с одинаковыми значениями, поэтому загрузим, например, клетку (3;2)

Для неё построим цикл, который включает клетки (3;2), (3;1), (2;1), (2;2). Цикл построен в таблице 15 (выделено жирным).

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

отрицательных вершинах

λ=min(25;35)=25ед.

Чтобы общий баланс не изменился, в клетках цикла со знаком плюс прибавляем 25, а из клеток со знаком минус вычитаем столько же единиц. Новый опорный план приведён в таблице 16. Потенциалы поставщиков и потребителей вычислены непосредственно в таблице 16.

48

Таблица 16

Bj

B1

 

B2

 

B3

 

 

B4

 

ai

ui

Ai

 

 

 

 

 

 

 

 

 

 

 

A1

 

5

 

4

20

1

40

 

2

60

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A2

30

4

 

2

 

6

10

 

3

40

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A3

10

7

25

3

 

5

 

 

4

35

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bj

40

 

25

 

20

 

 

50

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

vj

3

 

1

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

Записывается

полученный опорный план

 

 

 

 

 

 

 

 

 

é 0

0

20

40ù

 

 

 

 

 

 

X1= ê30

0

0

10

ú

 

 

 

 

 

 

ê

 

 

 

ú

 

 

 

 

 

 

ê

25

0

0

ú

 

 

 

 

 

 

ë10

û

 

 

Определяется значение целевой функци

F=20+2*40+4*30+3*10+7*10+3*25=395

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

S11=5-(3+0)=2

S12=4-(1+0)=3

S23=2-(1+1)=0

S32=6-(1+4)=4

S33=5-(1+4)=0

S34=4-(2+4)=-2

План, представленный в таблице 16, не является оптимальным, т.к. все оценки свободных клеток положительны.

Однако, за счёт загрузки клеток (3,4) его можно улучшить. Замкнутый цикл для клетки (3,4) построен в таблице 16. После смещения 10 единиц груза получим новый опорный план, представленный в таблице 17.

Таблице 17

Bj

B1

 

B2

 

B3

 

B4

 

ui

Ai

 

 

 

 

 

 

 

 

 

A1

 

5

 

4

20

1

40

2

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A2

40

4

0

2

 

6

 

3

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A3

 

7

25

3

 

5

10

4

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

vj

3

 

1

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

49

Опорный план равен

é 0

0

20

40ù

ê

 

0

0

0

ú

X2= ê40

ú

ê

0

25

0

10

ú

ë

û

Значение целевой функции равно

F=20+2*40+4*40+3*25+4*10=375

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

т.к. число занятых

клеток

не

удовлетворяет

условию

r=3+4-1=6.

Поместим

нуль,

например, в клетку (2;2) и будем считать её занятой. Потенциалы

поставщиков

и

потребителей

определены

в

таблице

17.

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

 

 

 

 

S11=5-(3+0)=2

S12=4-(1+0)=3

S23=6-(1+1)=4

S32=3-(2+1)=0

S33=7-(3+2)=2

S34=5-(1+2)=2

Следовательно, план Х2 является оптимальным, а соответствующее ему значение целевой функции ЦФ Fmin=375.

7.6Реализация транспортной задачи с помощью поиска решения

вэлектронных таблицах Excel

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

Рассмотрим заполнение расчетной формы на следующем примере.

Пример 2. Три поставщика А1, А2, А3 поставляют соответственно 25, 43, 69 т продукции для обеспечения торговых точек В1, В2, В3, В4. потребности торговых точек соответственно равны 28, 32, 40, 37 т. стоимость перевозки 1т продукции задана матрицей:

é3

9

6

5

ù

ê

7

12

 

ú

с = ê5

15ú

ê

8

4

9

ú

ë11

û

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

Исходные данные необходимо представить в виде таблицы 18:

50

Таблица 18

 

a

b

 

c

 

d

 

e

f

1

ПОСТАВЩИКИ

 

 

ПОТРЕБИТЕЛИ

 

Ai

2

В1

 

В2

 

В3

 

В4

3

А1

 

3

 

9

6

 

5

 

4

 

 

 

 

 

 

 

 

25

5

А2

 

5

 

7

12

 

15

 

6

 

 

 

 

 

 

 

 

43

7

А3

 

11

 

8

4

 

9

 

8

 

 

 

 

 

 

 

 

69

9

Bj

 

28

 

32

40

 

37

137

10 МИНИМУМ ЦЕЛЕВОЙ ФУНКЦИИ

1.В ячейку F10 вводится формула для вычисления минимума целевой

функции: =СУММПРОИЗВ(B3:E3;B4:E4)+СУММПРОИЗВ(B5:E5;B6:E6)+СУММПРОИЗВ( B7:E7;B8:E8), используя функцию СУММПРОИЗВ из мастера функций.

2.формируется таблица 19 для ограничений, в которую вводятся соответствующие формулы для вычисления суммы груза по строкам и столбцам.

Втаблице 20 представлен результат вычислений по формулам.

Таблица 19

 

a

b

c

 

d

e

F

11

ОГРАНИЧЕНИЯ ПО

А1

=F4

 

 

 

=СУММ(B4:E4)

12

А2

=F6

 

 

 

=СУММ(B6:E6)

ЗАПАСАМ

 

 

 

13

А2

=F8

 

 

 

=СУММ(B8:E8)

 

 

 

 

14

ОГРАНИЧЕНИЯ ПО

В1

=B9

 

 

 

=B4+B6+B8

15

В2

=C9

 

 

 

=C4+C6+C8

16

ПОТРЕБНОСТЯМ

В3

=D9

 

 

 

=D4+D6+D8

17

 

В4

=E9

 

 

 

=E4+E6+E8

 

Таблица 20

 

 

 

 

 

 

 

a

b

c

 

d

e

f

11

ОГРАНИЧЕНИЯ ПО

А1

 

25

 

 

0

12

А2

 

43

 

 

0

ЗАПАСАМ

 

 

 

13

А2

 

69

 

 

0

 

 

 

 

14

ОГРАНИЧЕНИЯ ПО

В1

 

28

 

 

0

15

В2

 

32

 

 

0

16

ПОТРЕБНОСТЯМ

В3

 

40

 

 

0

17

 

В4

 

37

 

 

0

3.Для нахождения минимума целевой функции необходимо выбрать команду меню Сервис/ поиск решения.

4.в появившемся окне указать:

51

установить целевую ячейку (указать ячейку, в которой стоит формула для вычисления минимума целевой функции (F10)), равной минимальному

значению

изменяя ячейки (удерживая клавишу Ctrl, указать диапазоны ячеек для изменения ($B$4:$E$4;$B$6:$E$6;$B$8:$E$8))

ограничения добавить (указать ссылки на нужные ячейки

$C$11=$F$11; $C$12=$F$13; $C$13=$F$13; $C$14=$F$14; $C$15=$F$15; $C$16=$F$16; $C$17=$F$17)

6. В окне параметры указать, что модель линейная, значения неотрицательные, оценки линейные, разности прямые.

Результат вычислений представлен в таблице 21. Таблица 21

ПОСТАВЩИКИ

ПОТРЕБИТЕЛИ

 

Ai

В1

В2

В3

В4

 

 

А1

3

9

6

5

 

 

0

0

0

25

25

А2

5

7

12

15

 

 

28

15

0

0

43

А3

11

8

4

9

 

 

0

17

40

12

69

Bj

28

32

40

37

137

МИНИМУМ ЦЕЛЕВОЙ ФУНКЦИИ

 

 

 

 

774

ОГРАНИЧЕНИЯ ПО ЗАПАСАМ

А1

25

 

 

25

А2

43

 

 

43

 

А2

69

 

 

69

ОГРАНИЧЕНИЯ ПО

В1

28

 

 

28

В2

32

 

 

32

ПОТРЕБНОСТЯМ

В3

40

 

 

40

 

В4

37

 

 

37

Задания по теме «Транспортная задача» в приложении Е.

52