Глава 1. Линейное программирование

Математическое программирование, являющееся одним из направлений исследования операций, изучает задачи поиска экстремума функции нескольких переменных при наличии ограничений, наложенных на эти переменные. Если функция нескольких переменных и все ограничения являются линейными относительно этих переменных, то математическое программирование называется линейным (ЛП). Программированиев данном термине имеет смысл планирования.

Математическое программирование возникло в 30-е годы XX века. Линейное программирование началось с работы (1938 г.) ленинградского математика Л. В. Канторовича, в которой содержались постановка и метод решения задачи о выборе наилучшей производственной программы. В 1975 году Л. В. Канторовича стал лауреатом Нобелевской премии «за вклад в теорию оптимального распределения ресурсов». Независимо линейное программирование начало развиваться и в США. В 1947 году американский учёный Дж. Данциг описал один из основных методов решения задач ЛП, получивший название «симплексный».

Укажем несколько общих ситуаций, в которых линейное программирование применяется часто и эффективно:

· задачи о составлении смеси, цель которых заключается в выборе наиболее экономичной смеси ингредиентов при учете ограничений на физический или химический состав смеси и на наличие необходимых материалов;

· задачи производства, целью которых является подбор наиболее выгодной производственной программы выпуска одного или нескольких видов продукции при использовании некоторого числа ограниченных источников сырья;

· задачи распределения, цель которых состоит в том, чтобы организовать доставку материалов от некоторого числа источников к некоторому числу потребителей так, чтобы оказались минимальными либо расходы по этой доставке, либо время, затрачиваемое на нее, либо некоторая комбинация того и другого. В простейшем виде это задача о перевозках (транспортная задача).

1.1. Формы модели задач линейного программирования

Построение математической модели изучаемого процесса включает в себя следующие этапы:

1) выбор переменных задачи;

2) составление системы ограничений;

3) выбор целевой функции.

Переменными задачи называют величины Глава 1. Линейное программирование - student2.ru , Глава 1. Линейное программирование - student2.ru ,…, Глава 1. Линейное программирование - student2.ru , которые полностью характеризуют изучаемый процесс. Их обычно записывают в виде вектора Глава 1. Линейное программирование - student2.ru .

Система ограничений включает в себя систему уравнений и неравенств, которым удовлетворяют переменные задачи и которые следуют из ограниченности ресурсов или других экономических или физических условий.

Целевой функцией называют функцию переменных задачи, экстремум которой требуется найти.

В общем случае задача ЛП может быть записана в виде:

Глава 1. Линейное программирование - student2.ru , (1.1)

Глава 1. Линейное программирование - student2.ru (1.2)

Глава 1. Линейное программирование - student2.ru , Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru , (1.3)

т.е. требуется найти экстремум целевой функции (1.1) и соответствующие ему значения переменных Глава 1. Линейное программирование - student2.ru при условии, что переменные удовлетворяют системе ограничений (1.2) и условию неотрицательности (1.3).

Приведем математическую модель задачи использования ресурсов.

Для изготовления нескольких видов продукции Глава 1. Линейное программирование - student2.ru , Глава 1. Линейное программирование - student2.ru ,…, Глава 1. Линейное программирование - student2.ru используют Глава 1. Линейное программирование - student2.ru видов ресурсов Глава 1. Линейное программирование - student2.ru , Глава 1. Линейное программирование - student2.ru ,…, Глава 1. Линейное программирование - student2.ru (например, различные материалы, электроэнергию и т.д.). Объём каждого вида ресурсов ограничен и известен: Глава 1. Линейное программирование - student2.ru . Известно также Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru количество каждого Глава 1. Линейное программирование - student2.ru -го вида ресурса, расходуемого на производство единицы Глава 1. Линейное программирование - student2.ru -го вида продукции. Кроме того, известна прибыль, получаемая от реализации единицы каждого вида продукции Глава 1. Линейное программирование - student2.ru . Условие задачи можно представить в виде табл. 1.1.

Таблица 1.1

Вид ресурсов Объём ресурсов Глава 1. Линейное программирование - student2.ru
Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru
Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru . . . . . . . . . . . . . . . . . . Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru
Прибыль Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru . . . Глава 1. Линейное программирование - student2.ru

Пусть Глава 1. Линейное программирование - student2.ru Глава 1. Линейное программирование - student2.ru количество каждого вида продукции, которое необходимо произвести. Для первого ресурса имеет место неравенство-ограничение

Глава 1. Линейное программирование - student2.ru .

Аналогичные неравенства будут и для остальных видов ресурсов. Следует учитывать, что все значения Глава 1. Линейное программирование - student2.ru , Глава 1. Линейное программирование - student2.ru .

Общая прибыль, получаемая от реализации всей продукции может быть представлена как функция Глава 1. Линейное программирование - student2.ru , для которой нужно найти максимальное значение. Таким образом, математическая модель задачи использования ресурсов запишется в виде:

Глава 1. Линейное программирование - student2.ru ,

Глава 1. Линейное программирование - student2.ru (1.4)

Глава 1. Линейное программирование - student2.ru , Глава 1. Линейное программирование - student2.ru .

Пример 1.1. Фирма производит две модели А и В сборных книжных полок. Их производство ограничено наличием сырья (высококачественных досок) и временем машинной обработки. Для каждого изделия модели А требуется 3 Глава 1. Линейное программирование - student2.ru досок, а для изделия модели В – 4 Глава 1. Линейное программирование - student2.ru . Фирма может получить от своих поставщиков до 1700 Глава 1. Линейное программирование - student2.ru досок в неделю. Для каждого изделия модели А требуется 12 мин. машинного времени, а для изделия модели В – 30 мин. В неделю можно использовать 160 ч машинного времени. Сколько изделий каждой модели следует фирме выпускать в неделю, если каждое изделие модели А приносит 2 дол. прибыли, а каждое изделие модели В – 4 дол. прибыли?

Составим математическую модель. Пусть Глава 1. Линейное программирование - student2.ru количество выпущенных за неделю полок модели А, а Глава 1. Линейное программирование - student2.ru количество выпущенных за неделю полок модели В. Еженедельная прибыль выражается целевой функцией Глава 1. Линейное программирование - student2.ru . Ограничение, наложенное на объём используемого сырья, выражается неравенством Глава 1. Линейное программирование - student2.ru , а на количество машинного времени – Глава 1. Линейное программирование - student2.ru . Задача состоит в том, чтобы найти наилучшие значения Глава 1. Линейное программирование - student2.ru и Глава 1. Линейное программирование - student2.ru . Очевидно, наилучшими для данной задачи являются такие значения, которые максимизируют еженедельную прибыль.

Итак, нужно максимизировать функцию Глава 1. Линейное программирование - student2.ru при следующей системе ограничений:

Глава 1. Линейное программирование - student2.ru

Наши рекомендации