Модели, методи и алгоритми на нелинейното програмиране



страница2/3
Дата13.10.2018
Размер268.41 Kb.
#84859
1   2   3
По такъв начин началната сепарабелна задача може да бъде апроксимирана с линеен модел и решена с използуване на симплекс-метода при допьлнителните условия за ограничен базис. Задачата е сле-дната:


Да се максимизира (минимизира)


при ограниченията:

условията за ограничен базис.


Условията за ограничен базис определят, че за дадено i в базиса може да има най-много две положчтелнии че ако две са положителнй, те трябва да са съседни. Това означава, че променли-вата, която е избрана за включване според условието за оптималност на симплекс-метода, ще бъде действително въведена в базиса само ако удовлетворява двете условия за ограничен базис. Иначе за включване се разглежда следващата променлива, която най-добре удовлетворява условието за оптималност. Процедурата се повтаря, докато се намери променлива която да се включи в базиса, или докато се установи невъзможността на такова включване. Последната симплекс-таблица определя приблизителното оптимално решение на задачата.


Когато сепарабелната задача е неизпъкнала, с разгледания метод може да бъде определен локален екстремум. В такива случаи за нами-рането на глобалния екстремум може да бъде използувано СЦП, като началната задача се апроксимира по следния начин:

Да се максимизира (минимизира)

при ограниченията:







Таблица 10.2




к

х1k

f1(х1k)

g11(x1k)




1

0

0

0




2

1

1

3




3

2

32

12




4

7/3

16807/243

147/9

















х1 < 21/3, което позволява да се определят стойностите за х1k, f1(х1k) и g11(х1k), показани в таблица 10.2. Оттук







В тази задача на СЦП променливите саи yik. Когато точност-та на апроксимацията е висока, броят на точките на прекъсване и на определяните от тях ограничения в задачата на СЦП е голям, което може да направи практически невъзможно решаването на тази задача.
Вследствие на използуваната апроксимация и по двата метода, по-някога е възможно получаването на приблизителни оптимални решения, конто не съществуват при началната задача. Такива решения би трябвало да бъдат допълнително анализирани.
Пример 10.3. Разглежда се задачата Да се максимизира J = х15 + 2х2 при

ограниченията


3х12 + 4х2 < 16
x 1 , x 2 > 0.
Лесно може да се види, че точното оптимално решение е х1* = 2,3094, х2 = 0 и J* = 65,6896. За да се реши задачата по метода на ограничения базис, се въвеждат следните функции:


f1(х1) = х15,

f2(x2) = 2x2,

g11(x1) = 3х12,

g12\(x2) = 4x2.

Функциите f2(x2) и g12(х2) са линейни и се оставят без изменение, което позволява х2 да се разглежда като една от променливите. Нека броят на точките на прекъсване по х1 е L1 = 4. От ограничението следва, че

и апроксимиращата задача е Да се максимизира при


ограниченията



условията за ограничен базис


В случая получаването на начално допустимо решение е облекче-но, тъй катоне участвува в целевата функция J и не е необходимо
да се въвежда изкуствена променлива. Началната симплекс-таблица е следната


където S1 > 0 е остатъчна променлива. В съответствие с условията за оптималност . би трябвало да бъде включвана променлива. При това, за да се удовлетвори условието за ограничен базис, би тряб - вало да бъде изключвана променлива. От условието за допустимост обаче

следва, че изключвана променлива в този случай би била S1, при

което в базиса ще фигурират две несъседни положителни променливи Следователноне може да бъде включвана променлива. Следващата най-подходяща за включване е променливата Тогава изключвана променлива е с което условието за ограничен базис се удовлетворява. Съответната симплекс-таблица е



Тук въвеждана променлива е и тъй като в базиса фигурира , включването на съседната в базиса е допустимо. Изключвана променлива е St, при което се получава таблицата




Включвани променливи биха могли да бъдат . Тъй като



не е съседна на , въвеждането й в базиса не е допустимо.

Включването на също е недопустимо, защото изключвана би била



и в базиса биха останали конто не са съседни. Последната

таблица определя приблизителното оптимално решение, което е



Това решение е твърде близко до истинското оптимално решение х*1 = 2,3094, х*2 = 0 и J* = 65,6896, което се дължи на сполучливия избор на точките на прекъсване x1k.


Когато сепарабелната задача е изпъкнала, (изпъкнали ограничения и вдлъбната или изпъкнала целева функция) апроксимацията може да бъде опростена и не е необходимо използуването на ограничен базис.
Нека функцията /,(xt) e вдлъбната, с Li + 1 точки на прекъсване xik, k = 0,Li. Нека uik определя нарастването на променливата xi в интервала (xik-1,xik), к = l,Li, a Sik - стръмността на линейния сегмент

над този интервал. Тогава fi(хi) се апроксимира по следния начин



при условие, че

0 < uik < xik - xik-1, к = 1,Li.
Тъй като fi(xi) e вдлъбната функция, условията Si1 > Si2 > ... > SiLi винаги се изпълняват. Поради това максимизиращият алгоритъм вкл'ючва най-напред в базиса и i1, (според условието за оптималност), която нараства от нула до стойността хi1 - хi0, зададена от ограниче-нието, след това в базиса

се включва иi2 и т.н.

По същия начин се апроксимират и ограниченията

след което апроксимиращата

задача е от вида
Да се максимизира
при ограниченията

където


Апроксимиращата задача в случая на минимизация на изпъкнала функция се получава по същия начин, като се отчита, че Si1 < Si2 <

... < SiLi.
10.2.2. КВАДРАТИЧНО ПРОГРАМИРАНЕ
Задачите на квадратичното програмиране се характеризират с линейны ограничения и квадратична целева функция. Моделът на квадратичното програмиране е от вида

Да се максимизира (минимизира) J = СХ + XTDX при ограниченията







АХ0,

където




X = [x1,x2, ,...,х п]T,

С = [c1,c2 ,...,cn], b = [b1,b2,...,bm]г

A=(axij)mxn,

D = (dij)nxn

В квадратичната форма XTDX D е симетрична матрица, положително (отрицателно) определена в задачите за минимизация (максимизация) Следователно J е строго изпъкнала (вдлъбната) спрямо X при минимизация (максимизация). Пространство^ на решенията е изпъкнало поради линейността на ограниченията.


Тази задача се решава чрез прякото прилагане на условията на Каруш-Кун-Такер. Тези условия са и достатъчни за идентифициране на глобален екстремум поради изпъкналостта на J и на допустимата
област.
В случая на максимизация моделът може да се запише във форма-

та.
Да се максимизира J = СХ + XTDX при ограниченията



За двете множества ограничения АХ — b < 0 и -X < 0 се въве-ждат


съответно множителите на Лагранж и условията на Каруш-Кун-Такер се представят във вида

Тъй като



след въвеждане на допълнителните променливи S в ограниченията АХ + S = b, S > 0, необходимите условия се записват във формата



След транспониране на първото векторно-матрично уравнение



и необходимите условия се представят по-компактно във вида




Вижда се, че задачата е еквивалентна на решаването на система



линейни уравнения спрямо

като решението трябва да удо-

влетворява допълнителните нелинейни условия

. От


строгата вдлъбнатост на J и изпъкналостта на g(X) следва, че допусти-мото решение, удовлетворяващо необходимите условия, е оптималното решение и че решението на системата е единствено.


Системата може да бъде решена с използуването на първата фаза на двуфазния метод с изкуствени променливи за определянето на допустимо начално решение на линейни задачи (т.3.4.2), като се осигури винаги

изпълнението на условието Практически това

означава, че ако на някоя итерация е базисна променлива с положи-телна

стойност, si не бива да става базисна, с положителна стойност на същата итерация. Същото се отнася и за променливит и хj.Това е идеята за ограничен базис. Ако квадратичната задача има допустимо решение, сумата на изкуствените променливи се нулира в резултат на изпълнението на първата фаза на метода.

Пример 10.4. Да се максимизира функцията
J = 6x1 + 9x2 — 3x12 — 4x1x2 — 3x22
при ограниченията
2x1 + 3x2 < 3 x 1 ,x 2 > 0.

Задачата се записва в матрична форма


Да се максимизира при ограниченията


Матрицата D е отрицателно определена, т.е. J e строго вдлъбната по X. Необходимите и достатъчни условия се представят във вида



След въвеждане на изкуствените променливи R1 и R2 за първи-те две уравнения по-горе и на минимизираната целева функция R = R1 + R2 началната таблица за фаза 1 е следната




Тъй като R се минимизира, въвеждана променлива би трябвало да бъде х1 (или х2). Тази променлива наистина може да бъде включена в базиса, защото(или) е небазисна и допълнителното условие се изпълнява. Извеждана променлива е R1и сим-плекс-таблицата на първата итерация е


Въвеждането на x2 в базиса е възможно, тъй като = 0. Изве-ждана променлива е s1. Таблицата на втората итерация е


Въвеждането на на третата итерация в базиса е възможно, тъй

като s1 = 0. Таблицата е _____________________________________________



Тъй като R — 0, полученото решение е допустимо и то е х*1 = 0,

х*2 = 1, J* = 6.
Моделът на квадратичното програмиране е твърде важен, защото чрез него могат да бъдат описани много приложни задачи. Той е основата и на общ подход за решаване на оптимизационни задачи с нелинейна целева функция и линейни ограничения, който се състои в решаването на последователност от апроксимиращи задачи на квадратичното програмиране.
ГЕОМЕТРИЧНО ПРОГРАМИРАНЕ
задачи на инженерното проектиране целевата функция и огра-ниченията често са от вида

където



Обикновено cj,aij са физически константи, а xj са променливи, конто се избират в процеса на проектиране. Върху знака на аij не се налагат ограничения, но се предполага, че всички cj > 0. Така дефинираните Pj (X) и f(X) са обобщени полиномы, в които може да има отрицателни степени aij, и които се наричат позиноми.
Задачите, в които целевата функция и ограниченията са позиноми, се определят като задачи на геометричното програмиране (позино-миалното програмиране). В общия случай това са неизпькнали задачи,

но в случайте, когато сj > 0 те могат да бъдат преобразувани в еквива-лентни задачи на изпъкналото програмиране.


През 1964 г. Дюфин и Ценер предлагат метод на решение, конто се основава на съответна дуална задача. Предимството е, че дуалната задача се решава значително по-лесно от пряката, записана в позино-миална форма.
Методът ще бъде въведен за случая без ограничения. Пряката задача е да се минимизира функцията f(X), представена като позином. Предполага се, че всички променливи са строго положителни, xi > 0.

Необходимото условие за минимум се записва във вида



или понеже xk > 0




Тъй като J е позином и всички оптимални стойности х*к > 0, минималната стойност J* > 0. Въвеждат се




Очевидно, уj> 0 и Стойността уj представлява относителния

принос на Pj в оптималната стойност J*.
Като се използуват yj необходимите условия се представят във формата

Така записани те се наричат условия за ортогоналност и нормалност. Те определят единствено решение за променливите уj, ако п + 1 = N и всички уравнения са независими, или неединствено решение, когато п + 1 < N. В последния случай обаче може да се определят единствени стойности yj, при конто се минимизира J, като се формулира допълни-телна оптимизационна задача спрямо N - (n + 1) променливи уj.

Нека y*j,j = 1,N e единственото решение, определено от необхо-димите условия. То се използува за определяне на J* и х*к по следния начин.
От условието за нормалност и от дефинициите на у*j,у*j = P*j/J* и на Р*j следва, че

където е отчетено условието за ортогоналност. Вижда се, че стойности-те у*j определят J*. От дефиницията пък на уj, при известии стойности у*j и J*, се намират Р*j = y*j,J*,j = 1, N. Стойностите Р*j се използуват за съставяне на нелинейната система уравнения




чието решение определя оптималните х*k.
По такъв начин решението на началната задача в позиномиална форма е преобразувано в решаване на система линейни уравнения спрямо променливите уi. Тъй като всички у*j са определени от необходимите условия за минимум, решенията х*к удовлетворяват всички уравнения на нелинейната система и могат да бъдат определени след отстраняване на N — п уравнения от нея, които са излишни.
Доказано е, че необходимите условия са и достатъчни за иденти-фициране на минимум.
Елементите на дуалната задача могат да се разкрият, като се използува следното неравенство на Коши за bi > 0

където аi > 0 и . Пряката задача се записва във вида




се дефинира функцията


случая yj > 0, и от неравенството на Коши следва, че


W < J.
Дуалната задача има целева функция W и променливи yj. Тъй като W е долна граница на J и J се минимизира по xi ,i = 1,n, чрез максимизирането на W по yj ,j = 1,N се получава




Пример 10.5. Разглежда се задачата
Да се минимизира J = 5х1х2-1х32 + х32х3-1 + 10х23 + 2х1-1х2х3-3
x 1 , x 2 , x 3 > 0.
Целевата функция се представя във вида
J = 5х1х2-1х32 + х1-2х20х3-1 + 10х10х23х30 + 2х1-1х21х3-3
Вижда се, че N = 4,n = 3, т.е., N = п + 1 и условията за ортого-налност и нормалност водят до единствено решение за уj. Тези условия се записват в матрична форма



Сподели с приятели:
1   2   3




©obuch.info 2024
отнасят до администрацията

    Начална страница