Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Линейная_алгебра_УП_очная_ЭлРес

.pdf
Скачиваний:
29
Добавлен:
20.05.2015
Размер:
1.08 Mб
Скачать

дополнительных объемов ресурсов TТ =(t1,t2,t3). Используя найденные

двойственные оценки ресурсов, сформируем условия их наличия у

предприятия, а именно, В + Q T 0, где матрица Q состоит из векторов А5, А6,

А7 в 3-й симплекс таблице.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задача состоит в нахождении вектора

доп лнительных объемов ресурсов

TТ =(t1, 0, t3), доставляющего при условии сохранения двойственных оценок

ресурсов Yo=(6, 0, 4) наибольшее значение суммарному приросту производства

продукции

 

 

 

χ = Yo T = 6t1 + 4t3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(1Р)

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

27

 

 

1

0

1

t1

 

0

работы

МБИ

 

 

 

 

13

 

 

4 5

0

2 5

 

 

 

0

 

 

 

 

 

 

 

 

 

(2Р)

 

 

 

0

 

 

.

 

 

 

 

 

 

 

 

 

20

 

 

3 5 1 4 5

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Предполагается, что допол итель о можно получить

 

не

 

более 10%

первоначального объема ресурса каждого вида, т.е.

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

208

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

г

 

 

t3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

0,1 107

,

 

(3Р)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

81

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

Т =(20,8;18,1)

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ВПО

 

 

 

 

 

 

 

27

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t1

, t3 0.

 

(4Р)

18,1

 

 

 

 

 

 

 

 

 

Переписав неравенства (2Р) , (3Р) и

 

 

 

 

 

 

 

 

 

(4Р)

 

 

 

 

 

 

в

 

 

 

виде:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

grad χ

 

 

ЧОУ

 

 

 

 

 

 

 

 

2013

 

 

 

 

 

 

 

 

 

 

 

 

t

 

 

 

t

 

 

27

 

 

 

W

 

 

 

 

 

 

 

1

 

3

 

 

 

 

 

 

 

20,8

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t 1

 

2

t 3 13

 

(5Р)

0

 

 

 

16,25

27

33,3

t1

 

 

5

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис.2

 

 

 

 

 

 

3

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

t 1

 

 

t 3

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0≤t1 ≤20,8; 0≤t2 ≤18,1,

(6Р)

приходим к з д че нахожде ия наибольшего значения функции (1Р) при

условиях (5Р), (6Р), р ш ни м которой графическим методом (рис. 2) является

точка M(20,8; 18,1). Программа «расшивки» имеет вид

t1 = 20,8, t2 = 0, t3 = 18,1

 

 

 

 

 

 

 

 

 

Москва

 

 

 

 

 

 

 

 

 

и прирост произвосамостоятельноства продукции составитй 197,2.

 

 

 

 

 

 

 

 

Для

 

 

студентов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

111

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

работы

 

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

Ранее

была рассмотрена задача, в

которой m пунктов-поставщиков

производят однородный продукт в количествах a1,…,ai,…,am единиц для

перевозки в

 

 

МБИ

другие n пунктов-потребителей, где эт т продукт используется в

количествах

b1, …, bj, …, bn. единиц.

Стоимость перевозки (тариф) одной

единицы продукта от i-го поставщика (i = 1, 2, … m) до j-го потребителя (j = 1,

2, …, n) равна cij

стоимостных единиц. Р ссмотрим закрытую модель

транспортной задачи

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

отправляемого продукта всеми поставщиками равно количеству получаемого

m

n

продукта всеми потребителями, т. е. ai = bj .

i 1

j 1

Требуется сформировать план

перев зок продукта, при котором все

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

перевозку.

.

Определим вектор X = (x11,… ,x ij, … ,x

mn ), как план перевозок от

 

г

поставщиков к потребителям, где xij – количество единиц продукта, которое

планируется к перевозке от i-го поставщика к j-муВПОпотребителю, при чем эта

перевозка либо имеет место, либо отсутствует, т.е. xij ≥ , i=1, 2,..,m; j = 1, 2, …, n,

 

 

ЧОУ

2013

самостоятельной

 

m

n

 

 

Тогда: f(X) =

c ij x ij – суммарная стоимость всех перевозок. От i-го

i 1

j 1

Москва

 

поставщика вывозиться весь продукт, т.е. xi1+ … +x ij+ … + x in = ai, i = 1, 2,

… m, а j-й потребитель п лучает столько продукта, сколько ему необходимо,

Для

 

студентов

 

 

 

т.е. x1j+ … +xij+ … + x mj

= bj, j = 1, 2, …, n.

 

 

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

программирования (ТЗЛП) на минимум:

 

 

 

 

m

n

 

 

 

 

(1)

f(X) =

c ij x ij

(min),

 

 

 

i 1

j 1

 

 

 

 

(2)

xi1+ … +x ij+ … + x in

= ai , i=1, 2, … m,

 

(3)

x1j+ … +xij+ … + x mj

= bj , j = 1, 2, …,n,

 

(4)

xij ≥0 ,

i=1, 2, … m;

j = 1, 2, …,n.

 

В матрице условий транспортной задачи ЛП обозначим столбец,

соответствующий переменной xij , через Aij ,

(i = 1, 2, … m; j = 1, 2, …,n.).

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

систему ограничений (2) – (3) - в виде

 

 

 

 

 

 

m

n

 

 

 

 

 

 

 

А ij x ij

= В.

 

 

 

 

i 1

j 1

 

 

112

0

0

 

1

0

 

1

0

 

0

работы1

0

 

0

1

bn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 1

A11

A12

..

A1n A21

..

A2n ..

Ai1

..

Aij

..

Ain

..

Am1

Am2

Amn

B

1

1

..

1

0

..

0 ..

0

..

0

..

0

..

0

 

0 ..

0

a1

0

0

..

0

1

..

1 ..

0

..

0

..

0

..

0

 

0 ..

0

a2

..

..

… ..

..

..

.. … … .. … …

 

 

 

 

 

 

 

 

 

 

 

 

 

 

МБИ

 

 

0

0

 

0

0

 

0

1

 

1

 

1

 

0

 

0

0

ai

..

..

… ..

..

..

..

… ..

0

0

 

0

0

 

0

0

 

0

 

0

 

1

 

1

1

am

1

0

 

0

1

 

0

1

 

0

 

0

 

1

 

0

0

b1

0

1

 

0

0

 

0

0

 

0

 

0

 

0

 

1

0

b2

..

..

… ..

..

..

..

… ..

0

0

 

0

0

 

0

0

 

1

 

0

 

0

 

0

0

bj

..

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

..

… ..

 

 

самостоятельной

 

 

ВПО

 

 

 

 

 

 

Очевидно,

что

транспортную

задачу

 

ЛП можно

 

решить

симплекс

методом. Однако размер матрицы усл вий [(nm) x (m+n)] указывает на то, что

для решения лучше использовать специальные

методы, одним из которых

 

b1

bj

 

 

 

bn

 

 

2013

 

матрицу

является метод потенциалов. Для использования это о метода.

условий задачи удобно записывать в виде транспортной таблицыг2 (ТТ):

 

 

 

 

ЧОУ

Таблица 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

с11

c1j

 

 

 

c1n

 

a1

 

 

 

 

 

 

 

 

 

 

ci1

cij

 

 

 

cin

 

ai

 

 

 

 

 

 

 

 

 

 

 

cm1

cmj

 

 

 

cmn

 

am

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

соединяет одно и тостудентовже ребро.

 

 

 

Москва

 

 

 

xij,

 

 

(i = 1, 2, … m;

j = 1, 2, …, n)

Утверждение 1. Для любых

 

 

выполняется равен тво

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Aij = Ai1 + A1j – A11.

 

 

 

▲ Пр верить это утверждение

ледует из указанных действий с

соответствующи и столбцами ма рицы усл вий (табл. 1). ■

 

 

Определение. Циклом в транспортной таблице называют замкнутую

ломаную линию, удовл творяющую следующим условиям:

 

 

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

 

Для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

все ребра ломаной проходят по клеткам транспортной таблицы и расположены либо в строке, либо в столбце этой таблицы;

к каждой вершине ломаной подходят два ребра, одно по строке, другое по сто бцу.

Определение. Две вершины цикла называют соседними, если их Циклы транспортной таблицы обладают следующими свойствами:

113

 

каждая вершина

цикла имеет единственную соседнюю вершину, как в

 

строке, так и в столбце;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в любой

строке

и в любом столбце транспортной таблицы содержится

 

четное число вершин цикла, либо их там нет.

 

 

 

 

 

 

 

 

 

Определение.

Набор

клеток

трансп ртн й

 

таблицы

называется

ацикличным, если не существует цикла, вершины которого находятся в

клетках данного набора.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Утверждение 2. Векторы условий тр нспортной задачи линейного

программирования

Аi1 j1 , …,

Аik jk

(табл.

1)

об азуют линейно независимую

систему тогда и только тогда, когда набор клеток (i1,

j1), …, (ik, jk) (табл. 2)

является ацикличным.

 

 

 

 

 

 

 

работы

МБИ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример.

Ацикличному

набору

клеток

в

 

 

таблице

 

 

транспортной

соответствует система линейно независимых векторов условий транспортной

задачи, т. е.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

х12

 

 

х15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х23

 

 

 

 

 

 

 

 

 

 

 

 

 

г

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

линейно независимая система векторов

 

х41

х32

х34

 

 

 

 

 

А , А , АВПО, А , А , А .

 

 

 

 

 

 

 

 

 

 

 

12

15

23

32

 

34

 

41

 

 

 

 

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

линейного программирования равен m + n – 1 , где m – число поставщиков, n –

число потребителей.

 

 

 

 

 

 

 

 

 

 

2013

 

 

 

 

 

▲ Рассмотрим вект ры

А11, А12, …,

А1n, А21,

 

Эти векторы

 

 

…,

Аm1.

образуют линейно независимую систему, так к к соответствуют ациклическому

 

х11

х12

х1n

 

 

 

 

 

ЧОУ

 

 

 

 

 

 

 

 

 

 

 

набору клеток транспортной таблицы. Кроме того, любой

 

х21

 

 

 

вектор Aij

(i = 1, 2, … m;

 

j = 1, 2, …,n) условий

 

 

 

 

трансп ртн й

 

 

задачи

 

согласно

 

утв.1

линейно

 

 

 

 

 

 

 

 

 

 

 

хm1

 

 

 

раскладывае ся по векторам рассматриваемой системы.

 

 

Следовательно, рассматриваемый наб р векторов является базисом

системы векторов условий тра спортной задачи. Так как по определению ранг

системы векторов рав н числу векторов в любом его базисе, то ранг системы

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

 

 

 

 

 

 

 

 

 

 

 

Москва

 

 

 

 

 

 

 

системе векторовсамостоятельнойи равен m + n –1. ■

 

 

 

 

 

 

 

 

 

 

 

 

Пусть вектор

α0 =(xij0, …, xmn0 )

 

является допустимым решением

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

этого вектора, т. е. хij0 ≠ 0, запишем в соответствующие клетки транспортной

таблицы.

студентов0

 

0

, …, xmn

0

) является опорным решением

 

Для

Следствие 2. Вектор α

= (x11

 

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

114

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

 

 

 

α0

 

=(x110,

…, xmn0

 

 

Для

нахождения

базиса

 

опорного решения

 

 

)

транспортной задачи линейного программирования необходимо:

 

 

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

в соо ветствующие клетки

 

транспортной таблицы;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в некоторые из

оставшихся пустыми клеток

транспортной таблицы

 

дописать «жирным» шрифтом нули так, что ы образовать ацикличный

 

набор из m + n – 1 заполненных клеток;

 

 

 

 

 

 

 

 

 

 

 

 

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

соответствующие заполненным

 

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

=(x110, …, xmn0 ).

 

 

Чтобы

решить

транспортную

задачу

работы

 

 

программирования

 

линейного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

МБИ

 

 

 

методом потенциалов, необходимо, как и в симплекс алгоритме, знать

начальное опорное решение.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для нахождения начального опор ого решения транспортной задачи

линейного

 

программирования

воспользуемся

методом

 

минимальной

стоимости.

 

 

 

 

 

 

транспортнуюВПО

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

г

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим

 

задачу

 

линейного

 

cij

 

 

ai

программирования

и

 

соответствующую

ей

транспортную

 

 

 

 

 

таблицу.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

bj

 

 

 

Шаг

1.

Выбираем

 

клетку

в

транспортной

таблице

с

 

 

 

 

наименьшим

тарифом – сij. Положим,2013что xij

= min{ai, bj}

 

 

 

 

 

 

 

 

если ai < bj

, то xij = ai , это равносильно тому, что от i-го поставщика

 

 

 

 

 

 

 

 

 

 

ЧОУ

 

 

 

 

 

 

 

 

 

bj – ai = bj

 

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

 

единиц продукта; вычерки аем i-ю стро у;

 

 

 

 

 

 

 

 

 

 

 

если ai > bj

, то xij = bj , это равносильно тому, что j-му потребителю

 

завезли весь продукт, а от

 

i-го по тавщика осталось вывести ai – bj = ai

,

 

вычеркиваем j-й столбец;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если ai = bj

, то xij = ai = bj

, это равносильно тому, что от i-го поставщика

 

вывезен

весь продукт и

 

j-му потребителю завезен

 

весь продукт;

 

вычеркиваем i-ю строку и j-й столбец.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Москва

 

 

 

 

 

 

 

 

 

 

 

 

самостоятельной

 

 

 

 

 

 

 

 

 

 

 

 

Шаг 2. Повторяем шаг 1 с оставшейся частью транспортной таблицы и т. д.

 

 

Через конечное число шагов получим опорное решение.

 

 

 

 

 

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

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

каждом столбце. Наименьшийстудентовтариф окажется в клетке с двумя пометками.

Для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

После вычеркивания строки или столбца на каждом шаге расстановка пометок

115

повторяется в оставшейся части таблицы.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пример. Транспортная таблица составлена для 5 поставщиков и 5

потребителей. В правом верхнем углу каждой клетки таблицы указан тариф на

 

5

 

3

 

 

6

2

‘’

1

 

 

 

перевозку

 

от

 

поставщика

к

 

 

 

 

 

 

 

соответствующему

 

 

потребителю.

 

 

 

 

 

 

 

 

10

a1=10

 

 

 

 

4

 

7

 

 

3

‘’ 1

 

2

a2=20

 

Найти опорное решение методом

 

 

 

 

 

 

 

20

 

 

 

минимальной стоимости.

 

 

 

3

‘‘

1

 

2

5

 

8

 

 

 

 

 

 

 

 

 

 

 

 

▲ На первых 3-х

шагах

 

10

30

 

 

3

4

 

7

a3=30

 

 

 

2

 

 

 

a4=40

 

пе евозками в 10, 20, 30 единиц

 

9

10

 

30

4

3

+30

были

заняты

 

 

соответственно

 

 

12

 

 

15

 

 

 

работы

 

 

(2;4),

(3;2)

и

 

50

 

 

 

 

 

 

 

 

a5=50

 

клетки

(1;5),

 

 

 

 

 

 

 

 

 

 

 

вычеркнуты первыеМБИ

3 строки, 4-й и

b1=50 b2=40 b3=30 b4=20 b5=10

 

ai

 

 

 

–10

 

 

 

 

 

 

bj

ai’

5-й столбцы.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тариф

в

 

 

 

 

 

 

 

 

 

 

 

 

bj

 

Наименьший

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

оставшейся

 

 

части

 

таблицы

оказался

в

клетке (4;2),

куда

и

поместили перевозку

 

в 10

 

.

 

 

 

 

 

единиц. Второй

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

г

 

 

 

 

 

потребитель получил весь продукт. Поэтому вычеркиваем 2-й столбец.

 

 

 

 

 

Среди

не

вычеркнутых

клеток наименьший тариф

в

 

клетке

(4;3).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ВПО

 

 

 

 

 

 

 

 

 

 

 

 

Помещаем в эту клетку п р возку в 30 единиц от 4-го поставщика к 3-му

потребителю. Вычеркиваем 4-ю строку и 3-й столбец.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Затем помещаем перевозку в 50 единиц от 5-го поставщика к 1-му

потребителю

в

клетку

(5;1).

Вычеркиваем

5-ю

строку

и

 

1-й

столбец.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2013

 

 

 

 

 

 

 

 

 

Полученная трансп ртная таблица соответствует опорному решению.■

 

 

 

 

Пусть

 

вектор α0

=

(x110,

…, xmn0) является допустимым решением

 

 

 

 

 

 

 

 

 

 

 

 

ЧОУ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

этого вектора, т. е. хij0 ≠ 0, запишем в соответствующие клетки транспортной

таблицы. Если

кажется, что зап лненных клеток меньше, чем m + n – 1, то в

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

«жирным» шрифтом нули так, чтобы

браз вать ацикличный набор из m+ n – 1

заполненных клеток.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Определение. Пот нциалами опорного решения α0 =

 

(x110, …, xmn0)

называются такие числа

Ui

(i = 1, 2, …Москваm) , Vj (j = 1, 2, …,n) , что равенство

Ui + Vj = Cij

самостоятельной

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

выполняется для всех занятых клеток.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таким образом, для нахождения потенциалов опорного решения имеется

система

инейных уравнений

Ui + Vj = cij,

i = 1, 2, … m;

 

j = 1, 2, …, n, в

которой m + n – 1 уравнений и

m + n неизвестных. Такая система является

неопределенной и поэтому всегда имеет решение. Структура системы такова,

чтоДля, задав

 

 

 

студентов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

значение одной

из

неизвестных,

все

остальные

 

неизвестные

 

 

 

 

 

 

 

 

 

 

 

 

116

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определяются однозначно.

работы

 

Теорема.(достаточное условие оптимальности опорного решения)

Пусть Ui (i =1, 2, … m) , Vj (j =1, 2, …,n) потенциалы опорного решения α0 = (x110, …, xmn0 ) транспортной задачи линейного программирования. Если

для всех не занятых клеток, т. е

хij0 = 0, i = 1, 2, …, m; j = 1, 2, …, n

выполняется неравенство Ui + Vj ≤ cij

, то опорное

решение

является

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

 

 

 

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

методом потенциалов

 

 

Пусть вектор α1 = (x111, …,

xmn1)

является

опорным

решением

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

этого вектора, т. е. хij1 ≠ 0, запишем в соответствующие клеткиМБИ

транспортной

таблицы. Если окажется, что заполненных клеток меньше, чем m + n – 1, то в

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

самостоятельной

ВПО

 

 

 

 

.

 

 

«жирным» шрифтом нули так, чтобы образовать ацикличный набор из m + n –1

заполненных клеток.

 

 

2013

 

 

г

 

 

 

 

 

 

1

 

1

)

 

Шаг 1. Найдем потенциа ы опорного решения α1 =(x11

 

 

, …, xmn

 

ЧОУ

 

 

 

 

=

0,

i=1,

2, … m;

Если для любой из незапо ненных клеток,

т. е. хij

 

j = 1, 2, …, n, окажется, что Ui + Vj ≤ cij , то α1

=(x11 , …, xmn1)

 

является

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

 

 

 

 

 

 

 

 

 

 

Если же найдется клетка (r,s), для которой выполняется неравенство Ur +

Москва

 

 

 

 

 

 

 

 

 

Vs > Cus , то строим цикл, одна из вершин которого находится в клетке (r,s), а

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

Шаг 2. Выполняемстудентовшаг 1 для опорного решения α2 =(x11”, …, xmn” ), и т.д.

существует и при ом олько один.

Назовем его циклом пересчета. Каждой

вершине цикла пере чета, начиная

с вершины (r,s), присвоим поочередно

положительные и отрицательные знаки, т. е. зна и + и – .

 

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

величиной перевозки, т. е. xk

= min{xij}. Пусть xk = p.Тогда транспортную

таблицу заполним следующим образом:

xij= xij, если клетка (i, j) не является вершиной цикла пересчета;

 

xij= xij+ р, если кл тке (i, j)

был присвоен знак плюс;

 

xij= xij– р, если клетке (i, j)

был присвоен знак минус;

 

клетка (k, ) не заполняется.

 

Можно доказа ь, что в результате будет получено новое опорное решение

α2 =(xДля11”, …, xmn” ), на котором значение целевой функции будет не меньше, чем на первоначальном опорном решении, т. е. f(α2) ≤ f(α1).

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

117

 

Пример. Используя опорное решение, полученное в предыдущем

примере, решить задачу методом потенциалов.

 

 

 

 

 

 

 

 

 

 

 

Vj

4

 

2

3

 

1

 

 

 

–2

Табл.1

 

▲ Допишем жирным шрифтом

Ui

 

 

3

 

6

 

 

 

 

 

 

 

 

 

 

нули в кле ки (2,3). (3,1) и (5,5)

3

5

 

 

2

 

 

1

 

 

10

 

 

так,

 

чтобы

 

 

 

получить

 

2

 

2

 

 

 

 

 

 

10

 

 

 

 

ацикличный набор из m+n–1=

 

 

 

 

2

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9 занятых клеток.

 

 

 

0

4

7

 

3

1

 

 

 

2

 

 

 

 

 

 

 

 

–1

3

1

0

+

20

 

8

 

 

20

 

 

Таким образом,

найдено

 

2

 

5

 

 

 

 

 

 

 

пе воначальное

 

 

 

 

опорное

 

0 +

30 –

 

 

 

 

 

 

 

 

 

30

 

 

 

 

 

 

0

 

3

 

4

 

 

7

 

 

 

 

ешение (табл. 1). Находим

10

2

30

 

 

 

 

 

40

 

 

 

 

 

10 +

 

 

 

 

 

 

 

 

 

работы

 

 

этого

опорного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

потенциалы

 

5

9

12

15

 

4

0

3

 

 

50

 

 

решения. ДляМБИэтого выбираем

 

50 –

 

 

 

 

 

+

 

 

 

 

строку

 

или

 

 

 

столбец

с

 

50

 

40

30

20

 

 

10

bj

 

 

ai

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

наибольшим

 

 

 

 

количеством

занятых

 

клеток,

например,

4–юстроку.

 

Присваиваем этой строке потенциал

U4=0. Далее по

тарифу

c42,

испол зуя

 

уравнение U4

+

V2

 

.

 

находим

 

=

 

c42,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

г

= c43, находим

потенциал V2=2, а по тарифу с43=3 , используя уравнение U4 + V

 

 

потенциал V3=3 и т.д. находим потенциалы остальных строк и столбцов. После

этого выясняем,

 

 

 

 

 

 

 

 

 

 

 

 

ВПО

 

 

 

 

 

 

 

 

 

 

существуют ли кл тки, для которых выполняется неравенство

Ur + Vs > cus. Если такие кле ки существуют, то величину (Ur + Vs – crs)

записываем в левый нижний угол соответствующей клетки.

 

 

 

 

 

 

 

 

 

Выбираем

клетку с

наибольшей

 

из

полученных

величин.

Т.к. все

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2013

 

 

 

 

 

 

 

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

клетку (1,4) с наименьшим тарифом. Строим цикл пересчета с вершинами в

 

 

 

 

 

 

 

 

 

 

 

ЧОУ

 

(4;2), (4;3),

(2;3),

 

(2;4),

(1;4)},

в

клетках:{(1;4), (1;5), (5;5), (5;1), (3;1), (3;2),

 

Vj

4

 

2

3

 

1

 

 

–2

Табл.2

 

аждую из которых поочередно

Ui

5

3

 

6

 

2

 

 

1

 

 

 

 

 

тавим плюс и минус, начиная

1

 

 

 

 

 

 

 

 

 

с клетки (1, 4). Среди клеток со

 

 

 

 

 

 

10

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

знаком минус выбираем клетку

0

4

7

 

3

1

 

 

 

2

 

 

 

 

 

3

1

10 +

10 –

 

 

8

 

20

 

 

(1, 5)с наименьшей перевозкой

 

2

 

5

 

 

 

 

 

 

 

х15=10.

Далее

 

эту

величину

1

10 +

20 –

 

 

 

 

 

 

 

 

30

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

к

 

 

перевозке

в

0

10

2

 

3

 

4

 

 

7

Москвадобавляем

 

 

 

 

 

самостоятельной

 

 

 

клетках

со

 

знаком

плюс

и

 

 

 

20 +

20 –

 

 

 

 

3

 

40

 

 

 

5

9

12

15

 

4

 

 

 

50

 

 

вычитаем

 

из

 

 

перевозки

в

 

40

 

 

 

 

 

 

 

10

 

 

 

клетках

 

со

 

знаком

минус.

 

 

 

 

2 +

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Получаем

 

 

новое

опорное

 

50

 

40

30

20

 

10

 

 

ai

 

 

 

состоитДля

 

 

студентов

 

 

bj

 

 

 

 

решение

(табл.

 

 

2),

которое

из m+n–1 = 9 занятых клеток.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

118

 

 

Считаем потенциалы, оставляя U4= 0, и записываем их в таблицу.

Выясняем, что только для клетки (5,4) выполняется неравенство Ur + Vs > crs.

При этом величину (U5 + V4 – c54) = 2

записываем в лев

й нижний угол этой

клетки. Строим цикл пересчета с вершинами в кле ках:{(5;4), (5;1), (3;1), (3;2),

(4;2),

(4;3), (2;3),

(2;4),

(5;4)}и расставляем в них п

 

чередно знаки плюс и

минус, начиная с клетки (5, 4).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

х24=10 и продвигаем ее по циклу пересчета, приб вляя в клетках со знаком

Vj

 

4

2

 

3

–1

 

–2

Табл.3

плюс и вычитая в клетках со

 

 

 

знаком минус. Получаем новое

Ui

 

 

 

 

 

 

 

 

1

 

 

 

работы

 

 

 

 

 

 

 

3

 

5

3

 

6

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

опорное решение (табл. 3)

 

 

 

2

2 +

 

 

10

 

 

 

 

10

 

 

 

 

ПослеМБИ

 

 

вычисления

 

 

 

 

 

 

 

 

 

 

потенциалов

оказывается, что

0

 

4

7

 

3

1

 

 

2

 

 

 

 

 

 

 

 

 

 

данное опорное решение также

 

 

 

 

 

20

 

 

 

 

 

20

 

 

3

1

 

5

 

 

8

 

 

не

 

 

является

 

 

оптимальным.

 

 

2

 

 

 

 

 

 

 

 

 

1

20 +

10 –

 

 

 

 

 

 

 

30

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

Строим

 

цикл

 

пересчета

и

0

 

10

2

 

3

4

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

г

 

 

 

 

 

 

 

30

 

10

 

 

 

 

 

40

 

передвигаем по нему 10 единиц

 

 

 

 

 

 

 

 

 

 

груза.

 

Получаем

следующее

5

 

9

12

 

15

4

 

 

3

 

 

 

 

 

 

 

 

 

50

 

ВПО

 

 

 

 

 

 

 

 

 

 

 

30 –

 

 

 

10 +

 

10

 

 

опорное решение (табл. 4) с 8

 

50

40

 

30

20

 

10

bj

 

ai

занятыми клетками.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дописываем «0» жирным

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Vj

 

4

2

 

3

–1

 

–2

Табл.4

шрифтом в клетку (1,1), чтобы

 

 

 

 

 

 

 

 

2013

 

 

 

 

 

 

Ui

 

 

 

 

 

 

 

 

 

ЧОУ

 

получить ацикличный набор из

1

 

5

3

 

6

2

 

 

1

 

m

 

+

 

n

1

 

=

9

клеток.

 

 

0

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

Пересчитываем

 

 

потенциалы.

0

 

4

7

 

3

1

 

 

2

 

 

 

 

 

 

 

 

 

 

20

 

Для каждой свободной клетки

 

3

 

 

20

 

 

 

 

 

 

 

1

 

2

5

 

 

8

 

30

 

выполняется неравенство Ur +

1

30

 

 

 

 

 

 

 

 

 

Vs < crs.

 

 

 

 

 

 

 

 

 

0

 

10

2

 

3

4

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

 

 

Следовательно,

полученное

5

 

9

3 0

 

10

4

 

 

3

 

 

 

 

12

 

15

 

 

 

50

 

в таблице 4 опорное решение

 

20

 

 

 

20

 

10

 

 

является оптимальным.

 

 

50

40

 

30

20

 

10

 

 

ai

 

 

 

 

 

 

 

 

 

 

 

bj

Москва

 

 

Замечание.

 

Модель

 

 

 

самостоятельной

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

m

 

n

 

 

m

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ai

> bj , или

ai <

bj. После введения фиктивного потребителя с

i 1

 

j 1

 

 

i 1

 

j 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

объемом потребления

bn+1

=

n

bj

m

ai,

или

фиктивного

 

поставщика

с

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для

 

 

студентовj 1

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

119

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

n

 

 

 

 

 

объемом поставок am+1= ai

bj , такая задача также решается методом

 

 

i 1

j 1

 

 

 

 

 

потенциалов. При этом тарифы на перевозки равны нулю,

т.е. cm+1, j = ci, n+1=0

для всех j = 1, 2, …, n и i = 1, 2, …m.

 

 

 

 

 

Ответьте на вопросы

 

 

 

 

 

 

1.

Сформулируйте содержательную постановку транспортной задачи

 

линейного программирования.

 

 

 

 

 

 

2.

Напишите математическую постановку т анспортной задачи линейного

 

программирования.

 

 

работы

 

 

3.

 

 

 

 

 

 

В чем отличие закрытой модели транспортной задачи от открытой модели?

4.

Какова структура матрицы условий транспортной

МБИзадачи, и какова

 

размерность этой матрицы?

 

 

 

 

 

 

5.

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

 

транспортная таблица?

 

 

 

 

 

.

6.

 

 

 

 

 

 

 

Дайте определение набора клеток транспортной таблицы, образующего

 

цикл. Перечислите свойства цик а.

 

 

 

 

г

 

 

 

 

 

 

7.

Дайте определение ацик ичного набора

клеток транспортной таблицы и

 

приведите пример.

 

 

ВПО

 

 

 

 

 

 

 

 

 

 

8.

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

 

соответствующей системой векторов условий транспортной задачи?

9.

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

 

каков ранг этой системы векторов?

 

 

2013

 

 

 

 

 

 

 

10.Дайте определение опорного решения

транспортной

 

задачи линейного

 

программирования.

 

ЧОУ

 

 

 

 

 

 

 

 

 

 

 

11.Какие действия

необходимо

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

 

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

12.Опишите етод

инимальной стоим сти для нахождения первоначального

 

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

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

спо оба ихсамостоятельнойвычисл ния. Москва

14.Сформулируйте остаточное условие оптимальности опорного решения транспортной задачи линейного программирования.

15.Как формируется цикл пересчета и какова схема заполнения его вершин? 16.Опишите алгори м метода потенциалов для нахождения оптимального

решения тран портной задачи линейного программирования.

Для

студентов

120