![]() |
|
|
Курсовая работа: Решение задач линейной оптимизации симплекс – методоми находим оценки Полученные результаты записываем в таблицу 4.1. В первом столбце N таблицы указываются номера строк.
Номера первых m строк совпадают с номерами позиций базиса. Во втором
столбце Сх записываются коэффициенты В результате заполнена таблица 0-й итерации кроме столбца t. Столбцы В, А1,…, An (все m+1 позиций) будем называть главной частью таблицы. Порядок вычислений в отдельной итерации. Пусть ν-я итерация закончена. В результате заполнена таблица ν за исключением последнего столбца t. Каждая итерация состоит из двух этапов. I этап: проверка исследуемого опорного плана на оптимальность. Просматривается (m+1)-я строка
таблицы ν. Если все Если в каждом столбце II этап: построение нового опорного плана с большим значением линейной формы. Определяется вектор Ak, который должен быть введен в базис, из следующего условия
После этого заполняется последний столбец таблицы
ν – столбец t. В него записываются отношения базисных переменных
подлежит исключению из базиса (если t0 достигается на нескольких векторах, то из базиса исключается любой из них). Столбец Ak , отвечающий вектору,
вводимому в базис, и l-я строка, соответствующая вектору После выделения разрешающего элемента заполняется
(ν+1)-я таблица. В l-е позиции столбцов Бх, Сх
вносятся соответственно Ак, Ск, которые в (ν+1)-й
таблице обозначаются как Далее заполняется главная часть (ν+1)-й таблицы. Прежде всего происходит заполнение ее l-й строки в соответствии с рекуррентной формулой
Рекуррентная формула для заполнения i-й строки (ν+1)-й таблицы имеет вид
Здесь
Заполнение главной части (ν+1)-й таблицы завершает (ν+1)-ю итерацию. Последующие итерации проводятся аналогично. Вычисления продолжаются до тех пор, пока не будет получен оптимальный план либо будет установлено, что исследуемая задача неразрешима. Решение исходной задачи Весь процесс решения исходной задачи (2.12) - (2.13) приведен в табл. 4.2. Заполнение таблицы, отвечающей 0-й итерации,
происходит на основе табл. 3.2.1 (см. итерацию 1) следующим образом. Главная
часть таблицы 0-й итерации исходной задачи (за исключением (m+1)-й
строки) полностью повторяет главную часть таблицы заключительной итерации L-задачи
без столбца А9. Также без изменений остается столбец базисных
векторов Бх. Строка С коэффициентов линейной формы исходной задачи и
столбец Сх коэффициентов при базисных переменных заполняются исходя
из (2.12). С учетом новых коэффициентов С пересчитываются значение линейной
формы F и оценки Заполнение таблиц, отвечающих последующим итерациям, происходит в соответствии с описанным выше первым алгоритмом. Таблица 4.2 Решение исходной задачи (2.12) - (2.13) получено за 3
итерации. Оптимальный план ее равен Найденное решение Вернемся к задаче (1.2.1), (1.2.2) со старыми
переменными
и
Таким образом, для получения максимальной цены (142750 руб.) всей продукции необходимо произвести: 450 тыс.л. бензина А из полуфабрикатов в следующих количествах: Алкитата Крекинг-бензина Бензина прямой перегонки Изопентона
Алкитата Крекинг-бензина Бензина прямой перегонки Изопентона 300 тыс.л. бензина В из полуфабрикатов в следующих количествах: Алкитата Крекинг-бензина Бензина прямой перегонки Изопентона 5. Формирование М-задачи Далеко не всегда имеет смысл разделять решение задачи линейного программирования на два этапа – вычисление начального опорного плана и определение оптимального плана. Вместо этого решается расширенная задача (М-задача). Она имеет другие опорные планы (один из них всегда легко указать), но те же решения (оптимальные планы), что и исходная задача. Рассмотрим наряду с исходной задачей (2.1) - (2.3) в канонической форме следующую расширенную задачу (М-задачу):
Здесь М>0 – достаточно большое число. Начальный опорный план задачи (5.1) - (5.3) имеет вид Переменные Таким образом, исходная задача линейного программирования с неизвестным заранее начальным опорным планом сводится к М-задаче, начальный опорный план которой известен. В процессе решения этой расширенной задачи можно либо вычислить оптимальный план задачи (2.1) - (2.3), либо убедиться в ее неразрешимости, если оказывается неразрешимой М-задача. В соответствии с вышеизложенным имеем: требуется решить задачу (2.12), (2.13), записанную в канонической форме. Введем искусственную неотрицательную переменную х9 и рассмотрим расширенную М-задачу
при условиях
где М – сколь угодно большая положительная величина. Как и в L-задаче, добавление только одной искусственной
переменной 6. Решение М-задачи II алгоритмом симплекс-метода Описание II алгоритма Второй алгоритм (или метод обратной матрицы) симплекс
метода основан на ином способе вычисления оценок Рассматривается задача линейного программирования в
канонической форме (2.1) - (2.3). Пусть Х – опорный план с базисом Действительно, зная обратную матрицу и вычислить оценки векторов условий относительно текущего базиса
предварительно определив вектор-строку или
Здесь Оценки
Как и в I алгоритме, вектор, подлежащий исключению из базиса, определяется величиной
Таким образом при втором алгоритме на каждом шаге
запоминаются базисные компоненты
Здесь
Результаты вычислений сводятся в основные таблицы (вида табл. 6.1) и вспомогательную таблицу (вида табл. 6.2); столбцы В, е1, …, еm основных таблиц (все m+1 позиций) называют главной частью этих таблиц. Столбец Аk – разрешающий столбец, строка l – разрешающая строка. Таблица 6.1 Таблица 6.2
Краткое описание алгоритма. 1. Нулевая итерация: а) составляется вспомогательная табл. 6.2, в которую вносятся параметры задачи; дополнительная строка таблицы с номером ν заполняется по мере выполнения ν-й итерации; б) составляется основная табл. 6.1 с номером 0, в
которой заполняются первые m строк, за исключением последних двух столбцов Аk и
t. Элементы 2. (ν+1)-я итерация. Пусть ν-я итерация закончена. В результате заполнена
ν-я основная таблица, за исключением двух последних столбцов, и ν-я
дополнительная строка вспомогательной таблицы. Просматривается эта строка. Если
все
Возможны два случая: все
Решение М-задачи Таблица 6.3 Таблица 6.4 Задача (5.4), (5.5) имеет опорный план Х0 =
(0, 0, 0, Решение М-задачи получено за 5 шагов. Оптимальный план
ее равен Окончательное решение задачи определения плана смешения компонентов полностью повторяет решение, рассмотренное в завершающей части п.4 (см. стр.11-12). 7. Формирование двойственной задачи Произвольной задаче линейного программирования определенным образом соответствует некоторая другая задача линейного программирования. Будем называть ее двойственной, а первоначальную задачу – исходной. Обозначим
Теперь исходная задача (2.1) - (2.3) в канонической форме может быть записана в матричном виде следующим образом. Требуется определить вектор
при условиях AX=B; (7.3)
Тогда двойственная задача – определить вектор f(Y)=YB (7.5) при условиях
Транспонируя обе части неравенства (7.6), записанного
в виде строки, и учитывая
Отметим, что в двойственной задаче переменные yi могут быть и отрицательными. Рассмотрим в качестве исходной задачу (2.12), (2.13). С учетом (7.1) и (7.7) запишем С = (120, 100, 150, 0, 0, 0, 0, 0), B = (
Двойственная задача имеет вид
8. Формирование оптимального решения двойственной задачи на основе теоремы о двойственности Оказывается, что для задач (7.2) - (7.4) и (7.5), (7.6), называемых двойственной парой, справедлива следующая теорема. Теорема (первая теорема о двойственности). Если одна
из задач двойственной пары (7.2) - (7.4) и (7.5), (7.6) имеет решение, то
другая задача также разрешима. При этом для любых оптимальных планов
Если линейная форма одной из задач не ограничена (для F(X) – сверху, для f(Y) - снизу), то другая задача не имеет ни одного плана. Оптимальное решение двойственной задачи может быть найдено на основе следующего следствия из этой теоремы. Следствие. Если вектор Стоит отметить, что в ходе решения исходной задачи
вторым алгоритмом, при каждом шаге вычисляется вектор Пусть двойственная задача имеет вид (7.8), (7.9). Так как исходная задача (2.12), (2.13) имеет решение, то на основании рассмотренной теоремы о двойственности двойственная задача также разрешима. Оптимальным опорным планом исходной является
; Вычислим
На основании следствия из теоремы о двойственности
можно заключить, что 9. Анализ результатов и выводы В данной работе рассматриваются два способа решения исходной задачи линейного программирования. Первый заключается в том, что сначала решается вспомогательная задача (L-задача), позволяющая построить начальный опорный план, затем на основе этого найденного плана решается исходная задача (определяется ее оптимальный план). Второй способ является объединением двух этапов и состоит в решении расширенной задачи (M-задачи), также приводящей к нахождению оптимального плана исходной задачи. Вычислительную основу этих двух способов решения составляют соответственно первый и второй алгоритмы симплекс-метода. Один из параметров, по которому может быть оценен любой итерационный алгоритм – количество шагов, приводящих к решению задачи или установлению ее неразрешимости. Для данной задачи наиболее эффективным методом оказался первый метод(L-задача + исходная задача), т.к. он привел к решению за 4 шага, а второй метод (M-задача) за 5 шагов. Разница в числе шагов, вероятно, обусловлена неоднозначность выбора разрешающего элемента в исходной таблице L-задачи (3.2.1). Сравнение количества вычислений на каждой итерации приводит к следующим оценочным результатам рассматриваемых алгоритмов. Преимущественная часть вычислений на каждом шаге алгоритмов определяется размерностью главной части таблицы (в первом алгоритме) или основной таблицы (во втором алгоритме). В первом случае она имеет размерность (m+1)x(n+1), во втором - (m+1)x(m+1). Даже учитывая, что второй алгоритм требует построения вспомогательной таблицы, он оказывается более компактным. Еще одно несомненное достоинство второго алгоритма заключается в возможности определения оптимального плана двойственной задачи из (m+1)-й строки основной таблицы, соответствующей последней итерации, без всяких дополнительных вычислений. Список литературы Для подготовки данной работы были использованы материалы с сайта http://www.monax.ru |
Страницы: 1, 2
![]() |
||
НОВОСТИ | ![]() |
![]() |
||
ВХОД | ![]() |
|
Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое. |
||
При использовании материалов - ссылка на сайт обязательна. |