Студенческий сельскохозяйственный отряд в составе 200 человек закупает продукты: хлеб, мясо, молоко, масло, картофель, сахар, яйца (1 яйцо весом 50г.) по цене соответственно: 30 руб./кг; 200 руб./кг; 25 руб./л; 130 руб./кг; 20 руб./кг; 30 руб./кг; 30 руб./10 шт.
В таблице указано содержание белков, жиров, углеводов в 1 кг продукта и их калорийность.
№ Продукт Белки Жиры Углеводы Калорийность
(ккал/кг)
1 Хлеб г/кг 60 10 450 2000
2 Мясо г/кг 200 100 - 1500
3 Молоко г/кг 50 40 50 600
4 Масло г/кг - 800 - 8000
5 Картофель г/кг 20 - 200 900
6 Сахар г/кг - - 950 4000
7 Яйца г/кг 120 110 10 1500
Суточная норма потребления белков, жиров и углеводов на одного человека составляет соответственно: 120, 140, 550. Калорийность рациона должна быть не менее 5000 ккал. Определить оптимальный план ежедневной закупки продуктов для отряда из условий минимальной стоимости. При необходимости ввести ограничения на потребление некоторых продуктов.
Решение
Формализация задачи
Переменные
Xi – количество килограммов продукта i-го вида для 1 человека в сутки ( 1-хлеб, 2-мясо, 3-молоко, 4-масло, 5-картофель, 6-сахар, 7-яйца), i = 1..7
Целевая функция
Суммарная стоимость продуктов на 1 человека в сутки
(1 яйцо = 50 гр 1 десяток яиц = 500 гр цена за 1 кг яиц = 60 руб.)
30*X1 + 200*X2 + 25*X3 + 130*X4 + 20*X5 + 30*X6 + 60*X7
Ограничения
1) Объем закупаемого продукта Xi неотрицателен:
Xi > = 0, i = 1..7
2) Фактическое потребление питательных веществ (белков, жиров, углеводов) не должно быть ниже нормы (120, 140 и 550 г соответственно)
Калорийность дневного рациона не должна быть ниже нормы (5000 ккал в сутки)
Белки
60*X1 + 200*X2 + 50*X3
+ 20*X5
+ 120*X7 120
Жиры
10*X1 + 100*X2 + 40*X3 + 800*X4
+ 110*X7 140
Углеводы
450*X1
+ 50*X3
+ 200*X5 + 950*X6 + 10*X7 550
Калорийность
2000*X1 + 1500*X2 + 600*X3 + 8000*X4 + 900*X5 + 4000*X6 + 1500*X7 5000
Математическая модель задачи
30*X1 + 200*X2 + 25*X3 + 130*X4 + 20*X5 + 30*X6 + 60*X7 MIN
-260985-6350Xi > = 0, i = 1..7
60*X1 + 200*X2 + 50*X3
+ 20*X5
+ 120*X7 120
10*X1 + 100*X2 + 40*X3 + 800*X4
+ 110*X7 140
450*X1
+ 50*X3
+ 200*X5 + 950*X6 + 10*X7 550
2000*X1 + 1500*X2 + 600*X3 + 8000*X4 + 900*X5 + 4000*X6 + 1500*X7 5000
При решении задачи в такой постановке может получиться, что для минимизации затрат нужно будет закупать только хлеб, масло и сахар, поэтому имеет смысл ввести дополнительные ограничения на минимальное и максимальное содержание продуктов в рационе.
Ограничим суточное потребление на 1 человека: хлеба (X1) – не более 700 г в сутки (1 булка), сахара (X6) – не более 50 г в сутки (2 столовых ложки).
Сделаем необходимым потребление мяса (X2) – не менее 200 г в сутки, молока (X3) – не менее 200 мл в сутки (1 стакан), яиц (X7) – не менее 1 яйца в сутки (50 г).
Тогда с учетом дополнительных ограничений
30*X1 + 200*X2 + 25*X3 + 130*X4 + 20*X5 + 30*X6 + 60*X7 MIN
-262890-25400060*X1 + 200*X2 + 50*X3
+ 20*X5
+ 120*X7 120
10*X1 + 100*X2 + 40*X3 + 800*X4
+ 110*X7 140
450*X1
+ 50*X3
+ 200*X5 + 950*X6 + 10*X7 550
2000*X1 + 1500*X2 + 600*X3 + 8000*X4 + 900*X5 + 4000*X6 + 1500*X7 5000
X1
0,7
X2
0,2
X3
0,2
X6
0,05
X7 0,05
X1 0, X2 0, X3 0, X4 0, X5 0, X6 0, X7 0
В составленной модели:
- в целевой функции отражены денежные расходы на питание 1 человека в день