Линейное программирование применяется для решения линейной оптимизационной задачи, поэтому вначале составляется модель линейной оптимизационной задачи в следующей последовательности:
1) записывается вектор X представляющий собой множество линейно зависимых переменных (параметров)
;
2) составляется целевая функция (критерий эффективности) в виде
;
3) записывается система линейных алгебраических неравенств в виде
.
В системе представляет собой ресурсы, - расход j-ых ресурсов на i-ый параметр. Если в системе есть неравенства, то необходимо перейти к равенствам путем введения дополнительных переменных Из системы видно, что число уравнений m всегда меньше числа переменных n.
Целью моделирования является поиск таких значений , при которых целевая функция достигает своего минимума. Если первоначально целевая функция записана под поиск максимума, то необходимо знаки ее переменных сменить на обратные, т.е. записать в виде Ф(-Х).
Цех выпускает валы и втулки. На производство 1 вала рабочий тратит 3 часа, а на производство 1 втулки - 2 часа. От реализации вала предприятие получает прибыль 800 руб., от реализации втулки - 600 руб. Цех должен выпустить не менее 100 валов и не менее 200 втулок. Сколько валов и втулок должен выпустить цех, чтобы получить наибольшую прибыль, если фонд рабочего времени составляет 900 человек - часов?
В качестве переменных (параметров) выбираем: - число валов, - число втулок. Затраты на выпуск 1 вала обозначим =3 час/вал, на выпуск 1 втулки - =2 час/втулка. Прибыль от реализации 1 вала =800 руб./вал, от реализации 1 втулки - =600 руб./втулка. Ресурсы рабочего времени =900 человек - часов. Условия по выпуску валов и втулок: , .
Таким образом, модель запишется в виде:
- множество параметров ;
- ограничения ;
- целевая функция .
Далее систему неравенств сведем к системе равенств:
Симплекс-метод решения задач
линейного программирования
Как правило, в линейной задаче число уравнений меньше числа неизвестных. Следовательно, однозначно можно определить число неизвестных, равное числу уравнений. Остальные неизвестные определить нельзя, поэтому их при решении линейных задач принимают за свободные переменные и приравнивают их к нулю.
Решение линейной задачи симплекс-методом ведется в следующей последовательности:
1. Из вектора переменных размерностью n выбирают переменные, число которых равное числу уравнений ограничений m, их принимают за однозначно определенные (базовые) переменные. Остальные (n-m) переменных принимают за свободные и приравнивают их к нулю.
2. Базовые переменные, исходя из уравнений ограничений, выражают через свободные переменные в виде линейной комбинации
После преобразования оставляется каноническая форма записи модели. Эту запись иногда называют симплекс-планом или опорным планом. Модель записывается в виде следующей системы уравнений:
Для того чтобы проверить отвечает ли составленная система поставленной цели, необходимо полученные значения базисных переменных подставить в целевую функцию:
,
где - значение целевой функции, определяемое и проанализировать полученную целевую функцию. Если в целевой функции все коэффициенты , то опорный план оптимальный. Следовательно,
Если в целевой функции некоторые коэффициенты <0, то план не оптимален. Необходимо строить новый план. Для этого по симплекс-методу одну из свободных переменных (у которой ) необходимо перевести в разряд базисных, а одну из базисных переменных перевести в разряд свободных и составить новый опорный план. Далее процедуру повторяют. Смену переменных выполняют следующим образом. В разряд базисных переводят ту свободную переменную, у которой больше абсолютное значение коэффициента. Затем в выше рассмотренном опорном плане проверяется, какая из базисных переменных при увеличении выбранной свободной переменной быстрее устремляется к нулю. Эту переменную переводят в разряд свободных.
Для задачи, рассмотренной выше, запишем модель в виде:
- целевая функция (критерий эффективности)
;
- ограничения (область определения)
где - неиспользуемый ресурс времени, - дополнительно выпускаемые валы, - дополнительно выпускаемые втулки
Согласно модели в системе число неизвестных n=5, число уравнений m=3. Решаем задачу симплекс-методом.
1. Переменные х4, х5 считаем свободными. В качестве базисных
переменных, выраженных через свободные, возьмем х1, х2, х3. Составим опорный план:
Коэффициенты при х4, х5 отрицательные, следовательно, опорный план не оптимален. Переходим к построению нового опорного плана.
2. Из целевой функции видно, что в разряд базисных целесообразно перевести переменную х4, а х5 оставить свободной. Из числа базисных переменных в разряд свободных целесообразно перевести х3. Тогда новый опорный план будет иметь вид:
Из целевой функции видно, что коэффициент при х5 отрицательный, т.е. план не оптимален. Переходим к составлению нового опорного плана.
3. Из разряда свободных переменных х5 переводим в базисные, а из базисных переменных х4 переводим в свободные. Составим опорный план вида:
Из целевой функции видно, что опорный план оптимальный. Следовательно х1=100, х2=300, х3=0, х4=0, х5=100 и в соответствии с поставленной задачей необходимо выпустить 100 шт. валов и 300 шт. втулок. При этом будут использованы все ресурсы, и прибыль составит 260 тысяч рублей.
Динамическое программирование
Существуют системы, которые под воздействием управления могут, изменяясь по шагам, переходить из начального состояния в конечное состояние . Такая система описывается множеством состояний . В свою очередь каждое состояние представляет собой -мерное подпространство . Система из состояния переходит в следующее или конечное состояние под воздействием управления U, которое представляет собой множество . При этом каждое управление представляет собой -мерное подпространство . В такой системе необходимо выбрать множество управления U таким, чтобы оно с максимальной эффективностью переводило систему из начального состояния S0 в конечное состояние Sn.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.