Исходные данные
Сырье |
Расход сырья на тонну продукта, т. |
Максимальный запас, т. |
|
1 |
2 |
||
A |
1,8 |
1,2 |
5,4 |
B |
1,4 |
2,0 |
7,0 |
Изучение рынка сбыта показало, что суточный спрос на товар 1 никогда не превышает спроса на товар 2 более чем на 1,5т. Кроме того, установлено, что спрос на товар 1 никогда не превышает 2т в сутки.
Отпускные цены за тонну составляет 2,0 тыс. руб. и 2,4 тыс. руб. для продуктов 1 и 2 соответственно.
Какое количество продукции каждого вида нужно производить, чтобы получить максимальный доход от реализации.
Процесс построения модели начинают с ответов на следующие вопросы:
-для определения каких величин должна быть построена модель?
-какие ограничения должны быть наложенные на переменные, чтобы выполнить исходные требования задачи?
-в чём состоит цель, для достижения которой из всех допустимых значений переменных нужно выбрать те, которые соответствуют наилучшему (оптимальному) решению задачи?
Ответы на поставленные вопросы проще всего получить с помощью словесной формулировки сущности проблемной ситуации. В данном случае требуется определить объёмы производства каждого продукта, максимизирующие доход от реализации с учётом ограничений на спрос и расход исходных компонентов. Поскольку нужно определить объёмы производства двух продуктов, переменными модели являются:
x1 - суточный объём производства продукта 1;
x2 - суточный объём производства продукта 2.
Так как стоимость 1т продукта 1 равна 2 тыс. руб., суточный доход от её продажи составит 2x1 тыс. руб. Тогда доход от реализации продукта 2 составит 2,4x2 тыс. руб. в сутки. Обозначив через Z общий доход, приходим к формулировке целевой функции: определить значение x1 и x2, максимизирующие величину общего дохода.
В данной задаче нужно учесть ограничения на расход исходного сырья и рыночный спрос на каждый продукт. Первое ограничение состоит в том, что расход каждого исходного компонента для производства обоих продуктов должен быть не больше максимально возможного запаса данного компонента:
|
(8.1); |
|
(8.2). |
Второе ограничение заключается в том, что превышение спроса на продукт 1 относительно спроса на продукт 2 не больше 1,5т в сутки, а спрос на продукт 1 не больше 2т в сутки:
|
(8.3); |
|
(8.4). |
Понятно, что объёмы производства не могут быть меньше нуля. Поэтому вводится условие неотрицательности переменных:
(продукт 1);
(продукт 2).
Рис. 9.2.Ввод исходных данных для задачи 1
Задачи линейного планирования (программирования) мгновенно решаются с помощью надстройки «Поиск решения» Excel. Диалоговое окно на рис.9.2 иллюстрирует процесс ввода информации и решения данной задачи.
Для добавления ограничений используют диалоговое окно, показанное на рис. 9.3, а для анализа результатов - окно на рис. 9.4.
Рис. 9.3. Ввод ограничений на переменные модели
Рис. 9.4.Диалоговое окно для анализа результатов
Оптимальные суточные объемы производства каждого продукта составляют 1,25т. и 2,625т. соответственно, а максимальный доход – 8,8 тыс. руб.
Может возникнуть вопрос, почему модели типа приведенного примера и множество других, относящихся к классу задач ЛП, называются линейными? По той причине, что и входящие в неё целевые функции и ограничения линейны.
Линейность предполагает наличие двух свойств - пропорциональности и аддитивности.
Пропорциональность означает, что вклад каждой переменной в целевую функцию прямо пропорционален величине этой переменной. Аддитивность заключается в том, что целевая функция представляет собой сумму вкладов от различных переменных. Кроме того, левая часть каждого ограничения представляет собой сумму расходов, где каждое слагаемое тоже пропорционально величине соответствующей переменной.
Если, например, предприятие производит два продукта и увеличение сбыта одного из них отрицательно влияет на реализацию другого, то такая модель не обладает свойством аддитивности.
В процессе анализа выявляют чувствительность оптимального решения к определённым изменениям исходной модели. Например, в рассмотренной задаче может представлять интерес, как повлияет на оптимальное решение изменение спроса, запасов исходного сырья, рыночных цен.
При этом статическая модель приобретает определенную динамичность, что свойственно реальным процессам. При отсутствии такого анализа полученное оптимальное (статическое) решение может устареть еще до реализации.
В первую очередь надо найти ответы на два вопроса:
на сколько можно увеличить запас какого-либо ресурса для улучшения полученного оптимального решения?
на сколько можно снизить запас какого-либо ресурса при сохранении полученного оптимального решения?
Поскольку величина запаса каждого ресурса фиксируется в правых частях ограничений, этот вид анализа называется анализом на чувствительность к правой части.
Вначале разделим все ограничения модели на связывающие (активные) и не связывающие (не активные). В нашем примере к связывающим относятся ограничения (1) и (2), которые лимитируют запасы исходного сырья (ресурсов) А и В.
Если ограничение является связывающим, то соответствующий ресурс относится к разряду дефицитных, так как он используется полностью. Остальные ресурсы с не связывающими ограничениями относятся к разряду недефицитных ресурсов, то есть имеющихся в некотором избытке.
Таким образом, при анализе чувствительности к правым частям ограничений определяется:
-предельно допустимое увеличение запаса дефицитного ресурса, позволяющее улучшить найденное оптимальное решение;
-предельно допустимое снижение запаса не дефицитного ресурса, не изменяющее найденное раннее оптимальное решение.
Результаты, полученные во втором случае, особенно важны, когда излишки недефицитного ресурса можно использовать для других целей.
Нужно ли анализировать влияние на оптимум сокращение объёма дефицитных ресурсов и увеличение объёма недефицитных ресурсов, имеющихся в избытке?
Ответ на вторую часть вопроса очевиден: в этом случае избыточный ресурс мы сделали бы ещё более избыточным, что никак не повлияет на прежнее решение.
Первая часть вопроса имеет смысл при возможных недопоставках дефицитного ресурса. Однако, сокращение дефицитного ресурса никогда не улучшает значение целевой функции.
Вариация коэффициентов целевой функции может привести к изменению совокупности связывающих ограничений и, следовательно, статуса того или иного ресурса, то есть сделать недефицитный ресурс дефицитным и наоборот. Поэтому дополнительно исследуют следующие вопросы:
каков диапазон изменения (увеличения или уменьшения) коэффициентов, при котором оптимальное решение не меняется?
насколько следует изменить тот или иной коэффициент, чтобы сделать недефицитный ресурс дефицитным и наоборот?
Структура целевой функции отражает вклад каждого вида производственной деятельности в общий результат. В случае максимума Z величина множителя при каждой переменной характеризует удельные затраты (плата за полезность).
Поскольку для всех направлений деятельности ресурсы ограничены, эффективность отдельного направления зависит и от величины этого множителя и от уровня потребления ресурсов. Поэтому возможны ситуации, когда из-за высокого расхода ресурсов высокоприбыльный вид деятельности использовать нецелесообразно.
Однако, как известно, оптимальное решение задачи линейного программирования существенно зависит от реальной экономической ситуации, складывающейся у предпринимателя. Поэтому всегда требуется логический анализ полученного решения с точки зрения здравого смысла, иначе можно получить абсурдные результаты.
Задача 2. Руководство предприятия планирует провести комплекс организационно-технических мероприятий с целью модернизации производства. Планируемые мероприятия, естественно, предполагают затраты производственных, трудовых и финансовых ресурсов (табл. 9.2).
Таблица 9,2
Исходные данные по проектам
Мероприятия |
Трудовые ресурсы, чел-дней |
Финансовые ресурсы, млн. руб. |
Производственные площади, м.2 |
Экономический эффект, млн. руб. |
Закупка оборудования |
350 |
4 |
130 |
13 |
Текущий ремонт |
250 |
0,9 |
- |
3 |
Монтаж транспортного конвейера |
100 |
0,6 |
300 |
8 |
Установка рельсового крана |
200 |
3 |
150 |
12 |
Ввод системы контроля качества |
130 |
- |
150 |
2,5 |
Разработка АСУП |
800 |
5 |
100 |
15 |
На реализацию проектов предприятие может выделить 1300 чел - дней, 10 млн. руб. и 700м2 производственной площади. С учетом перечисленных ограничений необходимо принять решение, какие проекты следует выбрать для реализации, чтобы экономический эффект был максимальным.
Задача сводится к максимизации целевой функции:
Z =13X1 + 3X2 + 8X3 +12X4 +2.5X5 +15X6,
где под X1, X2, X3… понимается закупка оборудования, текущий ремонт, монтаж транспортного конвейера и так далее.
При следующих ограничениях:
350X1 +250X2 +100X3 + 200X4 +130X5 + 800X6 <= 1300;
4X1 + 0.9X2 +0.6X3 +3X4 +5X6 <=10;
130X1 + 300X3 + 150X4 + 150X5 + 100X6 <=700.
Переменные здесь двоичные, то есть могут принимать одно из двух значений: 1 – проект принимается; 0 - не принимается.
Рис.9,5. Ввод исходных данных для задачи 2
Оптимальное решение получаем при отказе от первых двух проектов и выборе оставшихся четырех. При этом суммарный эффект от внедрения составляет 37,5 млн. руб. (рис.9,5).
Задача 3. Общую сумму инвестиций 120 млн. руб. необходимо распределить между пятью проектами, потребности которых составляют 42, 18, 24, 56, 30 млн. руб. соответственно. Ожидаемый чистый приведенный доход по каждому:80, 65, 90, 210, 150 млн. руб. На каждый проект инвестиции либо выделяются в необходимом объеме, либо вообще не выделяются. Необходимо найти оптимальный вариант распределения инвестиций.
Необходимо найти максимум целевой функции:
Z = 80X1 + 65X2 + 90X3 + 210X4 + 150X5
при ограничениях:
42X1 + 18X2 + 24X3 + 56X4 + 30X5 <= 120,
а переменные двоичные.
Рис.9,5 Ввод исходных данных для задачи 3
Оптимальным вариантом является отказ от первых двух проектов и реализация трех остальных. При этом суммарный эффект составит 450 млн. руб., а суммарные расходы – 110 млн. руб.
Таким образом, типичной задачей оценки приоритетности проектов является выбор наиболее эффективных из них по критерию максимума ЧПС при ограничениях на общий объём инвестиций. Кроме того, могут быть дополнительные ограничения по трудоёмкости и производственным площадям, если проекты реализуются на действующем предприятии.
Для ситуаций с полной определённостью, когда все определяющие факторы достоверно известны, решение задачи не является проблемой: найти максимум целевой функции, которая представляет собой сумму произведений ЧПС по каждому проекту на двоичную переменную, принимающую значения 0 или 1, при соответствующих ограничениях на используемые ресурсы. Но, к сожалению, детерминированные ситуации являются скорее исключением из общего правила.
При решении практических задач в подавляющем большинстве случаев точные значения параметров неизвестны, а полностью или частично описываются с помощью случайных величин.
Если задача относится к классу линейного программирования, то можно использовать результаты анализа устойчивости оптимального решения к изменению параметров модели. Однако такой анализ имеет лишь частный характер и неприменим для задач с булевыми переменными.
Целью стохастического программирования является учёт эффекта неопределённости в явном виде.
Основным принципом для всех моделей стохастического программирования является преобразование исходной задачи в вероятностной постановке в эквивалентную задачу с детерминированной структурой.
В данной работе использовался метод программирования с вероятностными ограничениями, при допущении, что все параметры обладают нормальным распределением с известными математическими ожиданиями и дисперсиями, а корреляция между проектами отсутствует.
В таблице 9.3 приведены исходные данные для выбора оптимального портфеля из шести имеющихся проектов.
Верхние четыре строки содержат статистические характеристики инвестиций по каждому проекту:
К – средний объём требуемых инвестиций, млн. руб.;
D – дисперсия инвестиций;
СКО – стандартное отклонение;
V – коэффициент вариации.
Нижние четыре строки содержат аналогичные показатели для чистого приведенного эффекта в тех же единицах измерения.
Таблица 9.3
