인력 스케줄링 요구가 고도로 관련되고 정교한 모든 산업의 간호 스케줄을 종합하는 것은 스케줄러에게 제기되는 장애물 측면에서 자체 리그에 있습니다.
간병 일정 템플릿은 만성적인 근로자 부족이 있고 하루 24시간 연중무휴 보장이 필요한 업계에서 특히 구하기 어렵습니다.
관리자는 다양한 기술과 자격을 갖춘 시간제 및 전일제 간호사를 혼합하여 다루고 있습니다. 그리고 모든 실질적인 어려움 외에도 뛰어난 일정을 만드는 것을 중요하게 만드는 또 하나의 요소가 있습니다. 바로 환자 치료입니다.
이러한 요구 사항을 모두 충족하는 간호 일정 템플릿을 만드는 것은 쉽지 않지만 근무 일정 프로세스를 개선하기 위해 수행할 수 있는 몇 가지 작업이 있습니다. 여기에서 시작해야 합니다.
간호사 일정 문제 구현
병원 감독관은 다음 조건에 따라 XNUMX명의 간호사에 대한 XNUMX일 일정을 개발해야 합니다.
- 매일 XNUMX시간씩 XNUMX교대로 나뉩니다.
- 매일 한 명의 간호사가 각 교대조에 배정되며 한 번에 한 교대조 이상 근무하는 간호사는 없습니다.
- XNUMX일 동안 각 간호사는 최소 XNUMX교대로 할당됩니다.
다음 부분에서는 간호사 일정 문제에 대한 해결책을 제안합니다.
1. 라이브러리 가져오기
아래 코드는 필요한 라이브러리를 가져옵니다.
2. 데이터
아래의 다음 코드는 이 문제를 해결하기 위해 더미 데이터를 생성합니다.
3. 모델 생성
아래의 다음 코드는 모델을 생성합니다.
4. 변수 생성
아래 코드는 문제에 대한 변수 배열을 생성합니다. 배열은 간호사에 대한 교대 할당을 정의합니다.
교대조 s가 d일에 간호사 n에게 할당되면 shifts[(n, d, s)] = 1이고 그렇지 않으면 0입니다.
5. 간호사에게 교대 근무 배정
그런 다음 다음 사항을 염두에 두고 간호사를 교대조에 할당하는 방법을 설명합니다.
- 매일 한 교대 근무에 한 명의 간호사만 배정됩니다.
- 각 간호사는 기껏해야 매일 한 교대 근무를 합니다.
첫 번째 조건의 코드에 따라 각 교대조에 할당된 간호사의 합계는 XNUMX명입니다.
다음은 각 간호사가 하루에 한 교대 근무만 할 수 있다는 코드입니다. 각 간호사에게 할당된 총 교대 근무 수는 한 번으로 제한됩니다(간호사는 쉬는 날이 있을 수 있으므로 "최대").
6. 교대 근무를 균등하게 할당
그런 다음 간호사들 사이에 교대 근무를 가능한 한 공평하게 분배하는 방법을 보여드리겠습니다. XNUMX일 동안 XNUMX교대가 있기 때문에 XNUMX명의 간호사에게 각각 XNUMX교대를 줄 수 있습니다.
그 후에는 모든 간호사에게 할당할 수 있는 교대가 하나 남습니다. XNUMX일의 기간 동안 다음 코드는 각 간호사가 최소 XNUMX교대를 수행하도록 합니다.
7. 솔버 매개변수 업데이트
비최적화 모델에서 모든 솔루션 검색을 허용할 수 있습니다.
8. 콜백 등록
솔버에서는 각 솔루션에서 호출될 콜백을 등록해야 합니다.
9. 솔버 실행
아래 코드는 솔버를 실행하고 처음 XNUMX개의 결과를 표시합니다.
10. 최종 결과
간호사 스케줄링의 최종 결과는 다음과 같습니다.
결론
인력 관리에서 가장 어려운 문제 중 하나는 간호사 스케줄링입니다. 과정에서 간호사를 활동적인 참여자로 포함하는 것이 직관에 반하는 것처럼 보일 수 있지만 실제로 스트레스를 줄이고 작은 변경으로 재사용할 수 있는 유용한 간호 일정 템플릿을 만드는 데 도움이 될 수 있습니다.
기술은 여러분의 동맹이며 직원 일정 문제에 사용할 수 있는 전문 솔루션이 있다는 점을 기억하십시오. 검증된 방법을 유지하는 것이 더 쉬워 보일 수 있지만 그 비효율성은 환자와 간호사 모두에게 가장 큰 위험을 초래합니다.
댓글을 남겨주세요.