Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Формулы преобразований этого метода используются в прямом симплекс-методе решения задачи линейного программирования, приведенной в каноническую форму. На основании этих преобразований осуществляется переход от одного опорного плана к другому, при котором значение целевой функции возрастает (если опорный плансуществует и он невырожденный).
Указанный переход возможен, если известен какой-нибудь исходный опорный план. Если же каноническая форма задачи не имеет исходного опорного плана, то он строится с помощью искусственных переменных. Однако независимо от того, используются искусственные переменные или нет, для решения задачи применяется один и тот же алгоритм симплекс-метода.
Пусть задача в канонической форме имеет исходный опорный план
По определению 2.3 вектор решения X = (b1, b2 ъ......, bт, 0,...,0) является опорным планом задачи (2.21). Этому плану соответствует следующее значение целевой функции:
Для исследования опорного плана на оптимальность и для определения направления его улучшения на основании целевой функции строится «нулевое» приведенное уравнение. Это уравнение получается после исключения базисных переменных из выражения целевой функции.
Подставляя x1, х2, …, хт из системы ограничений (2.21) в целевую функцию, получим «нулевое» приведенное уравнение в следующем виде:
где
Коэффициенты а 0j называются оценками соответствующих небазисных переменных (или оценками оптимальности). Оценки позволяют охарактеризовать опорный план в виде следующих теорем-признаков возможных ситуаций.
ТЕОРЕМА 1. Если то опорный план является оптимальным (признак оптимальности опорного плана).
ТЕОРЕМА 2. Если для некоторого j и все
соответствующие этому индексу j величины , то значение целевой функции не ограничено сверху
на множестве планов.
ТЕОРЕМА 3. Если для некоторых индексов о и для каждого из этих j по крайней мере одно из чисел , то можно перейти к новому опорному плану, при котором значение целевой функции увеличивается.
Вычислительный процесс удобно вести в симплекс-таблицах. Исходная симплекс-таблица для задачи (2.21) с учетом «нулевого» уравнения (2.22) представлена в табл. 2.6. «Нулевое» уравнение записано в нижней части таблицы.
Под симплекс-таблицей понимается табличная форма представления математической модели в канонической форме с опорным планом и оценками оптимальности.
Итак, алгоритм симплекс-метода включает в себя следующие основные шаги.
1. Выбор разрешающего столбца j, для которого . Пусть j=k. Следовательно, в базис вводится вектор коэффициентов переменной хк.
2. Выбор разрешающей строки i=l, по наименьшему отношению элементов опорного плана к положительным элементам разрешающего столбца, т. е. для всех . Следовательно, из базиса исключается переменная xt. Выбранное число ; называется разрешающим элементом.
3. Пересчет всех элементов симплекс-таблицы по формулам Жордана — Гаусса:
— элементы нового опорного плана и новое значение целевой функции вычисляются но формулам:
— остальные элементы по формулам
Новая итерация начинается с п. 1.
В процессе решения в пп. 1 и 2 алгоритма учитываются указанные три признака возможных ситуаций.
Основной алгоритм симплекс-метода можно дополнить еще двумя признаками:
1. Если при выборе разрешающей строки (п. 2) минимальное отношение не единственное, то новый опорный план вырожденный, т. е. одна или несколько базисных переменных равны нулю. В этом случае при переходе от одного опорного плана к другому значение целевой функции может остаться неизменным в течение нескольких итераций.
2.Если в симплекс-таблице, содержащей оптимальный опорный план, хотя бы одна оценка равна нулю (), то оптимальное решение неоднозначно.
Многие задачи линейного программирования в канонической форме не имеют исходного опорного плана. В этом случае применяется метод искусственного базиса.
Пусть следующая задача в канонической форме не имеет исходного опорного плана:
Определение:Задача вида
где М — некоторое достаточно большое положительное число, называется расширенной задачей по отношению к задаче (2.23) — (2.25).
Расширенная задача имеет опорный план b1;...; bт). Базисные переменные , называются искусственными. Так как расширенная задача имеет опорный план, то ее можно решать симплекс-методом.
ТЕОРЕМА 4. Если в оптимальном плане X* расширенной задачи (2.26) — (2.28) значения искусственных переменных , то X* является оптимальным планом задачи (2.23) — (2.25).
ТЕОРЕМА 5. Если в оптимальном плане X* расширенной задачи (2.26) — (2.28) хотя бы одна искусственная переменная отлична от нуля, то система ограничений (2.24) — (2.25) исходной задачи несовместна (область допустимых решений пустая).
Таким образом, теоремы 4 и 5 дополняют алгоритм симплекс-метода новыми условиями, которые учитываются при использовании искусственных переменных в исходной задаче.
II. Практическая часть
1. Задача 1.
‘ В модуле
Public Type struct_tov
tov As String * 1
cost As String * 1
kol As String * 1
country As String * 1
End Type
Dim c As Integer
Dim min, ind_min As Integer
Dim i, i2 As Integer
Private Sub Command1_Click()
Caption = get_cost("E")
End Sub
Public Function get_cost(country As String) As Integer
Dim t As struct_tov
get_cost = 0
Open App.Path & "\db.txt" For Random As #1 Len = Len(t)
c = LOF(1) / Len(t)
For i = 1 To c
Get #1, i, t
If t.country = country Then get_cost = get_cost + CInt(t.kol) * CInt(t.cost)
Next i
Close #1
End Function
2. Задача 2.
Дата публикования: 2015-02-18; Прочитано: 325 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!