0 / 0
영어 버전 문서로 돌아가기
다개념 제약 조건 및 사용자 지정 의사 결정 추가: Decision Optimization 교대근무 할당
마지막 업데이트 날짜: 2024년 11월 21일
의사결정 최적화 모델링 지원을 사용하여 제한조건 및 사용자 정의 의사결정 작성

Decision Optimization Modeling Assistant 예제는 다중 개념 반복을 사용하는 방법, 제한조건의 associated 키워드, 고유한 사용자 정의 의사결정을 정의하는 방법 및 논리 제한조건을 정의하는 방법을 보여줍니다. 예를 들어, 자원 지정 문제점 ShiftAssignment가 사용되고 데이터가 있는 완료된 모델이 DO-samples에 제공됩니다.

시작하기 전에

요구사항
Decision Optimization 모델을 편집하고 실행하려면 다음 전제조건이 있어야 합니다.
관리 또는 편집자 역할
프로젝트에서 관리 또는 편집자 역할이 있어야 합니다. 공유 프로젝트의 뷰어는 실험을 볼 수만 있고 수정하거나 실행할 수는 없습니다.
watsonx.ai 런타임 서비스
프로젝트와 연결된 watsonx.ai 런타임 서비스가 있어야 합니다. Decision Optimization 실험을 작성할 때 하나를 추가할 수 있습니다.
배치 공간
Decision Optimization 실험과 연관된 배치 공간이 있어야 합니다. Decision Optimization 실험을 작성할 때 배치 영역을 선택할 수 있습니다.

이 태스크에 대한 정보

이 예제는 다른 교대에 직원을 지정하는 것에 대한 것이며, 매일 필요한 수의 직원이 대기 중이어야 합니다. 이 샘플에서 사용되는 파일은 DO 샘플에서 사용 가능합니다.

이 비디오는 이 문서의 개념 및 태스크를 학습하기 위한 시각적 방법을 제공합니다. Decision Optimization 실험에서 예제를 로드한 후 비디오를 관심 대상으로 등록할 수 있습니다.

비디오 면책사항: 이 비디오의 일부 사소한 단계 및 그래픽 단계는 플랫폼과 다를 수 있습니다. 사용자 인터페이스도 자주 개선됩니다.

프로시저

샘플을 다운로드하여 열려면 다음을 수행하십시오.

  1. DO-samplesModel_Builder 서브폴더에서 ShiftAssignment.zip 파일을 다운로드하십시오. 관련 제품 및 버전 서브폴더를 선택하십시오.
  2. 프로젝트를 열거나 빈 프로젝트를 작성하십시오.
  3. 자산 탭을 선택하십시오.
  4. 선택하다 새 자산 > 최적화 문제 해결 에서 모델 작업 부분.
  5. Decision Optimization 실험 작성 창이 열리면 로컬 파일 을 클릭하십시오.
  6. 로컬로 찾아보기를 수행하여 다운로드한 ShiftAssignment.zip 아카이브를 찾아 선택하십시오. 열기를 클릭하십시오. 또는 끌어서 놓기를 사용하십시오.
  7. 프로젝트에 아직 watsonx.ai 런타임 서비스를 연결하지 않은 경우, 실험을 위한 배포 공간을 선택하기 전에 먼저 Machine Learning 서비스 추가를 선택하여 서비스를 선택하거나 만들어야 합니다.
  8. 작성을 클릭하십시오.
    Decision Optimization 모델은 샘플과 동일한 이름으로 작성됩니다.
  9. 시나리오 분할창을 열고 AssignmentWithOnCallDuties 시나리오를 선택하십시오.

결과

AssignmentWithOnCallDuties 시나리오데이터 준비 보기 에서 가져온 데이터 자산을 볼 수 있습니다. 이러한 테이블은 교대, 이러한 교대에 지정되어야 하는 직원 및 필요한 긴급 대기 의무가 있는 일 수를 나타냅니다.

직원 지정 데이터를 표시하는 데이터 준비 보기

다중 개념 반복 사용

이 태스크에 대한 정보

각 직원이 하루에 한 번 이상의 교대를 할 수 없다는 규칙을 모델 공식에 표현하려고 한다고 가정합니다. 예를 들어, 직원에게 같은 날에 2교대를 지정할 수 없습니다. 이 모델 공식에 표시된 대로 각 요일에 대한 제한조건을 사용할 수 있습니다.

하루에 하나씩 직원당 하나의 교대 근무만 공식화하는 몇 가지 제한조건

그러나 각 요일에 대한 제한조건을 나열하는 것은 번거롭습니다. 모델이 해당 연도의 일 수를 기반으로 하는 경우에는 이러한 유형의 제한조건을 수백 개 나열해야 합니다. 다음 프로시저는 다중 개념 반복 및 associated 키워드를 사용하여 둘 이상의 개념에 대한 반복을 표현하는 방법을 보여줍니다. 따라서 단 하나의 구문으로 이러한 규칙을 표현할 수 있습니다.

프로시저

다중 개념 반복을 사용하려면 다음 단계를 수행하십시오.

  1. 모델 공식을 보려면 사이드바에서 모델 빌드 를 클릭하십시오.
    모델 공식은 목표와 제한조건을 사용하여 직원을 교대로 지정하려는 의도를 표시합니다.
  2. 제약조건 펼치기 For each Employee-Day combination , number of associated Employee-Shift assignments is less than or equal to 1.

결과

확장된 직원-일 조합 제한조건

이 제한조건은 직원 및 일을 키워드 associated과(와) 결합하여 표현식이 직원 및 일 모두를 반복하도록 합니다. 직원-일 조합의 직원이 직원-교대 지정의 직원으로 맵핑된 것을 볼 수 있습니다. 또한 직원-일 조합의 날짜가 지정된 교대의 일 특성에 맵핑됩니다. 따라서 조합이 올바르게 자동으로 처리됩니다.

이 다중 개념 반복을 사용하여 다른 개념을 결합하는 새 규칙 그룹을 지정할 수 있습니다.

사용자 정의 의사결정 정의

이 태스크에 대한 정보

사용자가 긴급 대기 의무를 지정하려고 한다고 가정합니다. 대기 중인 업무에 직원을 지정하기 위해 다른 모델을 작성할 수 있지만 두 모델 간에 종속성 규칙을 지정할 수 없습니다. 이 예제에서 설명한 바와 같이 기존 모델에 사용자 정의 의사결정을 추가하여 교대 지정과 긴급 대기 의무 사이의 종속성을 정의할 수 있습니다. 여기서 사용자 정의 결정은 OnCallDuties입니다.

프로시저

사용자 정의 의사결정을 정의하려면 다음 단계를 수행하십시오.

  1. AssignmentWithOnCallDuties 시나리오의 모델 공식을 보려면 모델 빌드 를 클릭하십시오.
    교대 지정 공식을 표시하는 빌드 모델 보기

    사용자 정의 결정 OnCallDuties은(는) 두 번째 목표에서 사용됩니다. 이 목표는 직원에 대해 긴급 대기 의무의 수가 균형을 이루도록 보장합니다.

    제한조건 호출 시 의무 제한조건 는 일 테이블에 나열된 호출 시 의무 요구사항이 충족되는지 확인합니다.

    다음 단계에서는 이 사용자 정의 의사결정 OnCallDuties이(가) 정의된 방법을 보여줍니다.

  2. 설정 분할창을 열고 시각화 및 의사결정 편집true 로 설정되어 있음을 확인하십시오 (또는 기본값 false로 설정된 경우 true로 설정됨).

    이 설정은 의사결정 탭을 모델에 추가 창에 추가합니다.

    두 개의 인텐트를 표시하는 모델에 추가 분할창의 의사결정 탭

    여기서 OnCallDuty 가 지정 의사결정으로 지정되어 있음을 확인할 수 있습니다 (직원을 대기 중인 업무에 지정하기 위해). 두 개의 차원은 DayEmployee데이터 테이블을 참조하여 정의됩니다. 즉, 모델이 직원에게 긴급 대기 의무도 지정하는 것을 의미합니다. 직원-교대 지정 의사결정은 원래 의도에서 지정됩니다.

  3. 선택사항: [문서화될] 필드에 OnCallDuty 를 설명하는 사용자 고유의 텍스트를 입력하십시오.
  4. 선택사항: 의사결정 탭에서 사용자 고유의 의사결정을 작성하려면 이름 입력을 클릭하고 이름을 입력한 후 Enter를 클릭하십시오.
    드롭 다운 메뉴를 사용하여 일부 강조표시된 필드가 있는 해당 이름으로 새 의사결정 (인텐트) 이 작성됩니다. 예를 들어, 지정 의사결정 유형으로 선택하면 두 개의 차원이 작성됩니다. 지정에는 하나 이상의 항목을 지정하는 것이 포함되므로 최소한 두 개의 차원이 정의되어야 합니다. 차원을 정의하려면 테이블 선택 필드를 사용하십시오.

결과

더 이상 인텐트에서 추론된 의사결정만 사용하도록 제한되지 않습니다. 이제 의사결정 유형 및 해당 차원 (데이터 테이블 또는 열) 을 선택할 수 있는 고급 설정 및 의사결정 탭을 사용하여 사용자 정의 의사결정을 정의할 수 있습니다. 그런 다음 새로 정의된 의사결정을 사용하는 새 규칙 및 목표를 구성할 수 있습니다.

논리적 제한조건 사용

이 태스크에 대한 정보

직원이 휴가 중일 때 지정된 긴급 대기 의무가 발생하지 않도록 하려고 한다고 가정합니다. 다음과 같이 논리적 제한조건을 사용하여 이를 수행할 수 있습니다.

프로시저

논리 제한조건을 사용하려면 다음을 수행하십시오

  1. 제약조건 확인 논리 제약조건 제안
    이 제한조건은 각 직원 및 일 조합에 대해 연관된 할당이 없는 경우 (예를 들어, 직원이 해당 일에 휴가 중인 경우) 해당 일에 해당 직원에게 대기 중인 업무가 지정되지 않도록 합니다. if...then 키워드를 사용하여 이 논리적 제한조건을 정의하십시오.
  2. 선택사항: 제안사항을 검색하여 모델에 다른 논리 제약조건을 추가하십시오.

결과

이 제한조건은 직원의 지정을 긴급 대기 의무가 있는 교대에 링크합니다. 별도의 모델을 사용하여 하나는 원래 교대 근무 지정을 위한 것이고 다른 하나는 온콜 업무를 위한 것입니다. 이 링크를 달성할 수 없습니다.

associated 키워드와 함께 논리 제약조건을 사용하여 하나의 제약조건이 적용되는 경우 다른 제약조건도 적용되도록 지정할 수 있습니다. 더 복잡한 조인 표현식을 사용할 필요 없이 참조하는 개념 사이에 필요한 논리적 연결이 자동으로 이루어집니다.

일반적인 AI 검색 및 응답
이러한 응답은 제품 문서의 컨텐츠를 기반으로 하는 watsonx.ai 의 대형 언어 모델에 의해 생성됩니다. 자세히 알아보기