Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Постановка задач линейного программирования
Методы линейного программирования оказываются весьма эффективными при исследовании операций, в том числе технологических процессов. Термин " программирование" в данном случае следует понимать как планирование, и это определяет характер принимаемых решений и рассматриваемых задач. Метод решения задач линейного программирования и их результатом являются поиск и определение оптимальных вариантов, приводящих к получению экстремальных значений целевых функций, в том числе при поиске оптимальных решений, связанных с эффективным использованием ограниченных материальных, энергетических, трудовых и иных ресурсов промышленного производства. Рассмотрим постановку задачи линейного программирования на конкретном примере. Упражнение №7. Предприятие производит две модели набора для ванной комнаты из природного декоративного камня. Назовем их соответственно моделями А и Б. Производство моделей ограничено сырьем и временем машинной обработки. Для каждого комплекта модели А требуется 3 м2 полированного камня, для модели Б – 4 м2. Предприятие может получить от поставщиков не более 1700 м2 камня в неделю. Для каждого комплекта модели А требуется 12 минут машинного времени, модели Б – 30 минут. В неделю можно использовать не более 160 часов машинного времени. Сколько комплектов моделей А и Б следует выпускать предприятию в неделю, если каждая модель А приносит 2 тысячи рублей прибыли, а каждая модель Б приносит 4 тысячи. Обозначим через Х1 и Х2 количество моделей А и Б, которые следует выпускать в неделю. Решение задачи как раз и состоит в том, чтобы найти их наилучшие (оптимальные) значения Очевидно, что оптимальными для данных условий задачи будут значения Х1 и Х2, которые максимизируют еженедельную прибыль предприятия Р=2Х1+4Х2, то есть в качестве целевой функции выступает еженедельная прибыль предприятия. Как же можно решать задачи подобного типа? Если вспомнить классическую теорию оптимизации функций нескольких переменных, то для этого необходимо найти значения аргументов, при которых производная от функции по переменным равна нулю или не существует. В нашем случае этого явно недостаточно, так как первые производные функции прибыли по переменным X1 и X2 постоянны и равны двум и четырем. Чтобы увеличить прибыль, следует увеличивать одновременно как Х1, так и Х2. Но (а в этом и заключается вся проблема) – значения переменных нельзя увеличивать неограниченно из-за лимитов сырья и машинного времени. Поскольку Х1 и Х2 выражают недельные объемы производства, то
Х1≥ 0, Х2≥ 0. (28)
Ограничения на сырье и машинное время могут быть записаны следующим образом: · ограничение на машинное время: (12/60)X1+(30/60)X2≤ 160, или 0, 2X1+0, 5X2≤ 160, или 2Х1+5Х2≤ 1600. (29)
· Ограничение на сырье: 3Х1+4Х2≤ 1700. (30)
Следовательно, задача состоит в том, чтобы найти значения Х1 и Х2, удовлетворяющие условиям (28 – 30) и максимизирующие целевую функцию Р=2Х1+4Х2. Так формулируется типичная двумерная (двух переменных) задача линейного программирования, признаками которой являются: · целевая функция является линейной относительно своих переменных, · ограничения на решение задачи также линейны. Для двумерной задачи наглядным является графическое ее решение (рис. 7).
Рис. 7. Область допустимых значений для упражнения № 7 Условия неотрицательности переменных позволяют рассматривать только положительный квадрант, границы допустимых решений в котором определяются прямыми: 2Х1+5Х2=1600; 3Х1+4Х2=1700. При оптимальном решении ограничения (28-30) превращаются в равенства, что означает полное использование сырья и машинного времени. Стрелки на прямых указывают, в какую сторону от прямых выполняются ограничения. Область OABC содержит все допустимые решения, для которых соблюдаются граничные условия. Штриховыми линиями на рис. 7 показаны прямые 2Х1+4Х2=200 и 2X1+4Х2=800. Эти прямые параллельны (предлагается читателю самостоятельно доказать это) и представляют собой линии уровня равных значений прибыли (изолинии) со значениями 200 и 800 соответственно. Из рис. 7 ясно, что прибыль возрастает по мере того, как изолинии удаляются от начала координат. Иными словами, вектор с компонентами (2, 4) (значения производных от прибыли по обеим переменным) указывает направление возрастания целевой функции: вектор перпендикулярен изолиниям прибыли. Изолиния с максимальным значением прибыли, имеющая хотя бы одну точку с допустимой областью OABC, является прямой, проходящей через точку В, в которой Р=1400.Точка В (Х1=300, Х2=200) соответствует оптимальному решению задачи. Значения переменных Х1 и Х2 могут быть найдены из совместного решения равенств: 2Х1+5Х2=1600, 3Х1+4Х2=1700. Рассматриваемая задача может быть расширена для трех и более моделей наборов ванных комнат, могут быть введены дополнительные ограничения, например на упаковку, складирование и т.п. Но и в этом случае задача по -прежнему будет заключаться в максимизации линейной функции от некоторых неотрицательных переменных с линейными ограничениями в форме неравенств. Общая задача линейного программирования состоит в максимизации (минимизации) линейной функции Z=c1X1+c2X2+...+cnXn (31) от n переменных X1, X2,.., Xn, удовлетворяющих условиям неотрицательности
X1≥ 0,..., Xn≥ 0 (32) и m линейными ограничениями a11X1+a12X2+...+a1nXn≤ (=, ≥ ) b1 a21X1+a22X2+...+a2nXn≤ (=, ≥ ) b2 (33) .....................................…………… am1X1+am2X2+...+amnXn≤ (=, ≥ ) bm
Значения aij, bi, ci предполагаются известными. Популярное:
|
Последнее изменение этой страницы: 2016-03-22; Просмотров: 1294; Нарушение авторского права страницы