Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
монография 2.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
6.54 Mб
Скачать
  1. Параметрическая транспортная задача

Пусть мощность поставщиков ai, спрос потребителей bj и затраты по перевозке единицы продукции cij линейно изменяются в зависимости от времени t:

Aii+ α’t, I= ;

Bijj’t, j= ;

Cijij +ij’t, I= , j= .

Требуется минимизировать транспортные издержки.

min (γij+γ’ij t) xij при ограничениях:

1. xij βj+β’j t, I= ;

2. xij αi+α’I t, j= ;

3. xij , I= , j= .

При этом очевидно, что решение задачи также будет изменяться от величины временного параметра.

2.3. Одномерная оптимизация

Необходимые и достаточные условия оптимума.

Унимодальные и выпуклые функции

В практике решения оптимизационных задач встречаются случаи, когда нужно исследовать одномерные целевые функции. При этом особую роль играют значения аргументов х, отделяющие интервал возрастные функции от интервала убывания и наоборот. В этих точках целевая функция F(x) меняет характер своего поведения. Если имеет место случай F1 ~ х1, т.е. точка х1 отделяет интервал возрастания от интервала убывания, то существует такая окрестность точки х1, что значение функции F1(x1) является наибольшим в этой окрестности. В противном случае, например, точка х2 имеет место наименьшее значение функции F2(x2) в окрестности точки х2. Сказанное можно геометрически проиллюстрировать следующим рисунком.

Рис. 2.1. Многоэкстремальная функция

Точка х0 называется точкой максимума F(x), если F(x0) есть наибольшее значение функции F(x) в окрестности точки х0. И по аналогии, точка х0 называется точкой минимума, если F(x0) есть наименьшее

значение F(x) в окрестности х0. Точки максимума и минимума объединяются общим названием экстремум.

При этом в теории оптимизации различают понятия локальные и глобальные экстремумы. Так, на рис.2.2 изображена произвольная целевая функция, содержащая два локальных и один глобальный минимум

Рис. 2.2. Произвольная одномерная функция

Общим для всех типов оптимизационных задач является то, что в зависимости от числа варьируемых переменных функции могут быть одномерными (n=1) или многопараметрическими. В первом случае осуществляется поиск минимума произвольной кривой Q(x), во втором осуществляется минимизация некоторой n-мерной гиперповерхности.

Точка х* называется точкой локального (относительного) минимума, если для всех точек х, принадлежащих ε - окрестности d(х* ε) этой точки, значение Q(x) не принимает меньшего значения:

Q(x*)≤Q(x) для всех хЄD, то есть глобальный минимум — это наименьший из всех локальных.

Простейшим из нелинейных функций являются выпуклые функции /14/. Геометрически это свойство означает, что функция Q(x) расположена ниже

любой прямой, соединяющей две точки на её поверхности. Например, на рис.2.4. множество А будет выпуклым, а множество В таковым не является.

Рис. 2.3. Примеры выпуклых и невыпуклых множеств

При этом под множеством будем понимать арифметическое n-мерное пространство Rn элементами которого являются упорядоченные наборы из n вещественных чисел x=(x1, x2, x3…, xn).

С выпуклыми множествами мы уже встречались в предыдущем разделе, когда рассматривали в теории решений множество стратегий.

Более общий класс нелинейных функций, т.е. функции имеющие единственный локальный минимум в области D, который будет в этом случае глобальным. Геометрически условие унимодальности сводится к следующему требованию:

необходимо, чтобы для любых точек x ≠ x* существовал строго падающий путь на поверхности Q(x), ведущий от x до x*.

На рис.2.4. приведены примеры одномерных унимодальных функций.

Рис.2.4. Унимодальные одномерные функции

Функции, имеющие несколько локальных минимумов, будем называть многоэкстремальными функциями.

В задачах нелинейного программирования тип оптимального решения x* (будет ли x* локальным или глобальным минимумом) зависит не только от вида функции Q(x), но и от того, является ли допустимая область управляемых переменных D выпуклым множеством. Для выпуклой функции (рис.2.3 а) и выпуклого множества D локальный минимум является в тоже время и глобальным. Для не выпуклой области D даже при выпуклой функции задача не линейного программирования может оказаться многоэкстремальной, т.е. иметь несколько локальных минимумов (рис.2.5.).

Х2

Х1

Рис. 2.5. Пример многоэкстремальной функции

локальные (А,В) и глобальные (С) минимумы функции Q(x) = x2, определенной на невыпуклом множестве D.

Необходимый признак экстремума

Если в точке х0 функция Q(x) достигает экстремума, то ее производная в этой точке либо равна нулю, либо не существует. Этот признак полностью согласуется с теоремой Ферма: если непрерывная функция в некотором интервале (х1, х2) принимает свое наибольшее (наименьшее) значение во внутренней точке этого интервала х­1<ε<х2 и она дифференцируема, то она обязательно равна нулю. С геометрической точки зрения рассматриваемый признак означает, что касательная к графику функции в его вершине параллельна оси ох (рис. 4). Важно подчеркнуть, что необходимый признак экстремума не является достаточным, т.е. из того, что производная в данной точке обращается в нуль ( или ее не существует), еще не следует, что эта точка будет точкой экстремума. В подтверждение этого тезиса приведем графики двух функций (Y = x3 Y= ).

Y(х) Y = x3

Рис. 2.6. А

Y (х)

Y=

Рис. 2.6 Б Примеры функций, не имеющих экстремума

Так, функция Y=x3 имеет производную Y/=3x2, обращающаяся в нуль при x=0.Однако точка x=0 вовсе не является точкой экстремума.

Функция Y= ,для которой Y/=1/3 2 не имеет смысла при x=0. И в последнем случае точка x=0 не является экстремальной.

Первый признак достаточности экстремума

Точка x0 является точкой экстремума функции Y(x), если производная Y/(x) при переходе через x0 меняет знак на противоположный; при перемене знака «+» на «-» точка x0 является точкой максимума; при противоположной смене знаков – соответственно точкой минимума.

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

Производная этой функции Y/= - 3 меняет знак при переходе через точку x=0; слева от нее Y/ 0 и, значит, функция возрастает, справа от нуляY/ 0 и, значит функция убывает; сама же точка x=0 не является экстремальной, т.к. функция в ней имеет бесконечный разрыв. Очевидность этих рассуждений иллюстрируется рис.2.7.

Рис.2.7. График функции y= 2

Второй признак достаточности экстремума

Точка x0 есть точка экстремума функции Y(x), если Y/(x0)=0, а Y//(x0) 0,причем, если Y//(x0) 0, то x0 - точка минимума.

По своей применимости второй признак достаточности оказывается весьма удобным: вместо рассмотрения функции Y/(x) в точках, отличных от предполагаемой точки экстремума, он позволяет дать ответ по знаку функции Y//(x) в той же точке.

Прямые методы поиска оптимального решения

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

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

По определению способа очередной точки методы подразделяются на методы последовательного поиска и методы пассивного поиска. Методы последовательного поиска указывают очередную точку, в которой вычисляется целевая функция Q(x) на основании данных, полученных на предыдущем шаге. Методы пассивного поиска указывают все точки одновременно (до первого вычисления функции Q(x)).

Прямые методы поиска оптимального решения /7/предполагают, вообще говоря, последовательное пошаговое вычисление критерия оптимизации и ограничений при фиксированных значениях параметров x=(x1,x2,…,xn) и варьировании параметра xn. Такой алгоритм может потребовать больших затрат машинного времени. В связи с этим возникает проблема решения задачи при наименьшем числе испытаний. Путь ее решения лежит на использовании рекуррентных соотношений, которые для начального приближения x0 в общем виде можно записать следующим образом

Xr = Fr[x0,Q(x0),g(x0);…;xr-1,Q(xr-1),g(xr-1)], (2.4)

r= . Xr

После проведения N испытаний (итераций, шагов поиска), связанных с определением из (2.4) векторов x2, приближенное значение функции критерия Q* выбирается из условия

Q*=Q(x*)=min Q(xr) (2.5)

0

Выражение (2.4) и начальное приближение x0 вместе с системой соотношений (2.5) являются математической записью метода поисковой оптимизации.

При отсутствии ограничений g(x) соотношение (2.4) имеет вид …………………..Xr=Fr[x0,Q(x0);…;xr-1,Q(xr-1)] (2.6),

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

Если в соотношениях (2.4) и (2.5) вместо вектора Xr рассматривается скалярная величина, то методы поиска называются одномерными. В противном случае - многопараметрическими.

Методы поиска безусловного минимума (как одномерные, так и многопараметрические), в свою очередь, могут быть разделены на методы минимизации унимодальных функций и методы минимизации экстремальных функций.

Рассмотрим метод поиска оптимального решения на примере минимизации одномерной унимодальной функции.

Пусть требуется найти минимум одномерной функции min Q(x) x D,где D={x:a } (2.7).

Функция Q(x) принадлежит классу унимодальных функций, т.е. существует значение x* ,такое, что Q(x) строго убывает при x x* и строго возрастает при x x*. При помощи фиксированного числа шагов (испытаний) N,которые могут быть проведены в любой точке интервала [a,b], требуется локализовать положение минимума x* с небольшой точностью. Для решения этой задачи в условиях, когда положение x* возможен только один путь - сокращение интервала неопределенности.

Стратегия проведения испытаний строится таким образом, чтобы в процессе поиска происходило исключение тех подинтервалов, в которых в силу унимодальности функции Q(x) точное x* отсутствует. Это позволяет после проведения N испытаний выделить некоторый подинтервал, принадлежащий отрезку [a,b] и содержащий точку x*.

Сокращение интервала неопределенности осуществляется на основе так называемого “наилучшего алгоритма поиска”, под которым понимается алгоритм, для которого интервал неопределенности имеет наименьшее значение, т.е.

*n= n(F*)=min max n(Q,Fi) Fi AF Q KQ (2.8)

Отсюда следует, что величина интервала неопределенности зависит от алгоритма поиска F* AF*, от вида функции Q(x) KQ, определяющей конкретный индекс k, при котором получено минимальное ее значение.

Наиболее простыми алгоритмами поисковой оптимизации являются алгоритмы, реализующие F11- метод равномерного поиска и F12- метод равномерного дихотомического поиска. В них расположение точек xi выбирается заранее до проведения первого испытания, т.е. шаги распределяются равномерно на всем интервале [a,b]. В полученных точках оценивается значение функции Q(x) и из них выбирается наименьшее. В методе дихотомического поиска шаги выбираются также равномерно, но значение функции оценивается парой подинтервалов. Недостатком этих алгоритмов является то, что в них при выборе точек xi не используется информация, полученная в xi-1 шаге. Этот недостаток устранен в методе деления пополам и в методе последовательного дихотомического поиска.

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

Общая схема решения задач данным методом стоит в построении последовательности x0,x1,x2,…,xn,…решений по следующему принципу: в качестве x0 выбирается, вообще говоря, любая точка области решений и

затем каждая последующая точка получается из предыдущей по формуле (2.8) т.е. xk+1=xk+ , где 1, 2,…, n) некоторое направление (вектор), а -действительное число. При этом направление и длина шага выбирается так, чтобы обеспечить сходимость процесса оптимального решения x*.

Так как направление градиента целевой функции является направлением ее наискорейшего роста, то при отыскании max вогнутой функции (минимума вогнутой функции) в качестве часть берется и тогда формула принимает вид

Xk+1=xk+ (xk), - если имеется максимум, и

Xk+1=xk- k), - если ищется минимум. (2.9)

Методы спуска, в которых итерационная последовательность x0, x1, x2,…, xk…находится по формулам (2.9) называются градиентными. Эти методы отличаются друг от друга способами выбора длины шага и алгоритмами нахождения точки xk+1, которые изложены выше.

Для случая функции двух переменных f(x,y) метод наискорейшего спуска имеет простую геометрическую интеграцию:

д

F

ля любого ki луч, идущий от точки xk к точке xk+1 перпендикулярен к линии уровня функции f(x,y), проходящей через точку xk (т.к. направлен по градиенту), и касается линии уровня, проходящей через точку xk+1.

Рис. 2.8. Линии уровня f (x,y)= const

Отличие этих методов заключается в том, что в методе градиентного спуска величина шага постоянна для каждой итерации, а для метода наискорейшего спуска характерен переменный шаг.

Методы, использующие производные целевой функции

Схема исследования функций на экстремумы должна содержать последовательность действий для изучения роста и отыскания экстремумов непрерывной функции f(x) в заданном интервале, который может быть конечным, так и бесконечным. Для определенности будем считать, что функция y=f(x) имеет производную всюду, за исключением, может быть, отдельных точек. Алгоритм исследования содержит следующие процедуры /3/.

1. Прежде всего, нужно найти точки интервала, в которых производная равна нулю (стандартные точки), т.е. действительные корни уравнения f’(x)=0, а также те точки, в которых производная не существует. Обозначим все найденные точки в порядке возрастания через x1, x2,…., xn.Таким образом, x1 x2 … xn .Это те точки интервала, в которых функция f(x) может иметь экстремумы. Иногда их называют критическими.

2. Затем разбиваем при помощи точек xi весь заданный интервал [a;b] на частные интервалы: (a,x1),(x1,x2)…,(xn-1,xn),(xn,b), в каждом из которых производная сохраняет постоянный знак. Это операция носит название - проверка монотонности функции интервала.

3. Находим знак производной в каждом из частных интервалов, для чего достаточно узнать ее знак в какой-нибудь одной точке интервала. По знаку производной определяем характер изменения функции в каждом интервале монотонности, т.е. возрастание или убывание. Следя за знаком производной при переходе через границы интервалов монотонности, выясняем, какие из этих точек будут точками max или min.

4. Подстановкой в выражение функции f(x) критических значений x=xi находим соответствующее значение функции f(x1), f(x2),…,f(xn). Как

уже отмечалось, не всегда эти функции могут иметь экстремальное значение (рис.2.8).

Результаты исследований целесообразно свести в таблицу (2.1).

Таблица 2.1

x

a

a x x1

X1

X1 x x2

X2

X2 x b

b

y

f(a)

возрастает

f(x1)

убывает

f(x2)

убывает

f(b)

y’

+

0

-

0

-

Для примера рассмотрим функцию y=3x3+4.5x2-4x+1.

Эта функция имеет непрерывную производную на всей оси x.

Находим производную y’=9x2+9x-4=(3x-1)(3x+4).Отсюда видно, что производная равна нулю при x= и x=- .Так как при x - оба сомножителя отрицательны, то производная при этих значениях x положительна и, следовательно, функция возрастает. При - производная отрицательна- функция убывает, а при x производная снова положительна и функция возрастает. Таким образом, x=- есть точка максимума, а x= -точка минимума и мы имеем три интервала монотонности: от -∞ до - -интервал возрастания, от - - интервал убывания и от - интервал возрастания. Вычислим значения функции в точках экстремума и составим таблицу поведения функции:

Таблица 2.2

x

-

-

y

возрастает

7 max

убывает

min

возрастает

+

y’

-

+

0

-

0

+

По таблице можно построить график

Y

X

0

Рис. 2.9. График функции y=3x3+4.5x2-4x+1

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