Применение методов линейного программирования
Автор работы: Пользователь скрыл имя, 08 Декабря 2010 в 08:31
Описание работы
Цель данного курсового проекта - составить план производства требуемой продукции, обеспечивающий максимальную прибыль от выпускаемой продукции, свести данную задачу к задаче линейного программирования, решить её симплекс - методом и составить программу для решения задачи этим методом на ЭВМ.
Файлы: 1 файл
Бенько.doc
— 1.27 Мб (Скачать файл)Математическая модель выражает существенные черты объекта или процесса языком уравнений и других математических средств. Огромный толчок развитию математическому моделированию дало появление ЭВМ, хотя сам метод появился тысячи лет назад.
Понятие
«аналитическое» решение и «
Всё чаще компьютеры при математическом моделировании используются не только для численных расчётов, но и для аналитических преобразований.
Результат аналитического исследования часто выражен в столь сложной форме, что при взгляде на неё не складывается восприятие описываемого ею процесса. Эту формулу можно протабулировать, представить графически, проиллюстрировать в динамике, то есть проделать то, что называется визуализацией абстракции.
2 Симплекс метод решения задач линейного программирования
Симплекс метод - универсальный метод для решения линейной системы уравнений или неравенств и линейного функционала.
Для привидения системы ограничений неравенств к каноническому виду, необходимо в системе ограничений выделить единичный базис.
- Ограничения вида «£»- ресурсные ограничения. Справа находится то что мы используем на производстве, слева - то что получаем. При таких ограничения вводят дополнительные переменные с коэффициентом «+1», образующие единичный базис. В целевую функцию эти переменные войдут с коэффициентом «0».
- Ограничения вида «=». Часто бывает, что несмотря на то что ограничения имеют вид равенства, единичный базис не выделяется или трудно выделяется. В этом случае вводятся искусственные переменные для создания единичного базиса - Yi. В систему ограничений они входят с коэффициентом «1» , а в целевую функцию с коэффициентом «M», стремящимся к бесконечности (при Fmin - «+M», при Fmax - «-M»).
- Ограничения вида «³» - Плановые ограничения. Дополнительные переменные (X), несущие определенный экономический смысл - перерасход ресурсов или перевыполнение плана, перепроизводство, добавляются с коэффициентом «-1», в целевую функцию - с коэффициентом «0». А искусственные переменные (Y) как в предыдущем случае.
Алгоритм симплекс метода.
(первая симплекс таблица)
Пусть система приведена к
X1+ q1,m+1 Xm+1 + …. + q1,m+n Xm+n = h1
X2+ q1,m+1 Xm+1 + …. + q1,m+n Xm+n = h1
X3+ q1,m+1 Xm+1 + …. + q1,m+n Xm+n = h1
……………………………………………………………….
Xm+
qm,m+1 Xm+1 + …. + qm,m+n Xm+n =hm
В ней m базисных переменных, k свободных переменных. m+k=n - всего переменных.
Fmin= C1X1+ C2X2+ C3X3+....+ CnXn
Все hi должны быть больше либо равны нулю, где i=1,2...m. На первом шаге в качестве допустимого решения принимаем все Xj=0 (j=m+1,m+2,...,m+k). При этом все базисные переменные Xi=Hi.
Для дальнейших рассуждений вычислений будем пользоваться первой симплекс таблицей (таблица 3.1).
Таблица 1.
Б |
H | C1 | C2 | … | Cm | Cm+1 |
… | Cm+k | |
| X1 | X2 | … | Xm | Xm+1 | … | Xm+k | |||
C1C2 C3 : : Cm |
X1X2 X3 : : Xm |
h1h2 h3 : : hm |
1
0 0 : : 0 |
0
1 0 : : 0 |
:
: : : : : |
0
0 0 : : 0 |
q1,m+1
q2,m+1 q3,m+1 : : qm,m+1 |
:
: : : : : |
q1,m+k
q2,m+k q3,m+k : : qm,m+k |
| F= | F0 | D1 | D2 | … | Dm | Dm+1 | … | Dm+k |
Первый столбец- коэффициенты в целевой функции при базисных переменных.
Второй столбец - базисные переменные.
Третий столбец - свободные члены (hi³0).
Самая верхняя строка - коэффициенты при целевой функции.
Вторая
верхняя строка - сами переменные, входящие
в целевую функцию и в систему
ограничений.
Основное поле симплекс метода - система коэффициентов из уравнения.
Последняя
строка - служит для того, чтобы ответить
на вопрос: «оптимален план или нет».
Для первой итерации F0= å ci*hi.
D1, D2, D3,..., Dm - оценки они рассчитываются по формуле:
D
j = å ciqij-cj.
Индексная строка позволяет нам судить об оптимальности плана:
- При отыскании Fmin в индексной строке должны быть отрицательные и нулевые оценки.
- При отыскании Fmax в индексной строке должны быть нулевые и положительные оценки.
Переход ко второй итерации:
Для этого отыскиваем ключевой (главный) столбец и ключевую (главную) строку.
Ключевым столбцом является тот в котором находится наибольший положительный элемент индексной строки при отыскании Fmin или наименьший отрицательный элемент при отыскании Fmax.
Ключевой строкой называется та, в которой содержится наименьшее положительное частное от деления элементов столбца H на соответствующие элементы ключевого столбца.
На пересечении строки и столбца находится разрешающий элемент.
На
этом этапе осуществляется к переходу
к последующим итерациям.
Переход к итерациям:
- Выводится базис ключевой строки, уступая место переменной из ключевого столбца со своим коэффициентом.
- Заполняется строка вновь введенного базиса путем деления соответствующих элементов выделенной строки предыдущей итерации на разрешающий элемент.
- Если в главной строке содержится нулевой элемент, то столбец, в котором находиться этот элемент переноситься в последующую итерацию без изменения.
- Если в главном столбце имеется нулевой элемент, то строка, в которой он находиться переноситься без изменения в последующую итерацию.
- Остальные элементы переносятся по формуле:
(Вторая симплекс таблица)
При использовании искусственного базиса необходимо добиваться выхода искусственных переменных из базиса и введение в него независимых переменных. Для этой цели можно также использовать симплекс метод, причем решение распадается на две фазы:
- Построение искусственного базиса и оптимизация функции суммы искусственных переменных, т.е. F0=Y1+Y2+…+Yn = 0 (F®min). Если при этом F0=0, то искусственный базис мы вывели из состава переменных, переходим ко второй фазе – решаем задачу по первой симплекс таблице с действительными переменными. Если же F0¹0, т.е. искусственный базис не выведен из состава переменных – ОЗЛП решений не имеет.
- Решение преобразованной системы ограничений с заданной целевой функцией и действительными переменными. При этом столбцами искусственных переменных в симплекс методе пренебрегаем.
Замечания:
- При решении задач на max с искусственным базисом следует переходить к решению на min, меняя лишь только целевую функцию:
Fmax = - Fmin.
- При решении ЗЛП с искусственным базисом особое внимание следует обратить на вычисление элементов индексных строк.
a) Для столбцов X вычисление элементов идет по формулам:
D j = å qij.
å yi = y1+y2+…+yR.
åHi=F0.
Примечание:
только для строк Y.
б) Для столбцов Y работает старая формула:
D
j = å ciqij-cj.
2. Теоретическая часть
Математические модели
Математическая модель — приближенное описание объекта моделирования, выраженное с помощью математической символики.
Математические
модели появились вместе с математикой
много веков назад. Огромный толчок развитию
математического моделирования придало
появление ЭВМ. Применение вычислительных
машин позволило проанализировать и применить
на практике многие математические модели,
которые раньше не поддавались аналитическому
исследованию. Реализованная на компьютере
математическая модель называется компьютерной
математической моделью, а проведение целенаправленных
расчетов с помощью компьютерной модели называется
Этапы компьютерного математического моделирования изображены на рисунке (1). Первый этап —определение целей моделирования. Эти цели могут быть различными:
- модель нужна для того, чтобы понять, как устроен конкретный объект, какова его структура, основные свойства, законы развития и взаимодействия с окружающим миром (понимание);
- модель нужна для того, чтобы научиться управлять объектом (или процессом) и определить наилучшие способы управления при заданных целях и критериях (управление);
- модель нужна для того, чтобы прогнозировать прямые и косвенные последствия реализации заданных способов и форм воздействия на объект (прогнозирование).
- Построение математической модели. На этом этапе происходит переход от абстрактной формулировки модели к формулировке, имеющей конкретное математическое представление. Математическая модель — это уравнения, системы уравнений, системы неравенств, дифференциальные уравнения или системы таких уравнений .
Классификация математических моделей
В основу классификации математических моделей можно положить различные принципы. Можно классифицировать модели по отраслям наук (математические модели в физике, биологии, социологии и т.д.). Можно классифицировать по применяемому математическому аппарату (модели, основанные на применении обыкновенных дифференциальных уравнений, дифференциальных уравнений в частных производных, стохастических методов, дискретных алгебраических преобразований и т.д.).
Наконец,
если исходить из общих задач моделирования
в разных науках безотносительно
к математическому аппарату, наиболее
естественна такая классификация:
● дескриптивные (описательные) модели;
● оптимизационные модели;
● многокритериальные модели;
● игровые модели.
Рис. (1).Блок схема
математического моделирования.
2.1. Элементы теории матричных игр.
СВЕДЕНИЕ МАТРИЧНОЙ ИГРЫ К ЗАДАЧЕ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
Предположим, что цена игры положительна (u > 0). Если это не так, то согласно свойству 6 всегда можно подобрать такое число с, прибавление которого ко всем элементам матрицы выигрышей даёт матрицу с положительными элементами, и следовательно, с положительным значением цены игры. При этом оптимальные смешанные стратегии обоих игроков не изменяются.