Skip to main content

제약조건 관리

개요​

이 화면은 무엇인가요? APS 스케줄링 시 준수해야 하는 제약조건(용량, 자재, 금형, 인력, 시간 윈도우, 순서 의존 등)을 정의하고 관리하는 화면입니다. 경성 제약(반드시 준수)과 연성 제약(위반 시 페널티)을 구분하여 현실적인 스케줄을 수립합니다.

누가 사용하나요?​

  • APS 계획자: 제약조건 등록 및 우선순위 조정
  • 생산관리자: 현장 제약 반영 (설비, 인력, 공간 등)
  • 설비관리자: 설비 관련 제약 정보 제공

언제 사용하나요?​

  • 신규 제약조건이 발생할 때 (설비 추가/제거, 규제 변경 등)
  • 스케줄링 결과에서 비현실적인 배정이 나올 때 제약을 추가할 때
  • 제약 완화 또는 강화가 필요할 때

주요 기능​

1. 제약조건 등록​

무엇을 하나요?: 스케줄링 제약을 유형별로 정의합니다.

어떻게 사용하나요?:

  1. "신규" 버튼을 클릭합니다
  2. 제약유형(capacity/material/tooling/labor/time_window/sequence 등)을 선택합니다
  3. 제약범주를 지정합니다: hard(절대 위반 불가), soft(위반 시 페널티), preference(선호 수준)
  4. 자원, 작업장, 용량 한계 등 세부 내용을 입력합니다
  5. 적용범위(global/plant/line/work_center/equipment)를 설정합니다

💡 팁: 경성제약(hard)이 너무 많으면 실현 가능한 스케줄을 찾기 어려울 수 있습니다. 초기에는 핵심 제약만 hard로 설정하고, 나머지는 soft + 페널티로 운영하는 것이 효과적입니다.

2. 자동해소 전략 설정​

무엇을 하나요?: 제약 위반 시 자동으로 해소할 전략을 설정합니다.

어떻게 사용하나요?:

  1. 자동해소활성화를 true로 설정합니다
  2. 자동해소전략(시간이동/대체자원/배치분할/외주/잔업/우선순위변경)을 선택합니다
  3. 전파활성화를 설정하면 한 제약 해소가 다른 작업에 미치는 영향을 자동 계산합니다

업무 흐름에서의 위치​


입력 항목 가이드​

항목설명입력 방법예시
제약코드제약 고유 코드직접 입력 (필수)CON-CAP-001
제약조건명제약 이름직접 입력 (필수)CNC 가공 용량 제한
제약유형제약 종류선택 (필수)capacity
제약범주경성/연성선택 (필수): hard/soft/preferencehard
작업장적용 작업장작업장 선택WC-MACH-001
최대용량허용 최대값숫자 입력480
우선순위제약 우선순위정수 입력 (필수)1
적용범위적용 범위선택 (필수): global/plant/line/work_center/equipmentwork_center
페널티단가위반 시 단위 페널티숫자 입력10000

자주 묻는 질문 (FAQ)​

경성 제약(hard)과 연성 제약(soft)의 차이는 무엇인가요?
  • 경성 제약(hard): 스케줄러가 절대 위반하지 않습니다. 위반하면 실현 불가능(infeasible) 판정됩니다. 예: 설비 물리적 용량 한계, 법적 작업시간 제한
  • 연성 제약(soft): 위반은 가능하지만 페널티가 부과됩니다. 스케줄러가 페널티를 최소화하는 방향으로 최적화합니다. 예: 목표 가동률, 선호 작업 시간대
  • 선호(preference): 가장 약한 제약. 가능하면 준수하되 다른 제약과 충돌하면 무시됩니다.

참고: 데이터 구조​

테이블 및 관계 상세

테이블: aps_constraints

주요 컬럼: constraint_code, constraint_name, constraint_type, constraint_category, resource_type, work_center_id(FK), max_capacity, priority, is_hard, penalty_cost_per_unit, penalty_function, auto_resolve_enabled, auto_resolve_strategy, scope, effective_from, is_active

주요 연관 테이블: 제약위반이력(aps_constraint_violations), 작업장(aps_work_centers)