Материал: 1823

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Максимизация функции Z2 осуществляется при условиях (3.7) и дополнительном ограничении на Z1, позволяющем учесть величину уступки 1 ( Z1* 1 4 ), которое будет иметь вид:

x1 2x2

4.

(3.8)

Задача (3.5), (3.7), (3.8) также решается графически (рис. 3.2).

X2

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10/3

 

3

 

 

Q1

 

 

 

 

 

 

 

 

 

 

B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Grad Z2

 

 

 

 

 

 

 

 

 

 

 

X1

0

1

 

 

 

2

 

8/3

3

 

Рис. 3.2

Максимум функции Z2 при условиях (3.7), (3.8) достигается в точке B части Q1 области Q, так что

x1** 8 / 3; x2** 10 / 3; max Z2 Z2* Z2 (B) 26 / 3.

Второе дополнительное ограничение получается из условия Z2* 2 7 и будет иметь вид:

2x1 x2 7.

(3.9)

Максимизируя функцию Z3 при условиях (3.7), (3.8), (3.9) с помощью графического метода, получаем оптимальное решение рассматриваемой трёхкритериальной задачи, которое представлено на рис. 3.3 (точка C).

11

X2

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Q2

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Grad Z3

 

 

 

 

 

 

 

 

 

 

 

 

 

X1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

1

 

 

 

 

 

2

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.3

Значения переменных и соответствующие значения частных критериев при этом составляют:

x1 2; x2 3; Z1 4; Z2 7; Z3 7.

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

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

Задача нелинейного программирования формулируется так же, как и общая задача оптимального программирования:

F f (x1 , x2 ,...,xn ) max(min);

(4.1)

 

 

 

 

gi (x1 , x2 ,...,xn )( , , )di ,i

1, m

;

(4.2)

 

 

a j x j bj , j

1, n

.

(4.3)

где aj, и bj, — нижнее и верхнее предельно допустимые значения xj, причём целевая функция F и(или) хотя бы одна из функций gi являются нелинейными. Если в ограничениях (4.2) стоит знак равенства, то их называют ещё уравнениями связи.

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

12

программирования. В задачах линейного программирования экстремум целевой функции находится только на границе, что не является справедливым для нелинейных задач. Поэтому наибольшее или наименьшее значение функции без учета того, где находится такое значение (внутри заданного интервала или на его границе), называют не экстремумом, а оптимумом. Оптимум — более широкое понятие, чем экстремум. Если экстремум есть не у всех функций, то в практических задачах оптимум существует всегда, причем он может быть как локальным, так и глобальным.

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

Задачами безусловной оптимизации называются такие, в которых задается лишь одна целевая функция F – (4.1), без указания ограничений и граничных условий (эти задачи носят теоретический характер, так как на практике граничные условия задаются всегда). В этих задачах понятия оптимума и экстремума совпадают, и для нахождения оптимума применяют методы нахождения экстремума.

Задачами условной оптимизации называются задачи, в которых кроме целевой функции задаются некоторые дополнительные условия и ограничения - (4.2) – (4.3). Ограничения могут быть заданы в виде, как уравнений, так и неравенств, при этом введение ограничений либо не влияет на оптимум, либо ухудшает его, подтверждая тем самым вывод, сделанный для задач линейного программирования, что введение дополнительных условий не улучшает оптимального решения, а в ряде случаев приводит к

несовместности.

Аналитические методы решения задач безусловной оптимизации заключаются в поиске экстремума функции F - (4.1), который находится (как уже рассматривалось ранее) в точке с координатами, определяемыми в результате решения следующей системы уравнений:

F / x1 0; F / x2 0,..., F / xn 0.

(4.4)

Эта точка называется стационарной точкой. Для получения

достаточных условий существования экстремума

следует

13

определить в стационарной точке знак дифференциала второго порядка функции F(X)=f(x1,x2,…,xn):

n

n

 

d 2 f ( X ) f x x

( X ) xi x j .

i 1

i

j

j 1

 

В стационарной точке X0 функция f(X) имеет максимум, если d2f(X0)<0, и минимум, если d2f(X0)>0, при любых xi и xj, не обращающихся в нуль одновременно.

Вектор столбец, составленный из частных производных функции F=f(x1,x2,…,xn):

 

 

 

 

f / x1

 

 

 

 

 

 

 

 

 

f (x

j

)

f / x2

,

(4.5)

 

 

 

...

 

 

 

 

 

 

 

 

 

 

 

 

f / xn

 

 

называется

градиентом функции f(xj). Градиент

показывает

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

f x j f / x1 2 f / x2 2 ... f / xn 2 1/ 2

Если обозначить модуль градиента через

M

n

2

1/ 2

f / x j

 

 

,

 

j 1

 

 

 

n

2

1/ 2

f / x j

 

.

j 1

 

 

то признаком экстремума является условие M=0.

Наиболее простая задача условной оптимизации имеет вид:

F f (x j ) min; a j

x j

bj ; j

1, n

,

(4.6)

14

(если решается задача поиска максимума функции F, то это всегда равнозначно поиску минимума функции –F). При решении такой задачи применятся тот же алгоритм, что и в задачах безусловной оптимизации. Для нахождения стационарной точки также решается система уравнений (6.4). Если при решении этой системы какоелибо из значений переменной xj выходит на (или за) нижнюю границу, то в качестве оптимального принимается значение xj равное aj, и поиск продолжается по остальным переменным; аналогично осуществляется поиск для верхней границы.

Пусть в общем случае задача условной оптимизации имеет

вид:

F f (x

) min;

 

 

 

 

 

 

j

 

 

 

 

 

g(x j ) 0;

 

 

 

 

 

 

(4.7)

a

 

x

 

b

 

 

 

 

 

 

 

 

 

j

j

, j 1, n.

 

 

 

 

j

 

 

 

 

Известен ряд достаточно сложных методов решения подобных задач. Один из таких методов называется методом штрафных функций; суть его заключается в следующем. От задачи условной оптимизации (4.7) переходят к такой задаче, в которой минимизируется новая целевая функция, включающая, кроме заданной целевой функции f(xj), заданные ограничения g(xj). Новая целевая функция записывается следующим образом:

(X ) f ( X ) (g( X )) min(max),

(4.8)

где (g(X)) - штрафная функция.

Вводимая штрафная функция должна удовлетворять следующим требованиям:

(gi(xj))= 0, если xj находится в области допустимых решений;(gi(xj))> 0, если хj находится вне области допустимых решений.

Штрафная функция может иметь следующий вид:

m

 

(gi (x j )) M gi2 (x j ),

(4.9)

i 1

15