Вы находитесь на странице: 1из 81

Тема 3.

Математическое
программирование в экономике

1
§ 3.1. Задача линейного программирования
Модель – это некоторый материальный или
абстрактный объект, находящийся в определенном
объективном соответствии с исследуемым объектом,
несущий о нем определенную информацию и способный
замещать его на определенных этапах исследования.

Математическая модель (знаковая) – это


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

2
Классификация задач

В зависимости от свойств условий и целевой функции


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

3
Структура методов принятия решений
Проблема принятия
решения

нет да
Одна цель
Одно лицо нет Определенность

да нет Принятие решения


в условиях да
неопределенности
Много- Линейность
критериальная нет
оптимизация да
Нелинейное
программирование Целочисленность
нет
Теория игр да
Линейное
программирование Целочисленное
программирование
4
Этапы формализация проблемы как задачи ЛП :
 понять проблему, составить описательную модель
задачи;
 идентифицировать основные переменные задачи;
 выбрать количественную меру эффективности цели;
 представить эту меру эффективности как линейную
функцию относительно основных переменных;
 идентифицировать и представить все ограничения как
линейные уравнения или неравенства относительно
основных переменных;
 собрать количественные данные или сделать
соответствующие оценки для всех параметров модели.

5
Математические предположения для задачи ЛП:
 определенность (детерминированность) – все
параметры модели известны точно или могут быть
оценены;
 линейность (эквивалентна пропорциональности и
аддитивности) – все функциональные соотношения
модели линейны относительно основных переменных;
 пропорциональность – эффект влияния
переменной задачи пропорционален значению этой
переменной;
 аддитивность – эффект влияния нескольких
переменных задачи равен сумме эффектов от
каждой переменной;
делимость – все основные переменные задачи могут
принимать произвольные вещественные значения в
определенном диапазоне (бесконечно делимы). 6
Пример 3.1.1.
(Построение оптимального плана производства)

Исходные Расход ресурсов на 1 Запас


ресурсы тонну готовой продукции ресурса
Шоколад Конфеты
Сахар 1 1 4
Какао 5 2 10
Прибыль 5 3

геометрич. решение

7
Переменные:
x1 – суточный объем производства шоколада,
x2 – суточный объем производства конфет.

Целевая функция:
Общая прибыль от реализации суточного плана
определяется функцией
z  5 x1  3 x2

Ограничения: содержательно ограничения на запас


ресурсов можно записать следующим образом

 Расход   Запас 
 ресурса    ресурса 
   
8
Математически ограничения имеют вид (см. таблицу):
 на расход сахара
x1  x2  4; ресурсы Расход ресурсов Запас
ресурса
 на расход какао-бобов Шоколад Конфеты
Сахар 1 1 4
5 x1  2x2  10; Какао 5 2 10

 на знак переменных Прибыль 5 3

x1  0, x2  0.

Математическая модель
max z  max(5 x1  3 x2 )
x1  x2  4;
5 x1  2 x2  10;
x1  0, x2  0.
9
Пример 3.1.2. (Формирование смеси минимальной
стоимости)
Фабрика ежедневно производит не менее 800
фунтов пищевой добавки – смеси кукурузной и соевой
муки, состав которой представлен в таблице (в фунтах
на фунт муки):
Мука Кукуруза Соевая
Белок 0,09 0,6
Клетчатка 0,02 0,06
Стоимость 0,3 0,9
Диетологи требуют, чтобы в пищевой добавке было не
менее 30 % белка и не более 5 % клетчатки. Фирма
хочет определить рецептуру смеси минимальной
стоимости.
геометр. решение
10
Переменные: Мука Кукурузная Соевая
x1 – количество кукурузной муки; Белок 0,09 0,6
x2 – количество соевой муки. Клетчатка 0,02 0,06
Стоимость
Целевая функция: 0,3 0,9

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


z  0,3 x1  0,9 x2
Ограничения:
 на количество производимой смеси
x1  x2  800
 на количество белка в пищевой добавке
0,09 x1  0,6 x2  0,3  x1  x2 
 на количество клетчатки в пищевой добавке
0,02x1  0,06 x2  0,05  x1  x2 
 на знак переменных
x1  0, x2  0.
11
Математическая модель
min z  min  0,3 x1  0,9 x2  min z  min  0,3 x1  0,9 x2 

x1  x2  800; x1  x2  800;
0,21x1  0,3 x2  0; 7 x1  10 x2  0;
0,03 x1  0,01x2  0; 3 x1  1x2  0;
x1  0, x2  0. x1  0, x2  0.

12
Пример 3.1.3. (Поиск оптимального плана производства)
Автомобильная компания производит легковые
автомобили и грузовики. Каждое транспортное средство
должно обрабатываться в покрасочном и сборочном
цехах. Если бы в покрасочном цехе обрабатывались
только грузовые автомобили, то можно было бы
покрасить 40 машин в день. Если бы обрабатывались
только легковые автомобили, то выпуск составил бы 60
единиц продукции. В сборочном цехе обрабатывается 50
транспортных средств в день. Прибыль от производства
одного легкового автомобиля и грузовика составляет
$200 и $300 соответственно. Определить оптимальный
ежедневный выпуск продукции, обеспечивающий
максимальную прибыль компании.
геометрич.решение
13
Переменные:
x1 – количество грузовиков, производимых ежедневно;
x2 – количество автомобилей, производимых ежедневно.
Ограничения:
 на время использования покрасочного цеха
1 1
x1  x2  1, где
40 60
1
– время (в днях), идущее на покраску одного грузовика;
40
1
– время (в днях), идущее на покраску одного
60 автомобиля;
 на время использования сборочного цеха
x1  x2  50
 на знак переменных
x1  0, x2  0. 14
Целевая функция:
Суммарный доход компании определяется функцией
z  300 x1  200 x2

Математическая модель
max z  max(300 x1  200 x2 )
x1 x2
  1;
40 60
x1  x2  50;
x1  0, x2  0.

15
Математически задача ЛП – задача нахождения
наибольшего (наименьшего) значения линейной функции
многих переменных при линейных ограничениях типа
равенств (неравенств), когда на переменные задачи есть
(нет) ограничений на знак.
 задача максимизации ЛП  задача минимизации ЛП
max z  max(c1x1   cn xn ) min z  min(c1x1   cn xn )
при ограничениях при ограничениях
ai 1x1   ain xn  bi , i  1, m, ai 1x1   ain xn  bi , i  1, m,
x j  0, j  1, n. x  0, j  1, n.
j

x j , j  1, n  переменные
z  c1x1   cn xn  целевая функция
x j  0, j  1, n  условие неотрицательности переменной
с j , aij , bi заданные параметры 16
 Вектор X  ( x1 , , xn ) удовлетворяющий всем
ограничениям задачи, называется допустимым
решением задачи ЛП.
 Множеством допустимых решений задачи ЛП
называется множество векторов X  ( x1 , , xn ) ,
удовлетворяющих всем ограничениям задачи.

 Вектор X  ( x1 , , xn ), доставляющий максимум


(минимум) функции z при заданных ограничениях,
называется оптимальным решением задачи ЛП.

Наибольшее (наименьшее) значение целевой функции


называется значением задачи ЛП.

Решить задачу ЛП  означает найти оптимальное реше-


ние и значение целевой функции.
17
§ 3.2. Геометрический метод решения
задачи ЛП
Пример 3.2.1. Решим графически задачу из примера 3.1.1:
max z  max(5 x1  3 x2 ),
x1  x2  4,
5 x1  2 x2  10,
x1  0, x2  0.

Геометрический метод реализуется в два этапа:


• построение допустимого множества решений задачи ЛП;
• нахождение оптимального решения задачи ЛП.

18
1 x1  x2  4  2 5 x1  2x2  10

 x1  4  x1  0  x1  2  x1  0
   
x2  x2  0  x2  4  x2  0  x2  5

 * 2
5  x1*  x2*  4  x1  3
 * 
4  1
5 x  2 x 2  10
*
 x *  10
B  2 3
grad z   5,3 

 *
z x ,x
1
*
2  2
 5 3
3
10 40
3

3

x1
O 2  2 4 1 19
Пример 3.2.2. Решим графически задачу из примера 3.1.2:
 x1*  x2*  800  x1*  470,6
 *  *
7 x1  10 x2  0  x2  329,4
*
x2
3  
z X *  0,3 x1*  0,9 x2*  437,64

grad z   0,3;0,9 
800

 2

x1
O 800
1 20
Пример 3.2.3. Решим графически задачу из примера 2.1.3:

АB  оптимальные (альтернативные) решения


x2
60 z  A   z  B   12000

50

А
grad z   30;20 

B
40

50
x1 21
Теорема 2.4.1. (об оптимальных экстремальных точках).
Если в задаче ЛП существует оптимальное решение, то
существует и оптимальная экстремальная (угловая) точка.

Алгоритм графического метода для задач ЛП  n  2:


 записать каждое ограничение как равенство и
нарисовать прямую;
 найти для каждого ограничения допустимую область
и множество допустимых решений задачи ЛП;
 найти градиент целевой функции
grad z  x1, x2    z x1 , z x2  ;
нарисовать линию уровня целевой функции
z  x1, x2   const;
сдвигать линию уровня в направлении градиента, до
последней точки пересечения с множеством доп.
решений. 22
При решении задачи ЛП возможны случаи:

1. Задача ЛП имеет единственное решение (см.


примеры 2.4.1 и 2.4.2).
2. Задача ЛП имеет бесконечное множество решений
(пример 2.4.3) (альтернативные решения).
3. Задача ЛП не имеет оптимального решения вследствие:
a. неограниченности множества допустимых решений
b. пустоты множества.

23
Анализ на чувствительность
Первая задача на чувствительность:

ограничения
активные неактивные
(связывающие) (несвязывающие)

дефицитные недефицитные
ресурсы ресурсы
Цели:
найти максимальное увеличение запаса дефицитного
ресурса;
найти максимальное уменьшение запаса неде-
фицитного ресурса.
24
Ресурс 1
L   0,5 
b1  4, b1  5  0  5, b1  5  4  1
x2
z  L   5  3  15
5 L 40 5
1z  15  
3 3
4

x1
2
 2 4 1 25
Ресурс 2
K   4,0 
b2  10, b2  5  4  20, b2  20  10  10
x2
z  K   5  4  20
40 20
 2z  20  
3 3
4

K x1
4
2 26
Результаты решения первой задачи анализа на
чувствительность оформляются в виде таблицы:

Ресурс Тип (статус) Максимальное Максимальное


ресурса изменение изменение
запаса дохода
Ресурс 1 дефицитный 1 5/3
Ресурс 2 дефицитный 10 20/3

Вторая задача на чувствительность:


Максимальное увеличение дохода
yi 
Максимальное увеличение запаса i -го ресурса
 теневая (двойственная) цена ресурса
15- 40 3 5 20- 40 3 2
y1   y2  
1 3 10 3 27
max z  5 x1  3 x2
x1  x2  4,
Третья задача на чувствительность: 5 x1  2 x2  10,
grad z   5, c2 
x1  0, x2  0.
grad z   5,3 
x2
целевая
grad z   c1,3 
функция
z  c1x1  c2 x2
a11x1  a12 x2  b1
a21x1  a22 x2  b2
B Диапазон оптимальности
a11 c1 a21 1 активные
c1 5
  ограничения

a12 c2 a22 1 c2 2
1 5 5
если c1  5,   , 2  c2  5
1 c2 2
если c2  3, 1  c1  5 , 3  c1  15
x 1 3 2 2
1
28
Кейс №1 (Торговля валютой)
Арбитраж – получение прибыли в результате
обменных операции.

Таблица текущих обменных операций:

1 2 3 4 5
1  0,639 5,3712 1,5712 98,89
2 1,5648  8,4304 2,459 154,77
3 0,1856 0,1186  0,2921 18,412
4 0,6361 0,4063 3,4233  62,94
5 0,0101 0,0645 0,05431 0,0158 

29
Математическая модель
Пусть начальный валютный портфель содержит по
одной единице каждого вида валют.
aij  количество валюты j, которое дают за единицу
валюты i, aii  1.
Таблица (матрица) текущих Переменные:
обменных курсов: xij  количество валюты i,
 a11 a12 a1n  которое меняется на
a a a  валюту j.
A   21 22 2n 

   x11 x12 x1n 


  x x x 
 n1 n 2
a a a nn 
X   21 22 2n 

 
 
Обменная  n1
x x n2 x nn 

операция 30
Цель: целью обменной операции является
максимизация прибыли.
Количественная мера прибыли выраженная в
единицах валюты 1 (можно любую другую валюту).
Целевая функция:
Прибыль = Доход – Затраты
 X   R X  C X 
CX стоимость портфеля, выраженная в единицах
валюты 1,
C  X   a11  a21   an1  const.
R  X   доход от валютной операции,
R  X   a11x11  a21x21   an1xn1 
  a12 x12  a22 x22   an 2 xn 2  a21 
  a1n x1n  a2n x2n   ann xnn  an1. 31
Ограничения:

x11  x12   x1n  1


x21  x22   x2 n  1

x n1  x n 2   xnn  1
0  xij  1

Пусть X * оптимальное решение,


если   X   0  арбитраж есть,
*

если   X *   0  арбитража нет.

32
§ 3.3. Симплекс-метод решения задачи ЛП.
Стандартная задача максимизации
B   b1, b2 , , bm 
T

max z  max(c1x1   cn xn ),
C   c1, c2 , , cn 
ai 1x1   ain xn  bi , i  1, m,
X   x1, x2 , , xn 
T

x j  0, j  1, n.
Матричная и векторная форма записи Amn  aij 
Ai   ai 1, ai 2 , ain 
max z  max CX max z  max CX ,
AX  B Ai X  bi , i  1, m,
X 0 X  0.
33
Стандартная задача минимизации

min z  min(c1x1   cn xn ),
ai 1x1   ain xn  bi , i  1, m,
x j  0, j  1, n.

Матричная и векторная форма записи


min z  min CX min z  min CX
AX  B Ai X  bi , i  1, m
X 0
X  0.
34
Каноническая задача максимизации (минимизации)

max(min)z  max(min)(c1x1   cn xn ),
ai 1x1   ain xn  bi , i  1, m,
x j  0, j  1, n.

Матричная и векторная форма записи

max(min)z  max(min)CX max(min)z  max(min)CX


AX  B Ai X  bi
X 0 X 0

35
Эквивалентные преобразования.

• Нахождение максимума линейной функции


эквивалентно нахождению минимума этой функции,
взятой с противоположным знаком, и наоборот:
min z   max( z ),
max z   min( z ).
• Если на переменную не накладывается условие
неотрицательности, то ее можно заменить разностью
двух неотрицательных переменных:
x j  x j  x j ,
x j  0, x j  0.
36
• Если имеется n таких переменных , то их можно
заменить n+1 неотрицательной переменной:

x j  x j  x0 ,
x j  0, j  1, n, x0  0.

• Ограничение типа неравенства можно представить


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

ai 1x1   ain xn  bi  ai 1x1  ain xn  si  bi , si  0, i  1, m,

ai 1x1   ain xn  bi  ai 1x1  ain xn  si  bi , si  0, i  1, m


37
• Ограничение типа равенства можно заменить
двумя неравенствами:

ai 1x1   ain xn  bi ,


ai 1x1   ain xn  bi  
ai 1x1   ain xn  bi .

• Если имеется m равенств, то их можно заменить


m+1 неравенством:

ai 1x1   ain xn  bi , i  1, m,



ai 1x1   ain xn  bi , i  1, m   m
 (ai 1x1   ain xn  bi )  0.
 i 1
Знак неравенства можно заменить на противоположный,
умножив данное неравенство на (-1)! 38
Пример 3.2.1. Представить задачу ЛП в стан-
дартной и канонической формах максимизации:
каноническая задача максимизации:
 
min z  min(2 x1  3 x2 ), x1  x1  x1
 
x1  x2  10, x1 , x1  0

2 x1  3 x2  5, max( z )  max( 2 x1  2 x1  3 x2 ),


7 x 14 x2  6, x1  x1  x2  10,
x2  0. 2 x1  2 x1  3 x2  s1  5,
7 x1  7 x1  4 x2  s2  6.
x1  0, x1  0, x2  0, s1  0, s2  0

39
min z  min(2 x1  3 x2 ),
стандартная задача
x1  x2  10,
максимизации:
2 x1  3 x2  5,
x1  x1  x1
7 x 14 x2  6,
x2  0. x1 , x1  0
max( z )  max( 2 x1  2 x1  3 x2 ),
x1  x1  x2  10,
 x1  x1  x2  10,
2 x1  2 x1  3 x2  5,
7 x1  7 x1  4 x2  6,
x1  0, x1  0, x2  0.

40
Базисное решение системы линейных
уравнений
max z  max CX
AX  B, X  0.

Пусть СЛУ AX =B совместна, т. е. выполнено условие:


rang ( A)  rang ( A, B )

a11x1   a1 j x j   a1n xn  b1,



a11x1   a2 j x j   a2n xn  b2 ,


a x   a x   a x  b .
 m1 1 mj j mn n m

41
Базисным решением СЛУ, зависящим от
множества индексов S  1, , m , будем называть
решение СЛУ, которое находится по указанным ниже
правилам.
• привести данную систему, используя метод Гаусса, к
диагональной форме по переменным:
x1, , xm - базисные переменные
 x1  a1m 1xm 1   a1n xn  b1,



 xm  a mm 1xm 1   a mn xn  b m .

• взяв небазисные переменные, x j  0, j  m  1, n


получим x j  b j , j  1, m.

42
Утверждение 3.4.1.
Если у системы линейных уравнений существует
решение, то существует и базисное решение этой
системы ЛУ.

Утверждение 3.4.2.
Если задача ЛП имеет допустимое решение, то
она имеет и допустимое базисное решение.

Утверждение 3.4.3.
Если задача ЛП имеет оптимальное решение, то
она имеет и оптимальное базисное решение.
43
Пример 3.3.2. (неформальное решение ЗЛП
симплекс-методом)

Рассмотрим задачу ЛП :
max z  max(5 x1  3 x2 ),
x1  x2  4,  x1  x2  s1  4,

5 x1  2 x2  10,  5 x1  2 x2  s2  10,
 x , x , s , s  0.
x1  0, x2  0.  1 2 1 2
Преобразуем целевую функцию к виду:

z  5x1  3x2  0 z-уравнение

44
базисные переменные
x1 x2 s1 s2
s1  4, s2  10
 5 3 0 0 0 
  небазисные переменные
 1 1 1 0 4 
 5 2 0 1 10  x1  0, x2  0
 
z0

x1 x2 s1 s2 базисные перем енные


 0 1 0 1 10  x1  2, s1  2
  небазисные переменные
 0 3 5 1  1 5 2 
1 2 5 0 1 5 2  x2  0, s2  0
 
z  10
x1 x2 s1 s2 базисные переменные
0 0 5 3 2 3 40 3  x1  2 3 x2  10 3
  небазисные переменные
 0 1 5 3  1 3 10 3 
1 0 2 3 1 3 2 3  s1  0, s2  0
 
z  40 3 45
Геометрическая интерпретация расчетов
по симплекс-методу:

max z  max(5 x1  3 x2 ),
x2
x1  x2  4,
4 C 5 x1  2 x2  10,
x1  0, x2  0.

B
grad z   5,3 

 A x1
O 2
46
Перейдем к описанию формального алгоритма
симплекс-метода для канонической задачи
максимизации:

max z  max (c1x1   c n xn ),


a i 1x1   a in xn  b i , i  1, m,
x j  0, j  1, n.
Выполним ряд вспомогательных построений. По задаче
ЛП запишем СЛУ, рассматривая целевую функцию как
одно из ограничений (z-уравнение):

z  c1x1   cn xn  0,

ai 1x1   ain xn  bi , i  1, m.
47

z  c1x1   cn xn  0,

ai 1x1   ain xn  bi , i  1, m.

Приведем данную систему к диагональной форме
по переменным: x1, , xm

z  cm1xm1   cn xn  z 0 ,

 x1  a1 m1xm1   a1 n xn  b1,

 x2  a2 m1xm1   a2 n xn  b2 ,


 xm  am m1xm1   am n xn  bm .

48
Симплексная таблица представляет собой таблицу
коэффициентов диагональной формы СЛУ, построенной
для канонической задачи максимизации.

z x1 xr xm xm 1 xs xn
z z0 0 0 0 cm 1 cs cn
x1 b1 1 0 0 a1 m 1 a1s a1 n

xr br 0 1 0 ar m 1 ar s ar n

xm b 0 0 1 am m 1 am s am n
m

49
Классификация симплексных таблиц:
 симплексная таблица называется прямо-допустимой,
если
bi  0, i  1, m ,
симплексная таблица называется двойств.-допусти-
мой, если
c j  0, j  1, n ,
симплексная таблица называется оптимальной, если
она одновременно и прямо-допустимая, и двойственно-
допустимая. Оптимальная СТ соответствует
оптимальному базисному решению.
50
Алгоритм прямого симплекс-метода
(максимизация)
0. Начать вычисления с прямо-допустимой СТ.
ИТЕРАЦИЯ
1. Проверка оптимальности или нахождение
ведущего столбца СТ.

• Если c j  0, j  1, n , то текущее базисное


решение является оптимальным.
• В противном случае в базис вводим переменную xs ,
номер которой находится по правилу:
cs  min c j
c j 0
Столбец s называется ведущим столбцом СТ.
51
2. Проверка условия неограниченности задачи ЛП или
нахождение ведущей строки СТ.
• Если в ведущем столбце все коэффициенты
ais  0, i  1, m,
то решение задачи неограниченно.
• В противном случае следует выводить из базиса
переменную, для которой:
br bi
 min
ars ais 0 ais
Строка под номером r называется ведущей строкой СТ,
ars  0  ведущим элементом СТ,

3. Преобразование СТ.
52
ведущий столбец

z x1 xr xm xm 1 xs xn
z z0 0 0 0 cm 1 cs cn
x1 b1 1 0 0 a1 m 1 a1s a1 n

ведущая строка
xr br 0 1 0 ar m 1 ar s ar n

xm b 0 0 1 am m 1 am s am n
m

алгоритм 53
Пример 3.3.3. Решим задачу из примера 3.3.2 с
помощью СТ:
max z  max(5 x1  3 x2 ),
x1  x2  4,
5 x1  2 x2  10,
x1  0, x2  0.
Составим диагональную форму для СЛУ

z  5 x1  3 x2  0,

 x1  x2  s1  4,
 
 5 x1  2 x2  s2  10,
 x1, x2, s1, s2  0.
54
Итерация 1. Итерация 2.

z x1 x2 s1 s2 z x1 x2 s1 s2

z 0 -5 -3 0 0 z 10 0 -1 0 1
s1 4 1 1 1 0 s1 2 0 3/5 1 -1/5
s2 10 5 2 0 1 x1 2 1 2/5 0 1/5
Итерация 3. Оптимальное решение
z x1 x2 s1 s2
x1  2 / 3,
z 40/3 0 0 5/3 2/3
x2  10 / 3,
x2 10/3 0 1 5/3 -1/3
x1 2/3 1 0 -2/3 1/3 z  40 / 3.
55
§ 3.4. Транспортная задача (ТЗ)
Содержательная постановка:
A1, A2, , Am  пункты производства
a1, a2, , am  производительность
B1, B2, , Bn  пункты потребления
b1, b2, , bn  спрос
ci j  0  удельные транспортные затраты

Транспортная задача заключается в опре-


делении плана перевозок, при котором удовлетворен
спрос каждого потребителя, вывезен весь объем
продукции из каждого пункта производства и при этом
суммарные транспортные затраты минимальны.
Способы задания ТЗ

• аналитический
C   cij , cij  0, • табличный
a   a1, a2, , am , ai  0, i  1, m
b   b1, b2, , bn  , bj  0, j  1, n
b1 b2 bn
, a1 c11 c12 c1n
• сетевой a2 c21 c22 c2 n

am c m1 c m 2 cmn
Пример 4.3.1.
7 8 5 3 a  11, 11, 8 
 
C  2 4 5 9
 6 3 1 2 b   5, 9, 9, 7 
 
7 7
B1 b1  5
a1  11 A1 88
B2 b2  9
a2  11 A2
B3 b3  9
a3  8 A3
2 B4 b4  7
пункты пункты
производства потребления
Напишем математическую модель задачи:
Переменные: x ij  объем перевозок из Ai в Bj
 x11 x12 x13 x14 
   план перевозок 7 8 5 3
X   x21 x22 x23 x24   
x C  2 4 5 9
 31 x32 x33 x34   6 3 1 2
 
Целевая функция:
min z  7x11  8x12  5x13  3x14  2x21  4x22  5x23  9x24  6x31  3x32  x33  2x34
Ограничения:
x11  x12  x13  x14  11, x11  x21  x31  5,
x21  x22  x23  x24  11, x12  x22  x32  9,
x31  x32  x33  x34  8, x13  x23  x33  9,
xij  0, xij  целые, x14  x24  x34  7,
двойственная задача
Математическая модель транспортной задачи
m n
min z  min  cij xij
min z  min(c11x11  c12 x12  cmn xmn ) n i 1 j 1

xi 1  xi 2   xin  ai , i  1, m, x
j 1
ij  ai , i  1, m,
m
x1 j  x2 j   xmj  bj , j  1, n, x ij  b j , j  1, n,
i 1
xij  0, xij  целые.
xij  0, xij  целые.

Теорема 3.4.1. (О разрешимости ТЗ)


Для существования оптимального решения ТЗ,
необходимо и достаточно, чтобы выполнялось условие
баланса: m n

 ai   bj .
i 1 j 1
m n
Закрытая ТЗ: a  b
i 1
i
j 1
j  условие баланса
m n

Открытая ТЗ: 1) a  b
i 1
i
j 1
j  перепроизводство

Bn 1  фиктивный пункт потребления


m n
bn 1   ai  b j  спрос ci , n 1  ri  штраф
i 1 j 1

bj
ai 5 9 4 7 5
7 8 5 3 r1
11
2 4 5 9 r2
11
6 3 1 2 r3
8
m n
Открытая ТЗ: 2) a  b - дефицит
i j
i 1 j 1

Am1  фиктивный пункт производства

cm1, j  r j
n m
am1   b j   ai  производительность
j 1 i 1

bj
ai 5 9 9 7
7 8 5 3
11
2 4 5 9
6
6 3 1 2
8
r1 r2 r3 r4
5
Методы нахождения начального
опорного плана ТЗ.
Опорным планом X транспортной задачи
будем называть допустимое базисное решение ТЗ.
 Метод северо-западного угла 1
5
bj 1 6
ai 5 9 9 7 2
3
7 8 5 3 2
11 5 6 0 0 8
1 3
2 4 5 9 3 7
11 0 3 8 0 4
6 3 1 2
8 0 0 1 7
5 6 0 0  
z X0  57  68  3 4 
X 0   0 3 8 0  8  5  1 1  7  2  150
0 0 1 7
 
 Метод минимального элемента
bj 1
5 9 9 7 1
ai
8 5 3 2
7 2
11 0 3 1 7
3
2 4 5 9
11 5 6 0 0 3
4
6 3 1 2
8 0 0 8 0

0 3 1 7
X 0   5 6 0 0 
0 0 8 0
 

 
z X 0  3  8  1 5  3  7  2  5  6  4  8  1  92
 Метод Фогеля

bj штрафы строк
ai 5 9 9 7
7 8 5 3 2 2 2 3
11 0 3 1 7
2 4 5 9 2 1 1 1
11 5 6 0 0
6 3 1 2 1 1
8 0 0 8 0
штрафы 0 3 1 7
X 0   5 6 0 0 
столбцов 4 1 4 1
0 0 8 0
1 4 1  

4 0 6
 
z X 0  92
4 0
Проверка плана ТЗ на опорность
(метод вычеркиваний):
• вычеркнуть все строки в матрице Х, содержащие не
более одного положительного элемента;
• в получившейся матрице вычеркнуть все столбцы,
содержащие не более одного положительного элемента;
• далее процесс вычеркивания строк и столбцов применя-
ется к оставшейся подматрице.
Процесс заканчивается одним из двух исходов:
1. Все строки (столбцы) вычеркнуты. Тогда Х  опорный.

2. Получена подматрица, в каждой строке (столбце)


которой не менее 2 положительных элементов. Х  не
опорный. Из оставшихся элементов можно построить
цикл.
Пример 3.4.3.

a  15,35,15,30 
b  15,20,25,15,20 
 5 0 0 0 10 
 10 20 5 0 0 
X1   
неопорный план
 0 0 15 0 0 
 
 0 0 5 15 10 

 15 0 0 0 0 
 0 20 15 0 0 
X2    опорный план
 0 0 10 5 0 
 
 0 0 0 10 20 
§ 3.5. Постановка задачи нелинейного
программирования.
Задачей нелинейного программирования
(задачей НП) называется задача нахождения
максимума (минимума) нелинейной функции многих
переменных, когда на переменные имеются (не
имеются) ограничения типа равенств или неравенств.
Стандартная форма В векторном виде:
max f ( x1, x2 , , xn )
X  ( x1, , xn )  R n ,
g1( x1, x2 , , xn )  0
g (x , x , , x )  0 max f ( X )
2 1 2 n

gi ( X )  0, i  1, m.
g m ( x1, x2 , , xn )  0
68
Множество M  { X X  R n
, g i ( X )  0, i  1, m}
будем называть множеством допустимых решений
ЗНП. max f ( X )
X M

Допустимое решение X   M называется


оптимальным решением задачи НП, если
max f ( X )  f ( X  ),
X M

т.е. f ( X  ) наибольшее значение функции f на


множестве М.

Число f ( X ) называется значением задачи НП.

Будем полагать, что функции f : R n  R1,

gi : R n  R1 , i  1, m дифференцируемы, т.е. существуют


все частные производные f x j .
69
Выпуклые множества. Выпуклые и
вогнутые функции
Множество M  R
n
называется
выпуклым, если для любых точек X , X   M
и любого   0,1 выполнено условие
 X   1    X   M
Функция f ( X ) называется выпуклой,
если для любых точек X , X   M и любого   0,1
выполняется неравенство
f   X   1    X    f  X    1    f  X  
Функция f ( X ) называется вогнутой,
если для любых точек X , X   M и любого   0,1
выполняется неравенство
f   X   1    X    f  X    1    f  X  
70
Безусловный экстремум

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


ограничений на переменные, то такая задача
называется задачей безусловной оптимизации и
имеет вид
безусловная
max f ( x1, x2 , , xn ) или maxn f ( X ) максимизация
( x1,x2 , ,xn )R n
X R

min f ( x1, x2 , , xn ) или minn f ( X ) безусловная


( x1,x2 , ,xn )R n
X R
минимизация
Теорема 3.5.1.(Необходимые условия
оптимальности)

Если X оптимальное решение задачи без ограничений,
то f ( X  ) (условие стационарной
 0, i  1, n.
xi точки) 71
Замечание 3.5.1. (Достаточность условий
оптимальности)
Для того чтобы стационарная точка X *  ( x1* , , xn* )
являлась оптимальным решением задачи безусловной
максимизации, достаточно, чтобы функция f ( x1, x2 , , xn )
была вогнутой. X

Для того чтобы стационарная точка X *  ( x1* , , xn* )


являлась оптимальным решением задачи безусловной
минимизации, достаточно, чтобы функция f ( x1, x2 , , xn )
была выпуклой.

X

72
Пример 3.5.1. Написать необходимое условие
оптимальности и найти стационарные точки:
f  x1, x2 , x3   x12  2x22  3 x32  2x1x2  2x1x3
Условие стационарной точки: Достаточное условие:
f  x 
  2 x1  2 x2  2 x3  0, Матрица Гессе
 x1  2 2 2 
 f  x   2 4 0 
  4 x2  2 x1  0,  
 x2  2 0 6 
 
 f  x 
  6 x3  2 x1  0. является положительно
 x3 определенной, f  x1, x2 , x3 
 выпуклая функция,
 x1  0,
 
 x2  0, X *  (0,0,0)  точка минимума
 
 x3  0.
73
Условный экстремум
Пусть требуется найти
max f ( x1, x2 , , xn ) min f ( x1, x2, , xn ) 
при ограничениях
gi ( x1, x2 , , xn )  0, i  1, m.
Такая задача называется задачей условной
максимизации (минимизации).
Метод множителей Лагранжа
m
L( x1, x2 , , xn ; 1, , m )  f ( x1, x2 , , xn )   i g i ( x1, x2 , , xn ).
i 1
 функция Лагранжа
  (1, , m )  вектор множителей Лагранжа
max L( X ; )  задача безусловной оптимизации
74
Теорема 3.5.2. (Лагранжа).
Если X  ( x1 , , xn ) – оптимальное решение
* * *

задачи условной оптимизации, то должны найтись


множители Лагранжа , которые удовлетворяют
соотношениям
 L f ( X  ) m * g i ( X  )
 x  x   i x  0, j  1, n;
 j j i 1 j

 L  g ( X  )  0, i  1, m.
 i i условия Лагранжа

Замечание 3.5.2.
В теореме 3.5.2 векторы-градиенты функций gi ( X ) , i  1, m
должны быть линейно независимы в точке X* , т. е. удовлет-
ворять условиям регулярности.

75
Замечание 3.5.3.(Достаточность условий
оптимальности).

Для того чтобы точка X * являлась оптимальным


решением задачи условной максимизации, достаточ-
но, чтобы функция f ( x ) была вогнутой, а все g i ( x )
 линейными.

Для того чтобы точка X * являлась оптимальным


решением задачи условной минимизации, достаточ-
но, чтобы функция f ( x ) была выпуклой, а все g i ( x )
 линейными.

76
Пример 3.5.2. Написать необходимые условия
оптимальности для задачи:
min f  x1, x2 , x3   min  x12  2 x22  3 x32  2 x1x2  2 x1x3 
x1  x2  x3  1 g1  X   x1  x2  x3  1  0,
x1  x2  2. g 2  X   x1  x2  2  0.
Функция Лагранжа:
L  x1, x2 , x3 , 1, 2   f  x1, x2 , x3   1g1  x1, x2 , x3   2g 2  x1, x2 , x3  
 x12  2 x22  3 x32  2 x1x2  2 x1x3  1  x1  x2  x3  1  2  x1  x2  2  .

Условия Лагранжа:
L
 2 x1  2 x2  2 x3  1  2  0,
x1 L
 x1  x2  x3  1  0,
L 1
 4 x2  2 x1  1  2  0,
x2 L
 x1  x2  2  0.
L 2
 6 x3  2 x1  1  0,
x3 77
Условия Куна – Таккера для задачи НП.

Задача нелинейного программирования вида


max f ( x1, x2 , , xn )
gi ( x1, x2 , , xn )  0, i  1, m.
называется стандартной ЗНП максимизации.

Задача нелинейного программирования вида


min f ( x1, x2 , , xn )
gi ( x1, x2 , , xn )  0, i  1, m.
называется стандартной ЗНП минимизации.

78
Теорема 3.5.3. (Куна – Таккера).
*
Если X – оптимальное решение стандартной
задачи максимизации нелинейного программирования,
то должны найтись такие множители Лагранжа,
которые удовлетворяют следующим соотношениям:
а) условия допустимости:
1*  0, 2*  0, , m*  0; gi ( X * )  0, i  1, m;
б) условия оптимальности:
L f ( X  ) m  g i ( X  )
   i  0, j  1, n;
x j x j i 1 x j
условия
Куна-Таккера
в) условия трансверсальности:

i gi ( X  )  0, i  1, m.
79
Замечание 3.5.4.(Достаточность условий
оптимальности).
*
Для того чтобы точка X являлась оптималь-
ным решением стандартной ЗНП максимизации, доста-
точно, чтобы функции f ( x ) и g i ( x ) были вогнутыми.

*
Для того чтобы точка X являлась оптималь-
ным решением стандартной ЗНП минимизации, доста-
точно, чтобы функции f ( x ) и g i ( x ) были выпуклыми.

80
Пример 3.5.3.
max( 4 x12  4 x22  20 x1  4 x2  26)
при условиях  x  2 x  2,
1 2

x1, x2  0.
Решение. L  x1, x2 ; 1, 2   ( 4 x12  4 x22  20 x1  4 x2  26) 
1   x1  2 x2  2   2 x1  3 x2 .
c ) 1   x1  2 x2  2   0,
a ) 1  0, 2  0, 3  0,
 x1  2 x2  2, x1, x2  0, 2 x1  0,
L 3 x2  0.
b)  8 x1  20  1  2  0,
x1 Оптимальное решение:
L x1  2, x2  0
* *
 8 x2  4  21  3  0,
x2
81

Вам также может понравиться