Реферат по предмету "Маркетинг"


Симлекс-метод

--PAGE_BREAK--2. Решение различных задач симплекс методом.
Е

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

Запишем ограничения задачи ЛП в таком виде:

A1x1 + A2x2 +. + Anxn +An+1xn+1 +.+ An+mxn+m = A0.

Пусть A1,.,Am-множество линейно независимых векторов.

Тогда уравнение

A1x1*+ A2x2* +. + Anxn* +An+1xn+1* +.+ An+mxn+m* = A0,       (2...2.1)

определяет базисное решение   x1*, x2*,.,xm*,

Предположим, что это решение допустимо, то есть x1*³0, x2*³0,.,xm*³0. Базис {A1,.,Am}образует m-мерное пространство, а потому каждый из векторов Am+1,.,Am+n  единственным образом выражается через этот базис. Если Ar не входит в базис, то

A1x1r + A2x2r +. + Amxmr = Ar,                      (2...2.2)

где xir- соответствующие коэффициенты (i = 1, 2, ..., m).

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

Решение уравнения

A1x1 + A2x2 +. + Amxm + Arxr = A0                (2...2.3)

обозначим как  

Тогда, очевидно:

 .              (2.2.4)

Умножив уравнение (2.2.2) на xr и вычтя полученное уравнение из уравнения (2.2.1), получим

A1(x1*-xrx1r) + A2(x2*-xrx2r) +.+Am(xm*-xrxmr)=A0-xrAr.   (2.2.5)

Сравнив уравнения (2.2.5) и (2.2.4), находим связь нового решения 1,.,m, xr со старым базисным решением x*1,.,x*m:

1=x1*-xrx1r,2=x2*-xrx2r,.,m=xm*-xrxmr  , xr.                  (2.2.6)

Решение (2.2.6), во-первых, не будет базисным, так как содержит

m + 1 переменную, а во-вторых,  будет допустимым не для всех значений xr.

Чтобы новое решение оставалось допустимым, нужно выбрать значение xr таким, чтобы ни одна из величин i = xi* — xrxir (i=1, 2, ..., m) не стала меньше нуля. Следовательно, максимальное значение переменной xr определяется соотношением

xr max =  ,                              (2.2.7)

где xir > 0.

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

Для этого выбираем значения в соответствии с (2.2.7). Тогда новое базисное решение имеет вид

x1* — xr maxx1r;

x2* — xr maxx2r;

xj (опущен)

xr max,

ановыйбазис— (A1, A2, ., Aj-1, Aj+1, ., Am, Ar).

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

Новому ДБР       { x1* — xrx1r, x2* — xrx2r, ., xm* — xrxmr, xr}

соответствует следующее значение целевой функции

z1 = с1(x1*-xrx1r) + с2(x2*-xrx2r) +.+сrxr =

= (с1x1*+с2x2*+.+сmxm*)+xr(сr-с1x1r-.-сmxmr)=

=z0+xr(сr-с1x1r-.-сmxmr),                                           (2.2.8)

где z0 — значение целевой функции  для начального ДБР;

сr-с1x1r -с2x2r —. — сmxmr — симплекс-разность для переменной хr.

Симплекс-разность вычисляют для каждой переменной, не входящей в базисное решение, и выбирают такую небазисную переменную хr, для которой симплекс-разность положительна и максимальна.

Таким образом, алгоритм симплекса-метода состоит из следующих этапов:

1) находят начальный базис и связанное с ним допустимое базисное решение;

2) вычисляют симплекс-разность для каждой переменной, не входящей в базисное решение;

3) вводят в базис наиболее 'выгодную' переменную с максимальной положительной симплексом-разностью; ее значение xrmax определяют из соотношения



для всех xir > 0,

4) выводят из базисного решения переменную xj, соответствующую



а из базиса — вектор A j;

5) переходят к этапу 2 новой итерации.

Этапы 2) — 4) повторяют до тех пор, пока симплекс-разности для всех переменных, не входящих в базис, не станут отрицательными.

Это и есть признак оптимальности текущего базисного решения.

Пример 2.2. Решить симплексом-методом такую задачу:

                                              максимизировать (2x1+5x2)

при ограничениях

x1£400, x2£300, x1+x2£500 .

Расширенная форма задачи имеет вид



Ограничения задачи запишем в виде табл. 2.1.

Первая итерация. 1. Выбрав в качестве начального базиса векторы { A3, A4, A5}, находим первое допустимое базисное решение:

A3x3*+A4x4*+A5x5*=A0,

откудаx3*=400, x4*=300, x5*=500,

2. Записываем каждый из небазисных векторов A1, A2 в виде линейной комбинации базисных {A3, A4, A5}

A3x31+A4x41+A5x51=A1;

A3x32+A4x42+A5x52=A2.

Таблица 2.1

А1

A2

A3

А4

А5

а0

1



1





400



1



1



300

1

1





1

500

Решая эти уравнения, получим

х31=1; x41=0; х51=1; x32=0; х42=1; х52=1.

3. Находим симплекс-разности для небазисных переменных x1 и x2:

с1-с3х31-с4х41- с 5х51= с 1=2;

с 2- с 3х32- с 4х42- с 5х52= с 2=5.

Поскольку с 2> с 1, вводим в базис вектор x2.

4. Определяем, какая переменная выводится из базиса. Для этого находим

х3= х3* — х2х32=х3*;

х4= х4* — х2х42=300-1х2;

х5= х5* — х2х52=500-1х2;



Итак переменная х2 вводится в базис со значением x2*= 300, переменная x4 выводится из базисного решения, а вектор A4- из базиса.

Вторая итерация. 1. Раскладываем каждый из небазисных векторов через базисные {A2,A3,A5}. Базисное решение

x2*=300, х3*=400, х5*=500-300*1=200

Представим каждый из векторов A1, A4, не вошедших в базис, в виде линейной комбинации A2,A3,A5.Так как вектор A4 был выведен из базиса, рассмотрим только вектор A1.

Уравнение будет иметь вид

A2х21+A3х31+A5х51=A1,

откуда х21=0; х31=1; х51=1.

2. Находим симплекс-разность для переменной x1:

с 1- с 2х21- с 3х31- с 5х51= с 1-0-0-0= с 1=2>0.

Итак, переменную х1 можно ввести в базис.

3. Определяем, какую переменную (вектор) следует вывести из базиса. Для этого вычисляем

х2= х2* — х1х21=300-0х1;

х3= х3* — х1х31=400-1х1;

х5= х5* — х1х51=200-1х1;



Следовательно, из базиса выводится вектор х5, из базисного решения — A5.

4. Вычисляем новый ДБР.

Переходим к третьей итерации. Следующие итерации проводятся аналогично.

x1*=200; x2*=300.

Метод полного исключения

Рассмотренный выше алгоритм симплекс-метода неудобен для программирования и решения задач на ЭВМ. Потребовалась его рационализация как по форме представления информации, так и  в способе организации вычислений, чтобы сделать его пригодным для реализации на ЭВМ. С этой целью был разработан табличный вариант симплекс-метода. В его основе лежит метод полного исключения Жордана — Гаусса.

Пусть задана система линейных алгебраических уравнений

 j=1, 2, ., m.

В матричной форме данная система имеет следующий вид:

Ax=A0.

Матрица Ap=[A, A0] называется расширенной матрицей. Метод полного исключения Жордана — Гаусса состоит из конечного числа однотипных итераций и заключается в сведении матрицы к единичному виду. Метод основывается на двух операциях:

1) одну из строк расширенной матрицы умножают на множитель, отличный от нуля;

2) из каждой строки расширенной матрицы вычитают одну строку, умноженную на некоторое число.

Каждое из таких элементарных преобразований ( называемых преобразованием Гаусса) приводит к новой системе линейных уравнений, которая эквивалентна начальной системе.

Первая итерация метода полного исключения.

1. Среди элементов A выбирают произвольный элемент, отличный от нуля. Его называют направляющим элементом итерации. Строку и столбец, содержащие направляющий элемент, называют направляющими.

2. Все элементы направляющей строки расширенной матрицы делят на направляющий элемент. В результате получают направляющую строку с направляющим элементом, равным единице. Далее из элементов каждой строки матрицы A вычитают элементы новой направляющей строки, умноженные на элементы, которые расположены на пересечении данной строки и направляющего столбца.

Матрицу, в которую преобразовалась расширенная матрица Ap после первой итерации, обозначим Ap(1). В ней все элементы направляющего столбца, кроме направляющего элемента ( равного 1), стали нулями. Совокупность элементов первых n столбцов матрицы Ap, лежащих вне направляющей строки и столбца предыдущей (предыдущих) итерации называют главной частью матрицы Ap(1).

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

Если после k-й итерации главная часть матрицы Ap(k) не содержит ни одного элемента или содержит только нули, то процесс заканчивается.

Пусть процесс оборвался после итерации 1. Предположим вначале, что среди строк матрицы A(l) есть такие, которые не были направляющими ни в одной из предыдущих итераций, например, строка с номером i. Тогда очевидно,

aij = 0; j = 1, 2, ., n.

Поскольку для любой строки справедливо

A(i)x = ai0 ,                                     (2.2.9)

то уравнение для і-й строки имеет вид

0x1+0x2+.+0xn=ai0(l).                            (2.2.10)

Если ai0(l)≠0, то уравнение (2.2.10) противоречиво, и данная система уравнений неразрешима.

Если ai0(l)=0, то уравнение (2.2.10) представляет собой тождество и

i-я строка может  быть отброшена.

Перебрав одну за другой все строки матрицы A(l), которые не являлись направляющими, либо устанавливают неразрешимость системы уравнений, либо отбрасывают все нулевые строки.

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

 i=1, 2, .,l.              (2.2.11)

Пусть i-й направляющей строке соответствует i-й направляющий столбец вследствие соответствующего выбора направляющего элемента. Тогда

aij(l)= i=1, 2, ., l.                      (2.2.12)

Следовательно, (2.2.11) можно записать в виде:

xi = ai0(l) —  i=1, 2, ., l,                   (2...2.13)

причем переменные xi ( i =1, ., l) являются базисными, а переменные xj  

( j=l+1, ., n) — небазисными.

При xj = 0 ( j=l+1, ., n) получим одно из базисных решений системы уравнений

xi = ai0(l),  i =1, 2, ., l, xj=0; j=l+1,.,n.

Задавая для xj произвольные значения, получим полное множество решений.

Если xi   - i-я компонента этого решения, то

                          (2.2.14)

Обозначим

x0= (a10, a20,., al0,0,.,0 )

xj= (-a1j, -a2j,., -aij, 0 ,., 0, 1, 0 ,.,0 ), 1 £ j £ n.

                                                                       ­j         ­n

Тогда общее (полное) решение системы линейных уравнений определяется соотношением, аналогичным (2.2.14):

x общ = x0 +                        (2.2.15)

где x0- базисное решение начальной системы уравнений;

 - полное решение соответствующей однородной системы уравнений (то есть при A0=0).

Обозначим расширенную матрицу системы уравнений после k-й итерации через

Ap(k)=[ai0(k), ai1(k),.,ain(k)],i=1,2,.,m.

Пусть aij(k)- направляющий элемент преобразования на (k + 1)-й итерации. Тогда в результате (k + 1)-й итерации метода полного исключения Гаусса получим матрицу Ap(k+1), элементы которой определяются следующими соотношениями:

1) для всех элементов направляющей строки

 l=1, 2,.,n;                         (2...2.16)

2) для элементов направляющего столбца

arj(k+1)=0; r=1,.,n, причем r¹и; aij(k+1)=1;                  (2.2.17)

3) для всех остальных элементов матрицы

                 (2.2.18)

Пример 2.3. Применим метод полного исключения Гаусса для исследования системы уравнений

x1 + 2x2 + x3 + x4 = 3;

2x1 + x2 + x3 + 3x4 = 3;

4x1 + 5x2 + 3x3 + 5x4 = 9.

Расширенная матрица имеет вид:



Первая итерация. В качестве первого направляющего элемента возьмем a11= 1, умножим первую строку матрицы А на 2 и на 4, затем  вычитая результаты из второй и  третьей строк,  получим



Вторая итерация. Поскольку главная часть матрицы Ap(1) содержит ненулевые элементы, продолжим процесс исключения. Выберем элемент a22(1)=-3.

После аналогичных преобразований получим



Как видим, главная часть матрицы Ap(2), состоящая из элементов a33(2) и a34(2), содержит только нули. Следовательно, процесс исключения заканчивается.

Исследуем матрицу A(2). Поскольку третья строка содержит лишь нулевые элементы, то она  может быть  отброшена. Тогда эквивалентная матрица системы уравнений будет иметь вид



Соответственно формулам (2.2.13), (2.2.14) имеем базисное решение

x1*=1; x2*=1; x3=0; x4=0.

Общее решение данной системы имеет такой вид:

X1=1- X2=1- X3= X4=

где a3, a4- произвольные скаляры.

    продолжение
--PAGE_BREAK--


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.