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

Шурко Введение в системный анализ

.pdf
Скачиваний:
18
Добавлен:
21.02.2016
Размер:
956.66 Кб
Скачать

11

L=7x1+5x2 max

2x1+3x2 + x3=19

2x1+ x2 + x4=13

3x2 + x5=15

3x1 + x6=18

Решение 1. Найдем ранг матрицы системы уравнений;

 

2

3

1

0

0

0

 

 

2

1

0

1

0

 

A =

 

0

 

0

3

0

01

1

.

 

 

0

 

 

0

0

0

0

 

 

3

1

Напомним некоторые определения:

1.Определитель R-го порядка, составленный из элементов матрицы,

расположенных на пересечении выделенных R произвольных строк и R

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

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

отличного от нуля.

Минор 4-го порядка: (минор максимального порядка)

1

0

0

0

 

0

1

0

0

=4 0

0

0

1

0

 

0

0

0

1

 

Решение2.Найдем ранг расширенной матрицы:

 

2

3

1

0

0

0

19

 

 

2

1

0

1

0

0

 

A =

 

13

 

0

3

0

0

1

0

 

 

 

15

3 0 0 0 0 1 18

r(A)=4 - по той же причине.

12

Т.к. r(A)=r(A) следовательно:

1)система уравнений совместна

2)4 базисных переменных можно выразить через 2 свободных, т.е.

 

 

х3=19-2х1-3х2

 

 

х4=13-2х12

 

 

х5=15-3х2

 

 

х6=18-3х1

х12

-

свободные переменные,

х3456

-

базисные переменные.

 

 

L - 7x1 - 5x2 = 0.

Имеем исходную таблицу 1.

Таблица 1.

Базис.п

Своб.ч.

X1

X2

X3

X4

X5

X6

X3

19

2

3

1

0

0

0

X4

13

2

1

0

1

0

0

X5

15

0

3

0

0

1

0

X6

18

3

0

0

0

0

1

 

 

 

 

 

 

 

 

L

0

-7

-5

0

0

0

0

 

 

 

 

 

 

 

 

Следуя 1 шагу можем выбрать 2 разрешающих столбца: X1 и X2 с оценками соответственно -7 и -5.

Возьмем, например, столбец X2. В нем имеется 3 положительных элемента: 3, 1, 3.

Для того, чтобы, следуя 2-му шагу, выбрать разрешающую строку,

разделим на числа 3, 1, 3 соответствующие свободные члены: 19/3, 13/1, 15/3.

Из полученных частных наименьшее - 15/3.

Следовательно, разрешающая, строка - X5.

Разрешающие строку и столбец выделяем стрелками. В базис введем переменную X2 и выведем переменную X5.

13

Следуя 3-му шагу, пересчитаем элементы разрешающей строки X5:

X5 5 0 1 0 0 1/3 0

Следуя 4-му шагу, вычисляем элементы всех остальных строк:

1) строка Х3: 19-5*3=4

2-0*3=2

3-1*3=0

1-0*3=1

0-0*3=0

0-1/3*3=-1

0-0*3=0

X3 4 2 0 1 0 -1 0

2) строка X4: 13-5*1=8

2-0*1=2

1-0*1=0

0-0*1=0

1-0*1=1

0-1/3*1=-1/3

0-0*1=0

X4 8 2 0 0 1 -1/3 0

3) строка Х6: 18-5*0=18

3-0*0=3

0-1*0=0

0-0*0=0

0-0*0=0

0-1/3*0=0

1-0*0=1

X6

18

3

0

0

0

0

1

4) строка L: 0-5*(-5)=25 -7-0*(-5)=-7 -5-1*(-5)=0 0-0*(-5)=0 0-1/3*(-5)=5/3 0-0*(-5)=0

14

L 25 -7 0 0 0 5/3 0

Новые базисные переменные: X3,X4,X2,X6.

Первая итерация завершена.

Получим таблицу 2.

Б.п.

С.ч.

X1

X2

X3

X4

X5

X6

X3

4

2

0

1

0

-1

0

 

 

 

 

 

 

 

 

X4

8

2

0

0

1

-1/3

0

X5

5

0

1

0

0

1/3

0

X6

18

3

0

0

0

0

1

L

25

-7

0

0

0

5/3

0

 

 

 

 

 

 

 

 

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

 

 

1 шаг: разрешающий столбец Х1.

 

 

 

 

 

 

2 шаг: 4/2, 8/2, 18/3

-разрешающая строка Х3. В базис введем переменную

Х1 и выведем переменную Х3.

 

 

 

 

 

 

3 шаг: пересчитаем элементы строки Х3:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X3

2

1

 

0

1/2

0

-1/2

0

 

 

 

 

 

 

 

 

 

 

 

 

4 шаг: вычисляем элементы всех остальных строк:

1) строка Х4

8-2*2=4

2-1*2=0

0-0*2=0

0-1/2*2=-1

1-0*2=1

-1/3-(-1/2)*2=2/3

0-0*2=0

X4

4

0

0

-1

1

2/3

0

15

2)строка Х2. Так как разрешающий элемент в этой строке равен 0, то она не изменяется, строка Х6.

18- 2*3=12

3-1*3=0

0-0*3=0

0-1/2*3=-3/2

0-0*3=0

0-(-1/2)*3=3/2

1-0*3=1

X6

12

0

0

-3/2

0

3/2

1

Строка L : 25-2*(-7)=39 -7-1*(-7)=0 0-0*(-7)=0 0-1/2*(7)=7/2 0-0*(-7)=0 5/3-7/2=-11/6 0-0*(-7)=0

L

39

0

0

7/2

0

-11/6

0

 

 

 

 

 

 

 

 

Новые базисные переменные Х1, Х2, Х6.Завершена 2-я итерация.

Получим таблицу 3.

Б.п

С.ч.

X1

X2

X3

X4

X5

X6

X1

2

1

0

1/2

0

-1/2

0

X4

4

0

0

-1

1

2/3

0

X2

5

0

1

0

0

1/3

0

 

 

 

 

 

 

 

 

X6

12

0

0

-3/2

0

3/2

1

 

 

 

 

 

 

 

 

L

39

0

0

7/2

0

-11/6

0

 

 

 

 

 

 

 

 

Проделаем все 4 шага применительно к таблице 3.

1-й шаг: разрешающий столбец - Х5.

16

2-й шаг: находим разрешающую строку.

4*3/2=6, 5*3=15, 12*2/3=8 -разрешающая строка -Х4.

В базис введем переменную Х5 и выведем переменную Х4: 3-й шаг: пересчитываем элементы строки Х4:

 

 

X4

6

 

 

0

0

 

-3/2

3/2

1

0

 

4-й шаг: вычисляем элементы всех остальных строк.

 

 

 

 

 

 

 

1) строка Х1.

2-6*(-1/2)=5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1-0*(-1/2)=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0-0*(-1/2)=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1/2-(-3/2)*-(1/2)=-1/4

 

 

 

 

 

 

 

 

 

 

 

 

 

0-3/2*(-1/2)*1=3/4

 

 

 

 

 

 

 

 

 

 

 

 

 

(-1/2)-(-1/2)*1=0

 

 

 

 

 

 

 

 

 

 

 

 

 

0-0*(-1/2)=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X1

5

 

 

1

0

 

-1/4

3/4

0

0

 

 

 

2) строка Х2.

5-6*(1/3)=3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0-0*(1/3)=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1-0*1/3=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0-(-3/2)*1/3=1/2

 

 

 

 

 

 

 

 

 

 

 

 

 

0-3/2*1/3=-1/2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1/3-1*1/3=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0-0*1/3=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X2

 

3

 

 

0

1

 

1/2

-1/2

 

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3) строка Х6.

12-6*3/2=3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0-0*3/2=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0-0*3/2=0

 

 

 

 

 

 

 

 

-3/2-(-3/2)*3/2=3/4 0-3/2*3/2=-9/4 3/2-1*3/2=0 1-0*3/2=1

17

X6

3

0

0

3/4

-9/4

0

1

4) строка L. 39-6*(-11/6)=50

0-0*(-11/6)=0

0-0*(-11/6)=0 7/2-(-3/2)*(-11/6)=3/4 0-3/2*(-11/6)=11/4 -11/6-1(-11/6)=0 0-0*(-11/6)=0

L

50

0

0

3/4

11/4

0

0

 

 

 

 

 

 

 

 

Новые базисные переменные: Х1, Х5, Х2, Х6.

Завершена 3-я итерация.

Получим таблицу 4.

 

Б.п

С.ч.

X1

X2

X3

 

X4

X5

X6

 

 

X1

5

1

0

-1/4

 

3/4

0

0

 

 

X5

6

0

0

-3/2

 

3/2

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

X2

3

0

1

1/2

 

-1/2

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

X6

3

0

0

3/4

 

-9/4

0

1

 

 

L

50

0

0

3/4

 

11/4

0

0

 

 

 

 

 

 

 

 

 

 

 

 

Поскольку все оценки неотрицательные,

то мы получим

оптимальный

план:

Х1=5, Х2=3, Х3=0, Х4=0, Х5=6, Х6=3

Lmax =50

Замечание. Если стоит задача минимизации целевой функции n

L= CiXi + C0 min

i=1

18

при соответствующих линейных ограничениях, то заменой L1(x) =-L(x) она сводится к максимизации новой целевой функции L1(x) при тех же линейных ограничениях.

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

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

Имеется m предприятий А12,...,Аm, производящих один и тот же продукт в количествах, равных соответственно а12,...,аm. Есть и n потребителей этого продукта, находящихся в пунктах В12,...,Вn, причем потребности их известны и равны b1,b2,...,bn. Предполагается, что суммарный объем потребления равен суммарному объему выпуска всех предприятий. Перевозка продукта от i-го предприятия к j-му потребителю ведет к затратам и составляет Сij. Нужно определить наилучший план перевозок.

Математическая модель транспортной задачи выглядит следующим образом: Хij- количество продукта, перевозимого с i-го предприятия к j- му потребителю.

1) Хij 0, i=1,2,...,m; j=1,2,...,n - перевозимые количества продуктов не могут быть отрицательными.

m

2)SXij=bj, j=1,2,...,n -каждый потребитель должен получить ровно столько, i=1

сколько ему потребуется. n

3)SXij=ai, i=1,2,...,m -с каждого предприятия продукт должен вывозиться

j=1

полностью, т.к. производится столько же, сколько и

 

и потребляется.

19

L - суммарные затраты на перевозку: m n

L=S S cij*xij i=1 j=1 L min.

Транспортная задача представляет собой задачу ЛП с (m*n) переменными и

(m+n) ограничениями-равенствами.

Матрицу переменных

Х=(хij, i=1,..., m, j=1,..., n)

называют планом перевозок, а переменные xij - перевозками. План Хорт, при котором целевая функция минимальна, называют оптимальным планом.

Матрица коэффициентов целевой функции С=(сij,i=1,...,m,j=1,...,n) называется

матрицей транспортных издержек.

Для разрешимости транспортной задачи необходимо и достаточно, чтобы

выполнялось балансовое соотношение:

 

 

 

 

m

n

 

 

 

Sаi = Sbj

 

 

 

i=1

j=1

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

 

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

выполняется, такие задачи называются открытыми. Возможны два случая:

m

n

m

n

 

1) Sai < Sbj

2) S ai > S bj

 

i=1

j=1

i=1

j=1

 

В первом случае вводят фиктивного поставщика с объемом производства

 

 

 

n

m

 

 

 

S bj - S ai ,

 

 

 

j=1

i=1,

во втором случае - фиктивного потребителя с потребностью

20

m n

Sai - Sbj, i=1 j=1

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

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

Методы нахождения начальных опорных планов рассмотрим на примере следующей транспортной задачи.

1. МЕТОД СЕВЕРО-ЗАПАДНОГО УГЛА

Заполнение таблицы начинается с левого верхнего элемента, что и обусловило название метода.

Объемы

 

 

 

Запросы потребителей

 

 

произ-ва

41

49

53

57

63

 

30

 

24

 

20

 

22

 

 

 

 

 

 

41

 

 

 

 

 

 

95

 

12

 

14

 

8

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

27

 

53

 

15

42

 

16

 

18

 

16

 

17

 

 

 

 

 

 

 

 

42

Сравним a1=63 и b1=41, выбираем меньшее из них и записываем в таблицу.

Переходим ко второму столбцу. Сравнивая a1 =63-41=22 и b2=49, выбираем меньшее из них и записываем в таблицу, и т.д.