Курсовая работа: Использование среды MatLAB для решения линейной программы

Xj ³ 0, j=1,…,n(2.3)

Предположим, что нам удалось найти опорный план X0 , в котором, например, первые m компонент отличны от нуля:


X0 =(X1 0 ,X2 0 ,…,Xm 0 , 0, …, 0), (2.4)

и соответствующий базис Б=(A1 ,A2 ,…,Am ).

Попытаемся выбрать другую систему базисных векторов с целью построения нового опорного плана, в котором k-я переменная (k>m) принимает значениеQ >0:

X(Q) = (X1 (Q), X2 (Q),…,Xm (Q), 0, …,Q, … 0) (2.5)

Подставляя (2.4) в (2.2), имеем

(2.6)

Подставив (2.5) в (2.2), получаем

(2.7)

Разложим вектор Ak по векторам исходного базиса

(8)

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

Подставляя (2.6) и (2.8) в (2.7), получаем

, (2.9)

откуда имеем

(2.10)

Так как система уравнений (2.10) имеет единственное решение, то получаем представление первых mкомпонент нового плана

(2.11)

Естественно потребовать неотрицательность компонент нового плана. Так как нарушение неотрицательности в (2.11) может возникнуть лишь при Zjk >0, то значение Q нужно взять не превышающим наименьшего из отношений к положительным Zjk .

Если к тому же учесть, что число положительных (базисных) компонент опорного плана должно оставаться равным m, то одну из первых m (ненулевых) компонент исходного плана обращаем в нуль выбором


(2.12)

Подставляя (2.11) в (2.1), имеем

(2.13)

Если обозначить

, (2.14)

, (2.15)

то (2.13) примет вид

(16)

К-во Просмотров: 322
Бесплатно скачать Курсовая работа: Использование среды MatLAB для решения линейной программы