Задача планирования рабочего графика
Вам нужно нанять сотрудников для работы на складе. Каждый сотрудник работает 5 дней подряд, после чего получает два выходных. В таблице ниже указано примерное количество сотрудников, необходимых на каждый день. Ваша цель — нанять минимальное количество сотрудников, достаточное для выполнения рабочей нагрузки каждого дня.
Ожидаемая нагрузка
| День недели | Необходимо сотрудников |
|---|---|
| 0 = Понедельник | 31 |
| 1 = Вторник | 45 |
| 2 = Среда | 40 |
| 3 = Четверг | 40 |
| 4 = Пятница | 48 |
| 5 = Суббота | 30 |
| 6 = Воскресенье | 25 |
- Модуль pulp уже импортирован, а модель инициализирована. Переменная
daysтакже определена заранее — это список чисел от 0 до 6.
Это упражнение является частью курса
Аналитика цепочек поставок на Python
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# The class has been initialize, and days defined
model = LpProblem("Minimize Staffing", LpMinimize)
days = list(range(7))
# Define Decision Variables
x = LpVariable.dicts('staff_', ____, lowBound=0, cat=____)