Фабрика производит три вида продукции: П1, П2 и П3. Процессы производства продукции разных видов имеют отличия. На фабрике есть три цеха: Ц1, Ц2 и Ц3. Для производства продукции П1 необходимы только технологические операции, производимые цехом Ц1, для П2 – Ц1 и Ц3, а для производства П3 необходима полная технологическая цепочка, включающая обработку во всех трех цехах. Причем, если в цехах Ц1 и Ц2 продукция разных видов обрабатывается одинаково, и известна общая производительность этих цехов в единицах обработанной продукции в неделю, то в цехе Ц3 предполагается ручная обработка, причем известны как временные затраты на обработку каждого из видов продукции, так и общий фонд рабочего времени сотрудников цеха в неделю (см. таблицу 1).
Таблица 1. Производительность цехов в неделю:
___________________________________________
|Цех 1, шт| Цех 2, шт | Цех 3, часов |
| | |(П2, П3, общий фонд)|
|_________|___________|____________________|
| 40 | 20 | 8 / 2 / 80 |
|_________|___________|____________________|
Из всех видов материалов, используемых при производстве продукции, ограниченным является только один, поставки его в неделю и потребности для каждого из видов продукции приведены в таблице 2.
Таблица 2. Материалы:
_____________________________________________________________________________
|Поставки в неделю,|Потребление на ед.|Потребление на ед.|Потребление на ед.|
| кг |продукта П1, кг |продукта П2, кг |продукта П3, кг |
|__________________|__________________|__________________|__________________|
| 50 | 0.8 | 0.6 | 0.7 |
|__________________|__________________|__________________|__________________|
Вам даётся цена за единицу каждого вида продукции – значения P1, P2 и P3, а также ожидаемый спрос на каждый вид продукции в неделю – значения D1, D2 и D3. Определите максимальную недельную выручку, которая может получить фабрика.
Примечание
В примере оптимальный план производства – выпускать 30 единиц первой продукции, 10 единиц второй и ноль единиц третьей.
При решении задач методом линейного программирования вы можете воспользоваться библиотеками scipy, cvxopt и linprog для Python, а также языком GNU Octave. Пример решения задачи с использованием linprog можно посмотреть здесь: pastebin.com/qgFix2Qi. Примеры использования SciPy, cvxopt и Octave приведены в методических указаниях.
Для написания и отладки кода можно использовать следующие web-ресурсы:
для Octave/Matlab: www.tutorialspoint.com/execute_matlab_online.php
для Python: http://primat.org/index/0-144