Разработка системы планирования смен для медицинского персонала
30 000 руб. за проект
Описание проекта:
Требуется разработать программное решение для автоматизированного распределения смен медицинского персонала. Система должна учитывать переменное количество работников, необходимых в разные часы суток, а также особенности смен, включая перерывы на обед и ночные смены.
Основные требования:
Сроки: 2 дня с момента начала работы
Процесс отбора:
Условия для тестов:
1. Необходимо составить график работы посменно( кол-во работников на каждую смену) чтобы соответствовать требуемому кол-ву работников, который из себя представляет требование по кол-ву работников на каждый час в сутках например: необходимое_кол-во_работников = [
{'day_1': [1, 1, 3, 3, 2, 4, 3, 3, 2, 3, 4, 7, 9, 15, 19, 16, 11, 5, 7, 9, 6, 4, 3, 2]},
{'day_2': [1, 1, 2, 2, 1, 2, 1, 3, 2, 3, 4, 7, 9, 19, 18, 18, 5, 8, 7, 9, 6, 4, 3, 2]},
{'day_3': [1, 1, 1, 1, 1, 1, 3, 3, 2, 3, 4, 9, 9, 12, 12, 16, 14, 5, 7, 5, 4, 3, 2, 2]}
]
где длина массива равна 24, т.е. для каждого элемента массива и его индекса соответствует час в сутках 0,1,2..22,23
2. Смены пересекаются между собой по времени т.е. смена1 - 8:00 - 14:00, смена2 - 10:00 - 16:00
примеры смен:
[('06:00', '14:00'),
('08:00', '16:00'),
('12:00', '20:00'),
('16:00', '00:00'),
('18:00', '02:00'),
('23:00', '06:00')]
Также у каждой смены есть несколько вариантов обедов - например у смены 06:00 - 14:00 - варианты могут быть следующие - 9:00 - 9:30; 9:15 - 09:45, 9:30 - 10:00, 9:45 - 10:15, 10:00 - 10:30 и тд.
Но у других смен могут обеды быть и по 30 минут
Также важное условие что смены могут переходить через полночь.
Отчет:
Требуется разработать программное решение для автоматизированного распределения смен медицинского персонала. Система должна учитывать переменное количество работников, необходимых в разные часы суток, а также особенности смен, включая перерывы на обед и ночные смены.
Основные требования:
- Входные данные:
- Массив необходимое_кол-во_работников, содержащий информацию о требуемом количестве работников для каждого часа в течение суток (24 элемента в массиве для каждого часа). Примеры данных предоставлены в описании задачи.
- Список смен с указанием времени начала и окончания, а также варианты времени обеденных перерывов. Примеры смен также предоставлены.
- Функциональные требования:
- Программа должна распределять работников по сменам таким образом, чтобы максимально приблизиться к требуемому количеству работников в каждый час.
- Учитывать пересечение смен и возможность смен, переходящих через полночь.
- Предусмотреть учёт обеденных перерывов в расписании смен.
- Выходные данные:
- График смен для каждого работника с указанием времени начала и окончания смены, а также времени обеденного перерыва.
- Отчёт о соответствии распределения смен требуемому количеству работников по часам.
- Язык программирования: Python (предпочтительно) или любой другой по согласованию.
- Рекомендуется использование библиотек для оптимизации и работы с данными, таких как pulp, Pandas, NumPy, SciPy или:
- Простой пользовательский интерфейс для ввода исходных данных и просмотра результатов (может быть реализован в виде консольного приложения или простого веб-интерфейса).
- Документация по коду и инструкции по использованию программы.
Сроки: 2 дня с момента начала работы
Процесс отбора:
- Краткое описание вашего опыта работы с подобными задачами.
- Предварительный план реализации проекта.
Условия для тестов:
1. Необходимо составить график работы посменно( кол-во работников на каждую смену) чтобы соответствовать требуемому кол-ву работников, который из себя представляет требование по кол-ву работников на каждый час в сутках например: необходимое_кол-во_работников = [
{'day_1': [1, 1, 3, 3, 2, 4, 3, 3, 2, 3, 4, 7, 9, 15, 19, 16, 11, 5, 7, 9, 6, 4, 3, 2]},
{'day_2': [1, 1, 2, 2, 1, 2, 1, 3, 2, 3, 4, 7, 9, 19, 18, 18, 5, 8, 7, 9, 6, 4, 3, 2]},
{'day_3': [1, 1, 1, 1, 1, 1, 3, 3, 2, 3, 4, 9, 9, 12, 12, 16, 14, 5, 7, 5, 4, 3, 2, 2]}
]
где длина массива равна 24, т.е. для каждого элемента массива и его индекса соответствует час в сутках 0,1,2..22,23
2. Смены пересекаются между собой по времени т.е. смена1 - 8:00 - 14:00, смена2 - 10:00 - 16:00
примеры смен:
[('06:00', '14:00'),
('08:00', '16:00'),
('12:00', '20:00'),
('16:00', '00:00'),
('18:00', '02:00'),
('23:00', '06:00')]
Также у каждой смены есть несколько вариантов обедов - например у смены 06:00 - 14:00 - варианты могут быть следующие - 9:00 - 9:30; 9:15 - 09:45, 9:30 - 10:00, 9:45 - 10:15, 10:00 - 10:30 и тд.
Но у других смен могут обеды быть и по 30 минут
Также важное условие что смены могут переходить через полночь.
Отчет:
- Фрилансер должен предоставить отчет, демонстрирующий, как расписание соответствует требуемому количеству работников. Отчет должен включать таблицы или графики, показывающие распределение работников по часам для каждого дня.
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.