Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Методы принятия решений. Лабораторный практикум
.pdf
1212111
bxaxa
1212111
bxaxa
iii
bxaxa
2211
iiii
bxaxaxa
332211
x1
x2
11 1 12 2 1
a x a x b
(0,
1 12
/ba
)
(
1 11
/ba
, 0)
Рис. 2.1. Построение области определения
Если же b = 0, то на прямой лежит точка (0,0). Чтобы найти другую точку,
можно взять любое отличное от нуля значение x1 и вычислить соответствующее
ему значение x2.
Эта построенная прямая разбивает всю плоскость на две полуплоскости.
В одной её части
, а в другой, наоборот,
Узнать, в какой полуплоскости какой знак имеет место, проще всего, посмотрев, какому неравенству удовлетворяет какая-то точка плоскости, например,
начало координат, т.е. точка (0, 0).
Каждое неравенство системы уравнений геометрически определяет полу-
плоскость с граничной прямой
, i = 1, m. Условия неотрицатель-
ности определяют полуплоскости соответственно с граничными прямыми
x1 = 0; х2 = 0. Система совместна (имеет хотя бы одно решение), поэтому полуплоскости, как выпуклые множества, пересекаясь, образуют общую часть, которая является выпуклым множеством и представляет собой совокупность то-
чек, координаты каждой из которых составляют решение данной системы. Со-
вокупность этих точек называют многоугольником решений. Это может быть
точка, отрезок, луч, замкнутый многоугольник, неограниченная многоугольная
область.
Если в системе ограничений n = 3, то каждое неравенство геометрически
представляет полупространство трехмерного пространства, граничная плоскость которого
, а условия неотрицательности – полупро-
.
странства с граничными плоскостями соответственно xi = 0 (i = 1, 2, 3). Если
41

система ограничений совместна, то эти полупространства, как выпуклые мно-
ininii
bxaxaxa ...
2211
жества, пересекаясь, образуют в трехмерном пространстве общую часть, кото-
рая называется многогранником решений.
Пусть в системе ограничений n > 3, тогда каждое неравенство определяет
полупространство n-мерного пространства с граничной гиперплоскостью
, i = 1, m, а условия неотрицательности – полупро-
странства с граничными гиперплоскостями xj = 0, j = 1, n.
Если система ограничений совместна, то по аналогии с трехмерным про-
странством она образует общую часть n-мерного пространства, называемую
многогранником решений, так как координаты каждой его точки являются ре-
шением.
Таким образом, геометрически задача линейного программирования
представляет собой отыскание такой точки многогранника решений, координаты которой доставляют линейной функции максимальное значение, причем до-
пустимыми решениями служат все точки многогранника решений.
Этапы решения графического метода задач
линейного программирования
Пусть задача линейного программирования задана в двумерном про-
странстве, т. е. ограничения содержат две переменные, т.е. она может быть ре-
шена графически. Графический метод решения ЗЛП состоит из следующих
этапов.
Этап 1
Сначала на координатной плоскости x1Ox2 строится допустимая много-
угольная область (область допустимых решений, область определения), соот-
ветствующая ограничениям.
При этом могут быть получены следующие области:
1. Основной случай – получающаяся область имеет вид ограниченного
выпуклого многоугольника (рис. 2.2, а).
2. Неосновной случай – получается неограниченный выпуклый много-
угольник, имеющий вид, подобный изображенному на рис. 2.2, б.
3. Возможен случай, когда неравенства противоречат друг другу и допу-
стимая область вообще пуста.
42

ON
Lxcxc
2211
0
2211
xcxc
ON
ON
x1
x2
O
x1
x2
O
а
б
Этап 2
Рис. 2.2. Области определения решения:
а – основной случай, б – неосновной случай
Строится вектор
, показывающий направление целевой функции. Этот
вектор показывает направление наискорейшего изменения целевой функции.
Прямая
, перпендикулярная вектору–градиенту, является линией
уровня целевой функции. В любой точке линии уровня целевая функция при-
нимает одно и то же значение.
Приравняем целевую функцию постоянной величине “a”. Меняя значение
“a”, получим семейство параллельных прямых, каждая из которых является линией уровня.
Важное свойство линии уровня линейной функции состоит в том, что при
параллельном смещении линии в одну сторону уровень только возрастает, а
при смещении в другую сторону – убывает.
Этап 3
При поиске максимума ЦФ необходимо передвигать целевую прямую
в направлении вектора
направления вектора
. Последняя по ходу движения вершина ОДР будет
, при поиске минимума ЦФ – против
точкой максимума или минимума ЦФ.
Вычисляют координаты точки и значение целевой функции в этой точке.
Для нахождения ее координат достаточно решить два уравнения прямых, полу-
чаемых из соответствующих ограничений и дающих в пересечении точку максимума.
Если такой точки (точек) не существует, то можно сделать вывод о не-
ограниченности ЦФ на множестве планов сверху (при поиске максимума) или
снизу (при поиске минимум).
43

собом.
.0,0
,3
,12
,1
max2
21
21
21
21
21
xx
xx
xx
xx
xx
Lxx 212
1221 xx
)2,1(ON
)2,1(ON
x1
x2
121 xx
1
-1
x1
x2
1221 xx
1
-0,5
x1
x2
321 xx
3
3
x1
x2
x1
x2
L1
L2 >L1
L3 >L2
c1,c2
O
N
x2
x1
x2
O
L=5
Пример. Решить задачу линейного программирования графическим спо-
Вернемся к целевой функции:
L = 1 (абсолютно произвольно выбранное число), тогда
. Допустим, значение функции
. Данное
уравнение является уравнением прямой на плоскости. Известно, что данная
прямая перпендикулярна вектору, координатами которого являются коэффици-
енты функции, а именно вектору
.
Следовательно, с геометрической точки зрения, исходная функция L
изображается как множество прямых, перпендикулярных вектору
.
Рис. 2.3. Допустимая область решения
44

Построим вектор
)2,1(ON
ON
ON
121 xx
321 xx
5221 xx
.0,0
,6
,82
,42
,2
max;3
21
1
21
21
21
21
xx
x
xx
xx
xx
xx
.50
,60
,82
,1234
max;52
2
1
21
21
21
x
x
xx
xx
xx
.0,0
,02
,010
,05
,030310
max;3
21
21
21
21
21
21
xx
xx
xx
xx
xx
xx
, который изображен на рис. 2.3. Видно, что
значение функции будет возрастать при перемещении прямой в направлении
вектора
. Будем перемещать прямую, перпендикулярную вектору
, до
тех пор, пока она полностью не пройдет область допустимых решений. В
нашем случае касание прямой перед выходом из области допустимых решений
произойдет в точке пересечении прямых
и
. В данной
точке значение функции будет наибольшим.
Решая совместно эти два уравнения, получим координаты этой точки
x1 = 1; x2 = 2. При этом значение целевой функции
, что и дает ее
максимальное значение.
Следует обратить внимание на то, что оптимальный план, как прави-
ло, соответствует какой-то вершине многоугольника, изображающего допустимую область. Но может случиться так, что решение не будет единствен-
ным. Но и в этом случае вершины, соответствующие границам этой ст ороны, дают оптимальные планы нашей задачи линейного программирования.
Таким образом, вершины допустимой области играют в решении задач ли-
нейного программирования особую роль. Если допустимая область не ограничена, то и значение целевой функции может быть неограниченным.
Подводя итог, можно сформулировать следующие положения:
1. Допустимая область – это выпуклый многоугольник.
2. Оптимум достигается в вершине допустимой области (если допу-
стимая область ограничена и не пуста).
3. Ограниченность целевой функции в допустимой области является
необходимым и достаточным условием разрешимости задачи.
1.3. Задания
Решить задачу линейного программирования в соответствии с вариантом:
1)
2)
3)
45

4)
.0
,1
,33
,023
,842
max;
2
1
21
21
21
21
x
x
xx
xx
xx
xx
.0,0
,04
,01
,022
,03
max;4
21
2
21
21
21
21
xx
x
xx
xx
xx
xx
.0,0
,0
,323
,33
,62
min;2
21
21
21
21
21
21
xx
xx
xx
xx
xx
xx
.0
,40
,22
,02
,36
,84
min;42
2
1
21
21
21
21
21
x
x
xx
xx
xx
xx
xx
.0,0
,0
,123
,63
,42
min;3
21
21
21
21
21
21
xx
xx
xx
xx
xx
xx
.0
,20
,822
,42
,22
,62
min;2
2
1
21
21
21
21
21
x
x
xx
xx
xx
xx
xx
.0
,60
,52
,3
,102
,02
max3
2
1
21
21
21
21
21
x
x
xx
xx
xx
xx
xx
5)
6)
7)
1.4. Ход работы
Решение задачи графическим способом (порядок решения приведен вы-
ше).
Решение задачи с помощью надстройки Поиск решения в Microsoft Excel.
Ввод условия задачи состоит из следующих основных шагов:
1. Создание формы для ввода условий задачи.
2. Ввод исходных данных.
3. Ввод зависимостей из математической модели.
4. Поиск решения.
Последовательность шагов рассмотрим на примере следующей задачи:
8)
9)
1. Сделаем форму для ввода условий задачи (рис. 2.4).
2. Введем исходные данные в форму (рис. 2.5).
3. Введем зависимости из математической модели (рис. 2.6).
46

Рис. 2.4. Внешний вид формы для ввода условий задачи
Рис. 2.5. Внешний вид формы с данными задачи
47

а)
б)
Рис. 2.6. Внешний вид формы:
а – с зависимостями задачи, б – с целевой функцией
4. Поиск решения осуществим с помощью надстройки Поиск реше-
ния: Данные Анализ Поиск решения.
5. На экране: диалоговое окно Поиск решения (рис. 2.7).
48

Рис. 2.7. Внешний вид диалогового окна «Поиск решения»
6. В поле «Установить целевую ячейку» введем адрес ячейки, где
находится формула целевой функции.
7. Установим флажок в поле «Равной максимальному значению».
8. В поле «Изменяя ячейки» введем адрес ячеек, которые мы зарезер-
вировали под значения переменных.
9. В поле «Ограничения» добавим адреса ячеек левых и правых частей
ограничений (рис. 2.8).
а)
49

б)
Рис. 2.8. Внешний вид диалогового окна:
а – «Добавление ограничений», б – со всеми ограничениями
10. Введем дополнительные условия решения данной задачи оптимиза-
ции с помощью диалогового окна «Параметры» (рис. 2.9).
Рис. 2.9. Внешний вид диалогового окна «Параметры поиска решения»
11. Осуществим поиск решения, нажав кнопку «Выполнить».
12. На экране появиться диалоговое окно «Результаты поиска решения»
(рис. 2.10).
50
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
