Основа и основно решение - Studiopedia

В задачата на ЛП основите и основните решения играят ключова роля в организирането на търсенето на оптимално решение, ако то съществува. С тяхна помощ се генерират следващите върхове от областта на допустимите решения и се организира преходът от един връх към друг. Добрият избор на първоначалната основа и основното решение може значително да ускори процеса на търсене.

Ние илюстрираме възможността за такъв избор на примера на задача с ограничения във формата

Ако представим ограниченията на този проблем във форматаAx = b,, тогава матрицатаAще приеме форматаA = [a1, a2, a3],къдетоa1 = (4, 2) T , a2 = (1, 3) T , a3 = (5, 2) T . x = (x1,x2,x3) T. Векторитеa1, a2, a3,, както можете лесно да видите, са линейно независими, така че всеки два от тях могат да бъдат избрани като начална база. Примери за такъв избор са например(2x2)- матрициB1 = [a1, a2], B2 = [a2, a3], B3 = [a1, a3].Тези матрици наистина служат като основа за векторите на матрицатаA.

Чрез разлагане наA=[B, N], матричното уравнениеAx = bсе представя като

или еквивалентно,

Тъй като по дефиниция матрицатаBима обратна матрица, решението на последното уравнение по отношение на векторахB,ще се получи във формата

Като вземем в този изразxN = 0,получаваме основното решение във формата

Ако е неотрицателна, т.е.xB≥ 0, получаваме приемливо основно решение. Това решение съответства на върха на множеството от възможни решения, които могат да бъдат определени като

x 1 = .(4.5)

В този момент стойността на целевата функция еf(x 1 ) = c T x 1 = cB T xB.

Нека разгледаме и трите възможности.

хB = (х1в х2в) Т = В1 -1 b= (0.6, 3.8)Т,

xB = (x2v x3v) T = B2 -1 b= =(16/13,

38/13) T , x 2 = (0, 16/13, 38/13) T ;

xB = (x1v x3v) T = B3 -1 b ==(2, 1) T ,

И трите върха са валидни.

1.5. Табличен симплексен метод (симплексен алгоритъм)

Simplex - методът се основава на итеративен процес на изброяване (или трансформиране) на върховете на областта на възможните решения и проверка на условията за оптималност в тези върхове. Върховете, както е отбелязано по-горе, се генерират с помощта на бази. Табличната версия на алгоритъма е много удобна за машинно броене, тъй като е свързана с трансформирането на таблици - масиви от данни, които съдържат информация за текущата база, основното решение, правилото за спиране и накрая оптималното решение. В процеса на трансформация на таблицата, който е реализация на процедуратапълно елиминиране на Гаус, се формира и информация за двойните променливи на решаваната задача.

Нека проблемът бъде представен в канонична форма

, (5.1)

къдетоcиx савектори с размерност (n x1),т.е. e. sО Е p , хО Е p , А –матрица с размерност(mхп), b – (пх1)– вектор.

Да приемем, че матрицатаAможе да бъде представена катоA=[B, N], където B е (mхm) –матрица с пълен ранг. За простота нека приемем, чеB -е идентичната матрица, т.е.B = I. Това може да стане, например, ако ограниченията на първоначалния проблем саAx ≤ b.В случай на неотрицателен векторb,т.е.b ≥ 0,това предположение помага да се намери първото основно решение във формата

xB = B -! b = I -1 b = b ≥ 0.(5.2)

Тогава първият връх ще бъде

където0p–mобозначава нулевия вектор сp–mкоординати. За изграждане на оригиналната масаозначете сIBиIN,наборите от индекси на вектори отBиN, съответно, и изчислете така наречените симплексни разлики за вектори, принадлежащи наNпо формулата

(СР)j = cj– . (5.4)

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

тогава намереното основно решение е оптимално. Иначе търсенето на решение продължава.

Лесно е да се види, че за всички базисни вектори условието

т.е. векторите отBимат нулев симплекс - разликата на всички етапи на симплексните трансформации.

Нека е необходимо да се реши проблемът

Удобно е следващите действия да се представят като последователност от стъпки на алгоритъма. Състои се от предварителен и основен етап.

Предварителен етап. Представете проблема в канонична форма

Стъпка 1.Разлагане на матрица A. Запишете ограниченията като матрично уравнениеAx = b, x≥ 0 и представете матрицатаAкато

,

избирайки в него(mxm) –матрицаBс пълен ранг. В този случай е удобно да изберете матрицата на идентичностB = [a3, a4, a5] = I,като начална база, следователноN = [a1, a2], IB , IN = .Както можете да видите,B = I –е матрицата на идентичност с размерност(3x3).Ако получаването на основатаBне е възможно, тогава проблемът няма решение.

Стъпка 2.Намиране на основното решение. Началната базаBсъответства на основното решение във формата

Върхът, съответстващ на това основно решение, еx 1=(0, 0, 12, 2, 3) T . Последните три координатиx 1съвпадат със съответните координатиxB,, а първите две координати са равни на нула. Стойността на целевата функция в този момент е

Стъпка 3. Изчисляване на симплекс - разлики и изграждане на правило за спиране.Изчисляване на симплекс - разлики за неосновни вектори отN.Тъй катоIN = ,имаме

(SR)1=c1– ,

(SR)2=c2–.

Лесно е да се види, че поради нулевия векторcB = (0, 0, 0) Tусловието

Тъй като симплекс - разликите(СР)1и(СР)2са положителни, търсенето на оптималното решение продължава.

Стъпка 4. Конструиране и трансформиране на началната таблица Т0.

Първоначалният симплекс - таблица, съответстваща на решаваната задача, е показан на фиг. 2.2.

i0 = 5
J0 = 2
studiopedia

Ориз. 2.2. Оригиналният симплекс е таблица.

Съдържа матриченА,векторb,основно решениеxB = bи така нареченатаиндексна линия,в която първият й елемент е текущата стойност на целевата функцияf(x) = f(xB) = cB T xB,а останалите й елементи са така нареченитеиндекси Dj = - (CP)j, j = 1, …, n,чиято стойност е определена като симплекс - разликата с обратен знак. Цифровата част на симплексна таблица се нарича нейнатаглавна част:и претърпява трансформация от итерация на итерация.

Стъпка 5. Проверка на правилото за спиране

АкоDj ³ 0, j = 1, …, n,стоп; намереното базисно решение е оптимално, а стойността на целевата функция е най-голяма. В този случай и двете стойностиDjса отрицателни. Това означава, че и двете симплексни -разликите(CP)j, j = 1, 2,са положителни, следователно търсенето продължава.

Стъпка 6. Избиране на водеща колона и водещ ред.Водещата колона с индексj0се избира с най-голямата стойност(CP)j > 0.В нашия случай това е(CP)2 = 3,следователноj0 = 2.

.

Съгласно това правило, сред всички релации от типа, къдетоxibса основни променливи (числовите им стойности се съдържат в колонатаb),-са положителни елементи на насочващата колона, се избира най-малката връзка с индексi0. В нашия случай това е редът с индексi0= 5. Ако няма положителни елементи във водещата колона, задачата няма решение, тъй като целевата функция е неограничена.

Изборът на водещия ред и водещата колона съответно с индексиi0иj0съответства на изключването на променливата от основното решение и включването на променливата вместо нея, освен това на новата променлива в базата се присвоява стойност

l0 = .

В текущата таблица елементът се наричаводещ елементи е маркиран с кръгче.

Не намерихте това, което търсихте? Използвайте търсачката: