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

Численные методы решения задач оптимизации. Учебное пособие

.pdf
Скачиваний:
4
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
Часть I. Курс лекций
x
f
g
j
x
(
)
1. МЕТОДЫ ОПТИМИЗАЦИИ. ОБЩИЕ СВЕДЕНИЯ
1.1. Общие понятия
Задача математического программирования состоит в том, чтобы найти экстремум (min, max) некоторой функции, зависящей от одной или нескольких переменных при выполнении ряда ограничений на эти переменные. Ограничения могут быть заданы в виде равенств и неравенств:
,,, min
xx x

xx k N

kn
xx

1
jn
12
,..., 0; 1, , ;
1
,..., 0; 1, ,
n
,,,
xx
12
n
M
;
(1)
.
Задачу (1) называют задачей математического программирования,
,,,
а функцию данном ограничениями, – целевой функцией. Переменные
это параметры оптимизации, каждая точка ляется допустимым решением, а множество
xx x

12
, определенную на множестве
n
,,,
12
xxx x яв
,,,
12
n
R – множеством
допустимых решений, или допустимым множеством. Точка
xx
n
R , за
n
*
x , в
n
–
которой целевая функция принимает экстремальное значение, называется оптимальным решением. Обозначим
Xxx x ;
, , ...,

12

fx x

11
,,
n
n

FX

 


fx x
gx x
,,

1
Nn
,,

11
;
n

GX

 

gx x
,,

1
Mn
.
11
Тогда задачу нелинейного программирования можно записать в
x
x
x
()
x
векторной форме:
X


FX

GX

min;
X
0;
0.
(2)
В дальнейшем частные задачи оптимизации будем рассматривать в основном как задачи поиска минимума функции. Однако при решении реальных практических задач очень часто встречаются задачи и на максимум. Легко перейти от одного вида экстремума к другому путем
смены знака у критерия оптимальности:
Точка функции
вектор
   такой, что для любых значений
ющихся неравенству
,, ,,

11
*** *
Xxx x называется точкой локального минимума
X в некоторой окрестности этой точки, если существует


12
xxx.
nn
,,,

12
,,,
**
n
n
**
xxx   , выполняется неравенство
iii ii

min max
X
XX  .
 
X

, подчиня
i
Локальный минимум функции, который соответствует самому наименьшему значению функции из области значений, называется
глобальным минимумом.
Поверхностью уровня функции
в которых функция принимает постоянное значение, т.е.
X называется множество точек,


constX .
Если 2n , поверхность уровня изображается линией уровня на плоскости.
Рассмотрим некоторую точку и вектор
1, 0
Dd.
Ddd d , задающий направление в пространстве nR :
i
Совокупность точек
,,,

12
n
XX D ( – некоторый одномерный пара
X из области определения функции
0
0
метр) образует прямую, если      , и луч, если 0 .
Градиентом функции
,,,
xx называют вектор

12
n
X ,

приложенный в точке X и имеющий направление нормали n к по верхности уровня функции в данной точке, а также длину, равную
T
 , где


XXX X
   
  


xx x
12

,,, .
n
12
То есть градиент представляет собой вектор частных производных
()

X


        
 


x
1
x
2
x
n
X

X

.
(3)
X

Вектор
антиградиентом функции.
Точка, в которой градиент функции
стационарной.
X , противоположный вектору градиента, называется

()0k
fx, называется

1.2. Теоремы о функции, имеющей производную по заданному направлению
Пусть
Величина показывающее мгновенную скорость изменения функции вдоль
направления D и равное производной от функции в направлении D:
Теорема 1.

TT

21
0
XD XD   – скалярное произведение,
T

– некоторое заданное направление.
dddD ,,,
n
,
00
XD X

0
xD

lim


0
. (4)
Производная по направлению D равна произведению
градиента на вектор D:
Доказательство.
Рассмотрим
ZX
ции


.
  .
D
00
XD X


00
XD X  – полное приращение функ
lim
D


0
0T
XD

.
13
Известно, что полное приращение функции ΔZ может быть пред
Z
()
()
D
D
ставлено в окрестности точки X следующим образом:
n

i
1
 
x
x
, (5)
i
i
cos
где cos
xd , (6)
ii i
– направляющие косинусы единичного вектора D.
i
Подставив выражения (5) и (6) в формулу (4), получим:
n

cos( )

i
T
.
x
1
i
 
lim
D

0
i
Теорема 2.
0
Если
которой
T
XD , то существует такая величина σ, при

00
XD X для любого

0
0,  .
Доказательство. Первое неравенство в условии теоремы означает, что производная
от функции по направлению D положительна.
00
XD X


lim 0

0
.
Так как 0 , то, для того чтобы предел отношения был поло
жительным, необходимо, чтобы числитель был не меньше нуля для всех , достаточно близких к нулю, что доказывает утверждение теоремы.
Теорема 3.
Градиент
возрастания функции в точке
0
X показывает направление наискорейшего

0
X .
Доказательство. Рассмотрим все направления
,,,
dd d , в которых наблюда

12
n
ется возрастание функции, т.е.
0
T
XD .

0
14
Так как
() ()
(
)
(
)
(
)
D
x
00
TT T
XD X D D     , то свое наи
cos
,
большее значение эта величина примет при угол
направлением градиента.
Так как величина производной по направлению показывает скорость возрастания функции в данном направлении, то отсюда следует утверждение теоремы.
Теорема 4.
T
,
В точке максимума X* функции (X) градиент равен нулю:
0
D и, следовательно, направление D совпадает с
*

Доказательство.
Предположим, что
     
Следовательно, направление
****
   
*

0X . Зададим направление

cos
0X .
 
*
X есть направление, в кото
T
,
D
2
, т.е. когда
1
DX .
0XD X X X
.
*

ром возможно возрастание функции (X) в сравнении со значением функции в точке
Значит, предположение о том, что
Пример 1.
Задана функция
Определить единичное направление e , совпадающее с направ
1.
лением вектора D.
2.
Из точки
сать уравнение этой прямой.
3.
Вычислить градиент функции
4.
Определить производную функции по направлению :e
0
X
.

e
5.
Найти точки, в которых
на экстремум.
*
X , что невозможно, так как *X – точка максимума.
*

,0,5
xx x и направление

12 1 2
0
1; 1X провести прямую в направлении D и напи

2

0X , неверно.
1; 0 , 5D .

0
X .

0X , т.е. точки, подозрительные
15
Решение.
x
x
1.
Определим единичный вектор:
1; 0 , 5
D
e

D
2.
Для построения прямой в направлении вектора D найдем еще

22
10,5
10,5
 
1,116 1,116

; 0,8944; 0,4472 .

одну точку на искомой прямой, например точку
10 0

1122
;Xxdxd , и запишем уравнение прямой, проходящей через
две точки в виде:
00
xxx

11 2 2
10 10
11 22
xxx

.
10
XXD, т.е.
Для точек
3.
Градиент функции в точке
В точке
4.
Производную функции по направлению e вычислим, исходя
0
1; 1X и

11
xx
12
21 1,51



0
1, 1X

X


из утверждения теоремы 1:
1
2; 1,5X уравнение будет иметь вид:

или

12

  
X
 

1

0

1

 ,
e
X

x
1

X

x
2
.
Xe

0,5 0,5.xx
21
,Xxx находим по формуле (3):
 

0T
1
.
x
2
0
где
T
X ;

1; 1

0,8944; 0,4472e  .

Вычислим скалярное произведение двух векторов (как сумму
произведений соответствующих координат):
0
 
e
5.
Определим точки, подозрительные на экстремум:
T
Xe


1; 1 0,8944; 0,4472 0,8944 0,4472 1,3416.
16
1


 
x
2

0X
.
Видим, что и при подозрительных на экстремум. Область изменения функции
0x ); следовательно, для данной функции не существует точек,
2
X не обращается в 0 ни в одной точке (в том числе

,  .

Контрольные вопросы и задания
1. Какие задачи решают и где применяются методы оптимизации?
На какие этапы можно разделить процесс принятия решений в
2.
исследовании операций?
Что такое информационное моделирование?
3.
4.
Сформулируйте в общем виде задачу математического програм
мирования.
По каким признакам классифицируются задачи математического
5.
программирования?
Что в задаче математического программирования называют
6.
допустимым решением, а что – оптимальным решением?
Приведите пример задачи дробнолинейного программирования.
7.
Какая функция называется целевой?
8.
Чем задача безусловной оптимизации отличается от задачи
9.
условной оптимизации?
Можно ли задачу поиска максимума функции преобразовать в
10.
задачу поиска минимума?
Приведите пример задачи математического программирования,
11.
не имеющей решения. Можно ли утверждать, что задача математи ческого программирования имеет решение, если допустимое мно жество замкнуто и ограничено?
Как построить линии уровня целевой функции?
12.
Что такое градиент функции?
13.
Что показывает вектор градиента, антиградиента?
14.
Как определить производную по направлению D?
15.
Чему равен градиент функции в точке экстремума?
16.
Нарисуйте локальный и глобальный минимумы функции в
17.
некоторой области.
Какая точка называется стационарной?
18.
Определите стационарную точку функции
19.
17
,fxx x x x x
(
(
y
x

12 1 2 1 2
32
на интервале
20.
Задана точка
0, 2);
12
0
1, 1X и определено направление

0, 2).xx
21D . Точ

ки на прямой, соответствующие направлению D и проходящие через заданную точку, выражаются уравнением
0
XD
.
Напишите уравнение прямой, проходящей через заданную точку. Для функции
,0,1
xx x вычислите направление наиско

12 1 2
рейшего возрастания в точке
Определите точки экстремума функции Вычислите производную по направлению D в точке
22
0
1, 1X .

,xx .

12
0
X .
18
2. ЭЛЕМЕНТЫ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
(
)
j
f
f
f
x
()
f
()
2.1. Общая постановка задачи
Рассмотрим множество векторов
n
цию
Функция
, ,...,
12
()
xcx

1
j
x

xx, то есть представляет собой линейную форму.
n
, где jc – некоторые числовые коэффициенты.
j
,,,
xx x линейна относительно переменных
12
n
XR ,
n
Xxx x и функ
, ,...,
12
n
Предположим, что на компоненты векторов X наложена система ограничений в виде линейных равенств и неравенств. Совокупность векторов X, удовлетворяющих этим ограничениям, составляет неко
торое множество
Говорят, что в пространстве мирования (ЗЛП), если определена линейная целевая функция
n
R .
n
R поставлена задача линейного програм
x
подлежащая минимизации, а также задана система линейных ограничений на компоненты векторов X в виде равенств и неравенств, определяющая
некоторую область
n
:
R
n
fx c x

1
j
jj
; (7)
min

X
,
n
  
 
 
xlL
 

ax a iI
ij j i
1
j
n

bx bkK
kj j k
1
j
0, .

l
,;
,;
(8)
Здесь I, K, L – заданные целочисленные множества индексов.
Заметим, что решение такой задачи методом приравнивания к нулю частных производных и решения соответствующей системы невозможно, так как все производные равны константам.
19
2.2. Каноническая форма представления ЗЛП
()
j
()
()
f
f
()
()
f
f
Задачи линейного программирования возникают в различных обла стях науки, техники, экономической теории, медицине, социологии и т.д. В зависимости от целей решения, ЗЛП могут быть записаны в том или ином виде, однако существуют стандартные формы представления задач линей ного программирования, для которых разработаны методы и алгоритмы решения.
Канонической формой записи ЗЛП называют задачу
n
;
fx c x

jj
1
j
n
 
x

ax a i m
ij j i
1
j
0, 1, , .

j
То есть в канонической форме ЗЛП все ограничения системы (8)
кроме неравенств, выражающих условие неотрицательности пере
(
менных) представлены в виде равенств и требуется найти максимум целевой функции.
Приведение задачи к стандартной или канонической форме легко осуществить, если использовать следующие положения.
1) Задача минимизации может быть преобразована в задачу мак
симизации путем смены знака у критерия оптимальности:
max

X
,1,,;
n
min
X
max
x
X
x и наоборот,

max
X
min
x
X
x .

2) Ограничения типа равенств и неравенств можно привести к
необходимой форме, используя следующие приемы:
а) ограничение типа можно привести к ограничению путем
умножения обеих частей неравенства на –1;
б) ограничение типа = приводится к двум ограничениям типа
неравенств и , если потребовать их одновременного выполнения. Например, равенство
12
эквивалентно системе двух неравенств
1xx
xx

12
1;
xx

12
1;
в) ограничение типа неравенства можно всегда привести к ограничению
типа равенства путем добавления еще одной переменной неравенства. Так, например, ограничение
ax a x ax b   
11 22
ii inni
x в левую часть
1n
...
можно привести к ограничению типа равенства добавлением положи
20
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]