AI·자동화··업데이트

AI 생산계획이란 무엇인가 — 무엇을 언제 얼마나 만들지

생산계획은 주문·재고·설비·납기·Setup을 동시에 맞추는 문제다. 수요예측과의 차이, 제약조건이 먼저인 이유, "최적"이 회사 우선순위 안에서만 성립하는 이유를 월요일 네 주문으로 정리한다.

월요일 아침, 생산관리자 앞에 네 개의 주문이 놓여 있다고 하자.

제품 A 3,000개 / 제품 B 2,000개 / 제품 C 4,000개 / 제품 D 1,500개

단순히 주문량만 보면 총 10,500개를 생산하면 된다. 하지만 실제 공장에서는 그렇게 계획을 세울 수 없다. A는 오늘 출고해야 하고, B는 내일까지 납품하면 되며, C는 원재료 하나가 오후에 입고되고, D는 A와 같은 설비를 쓰지만 생산 후 세척시간이 오래 걸린다. 현재 완제품 재고도 있다 — A는 500개, B는 1,000개가 창고에 남아 있다. 그러면 실제로 생산해야 할 수량부터 달라진다. 여기에 설비능력·작업인원·원재료 가용재고·최소 Batch·교체시간까지 들어가면 생산계획은 단순한 수량계산이 아니라 제약조건을 맞추는 작업이 된다.

AI 생산계획을 이해하려면 먼저 이 문제를 셋으로 나누는 게 좋다. 얼마가 필요할 것인가. 얼마를 만들어야 하는가. 언제 어떤 순서로 만들 것인가. 비슷해 보이지만 다른 문제다.

수요예측과 생산계획은 같은 기능이 아니다

다음 주 제품 A가 5,000개 판매될 것으로 예상된다고 하자 — 이건 수요예측이다. 그러나 생산계획에서는 바로 5,000개를 생산하지 않는다. 현재 완제품 재고가 1,500개 있고 이미 확정된 생산예정량이 1,000개라면 추가 생산 필요량은 달라진다. 반대로 안전재고·확정주문·출고예약을 고려하면 더 많이 만들어야 할 수도 있다.

즉 수요예측은 미래의 필요량을 추정하는 문제이고, 생산계획은 재고와 주문을 고려해 실제 생산해야 할 수량을 정하는 문제다. 그다음 설비와 작업순서를 배정하는 단계가 생산스케줄링이다.

Forecast → Production Requirement → Production Plan → Schedule

AI는 이 중 일부 또는 여러 단계에 쓰이지만 모두 같은 알고리즘으로 해결되는 건 아니다.

주문 네 건을 실제로 배치해 본다

현재 재고를 반영하면 실제 부족수량이 A 2,500 / B 1,000 / C 4,000 / D 1,500, 총 9,000개라고 하자. 그런데 설비가 둘이다 — 1번 라인은 A·D를, 2번 라인은 B·C를 생산할 수 있다. 여기까진 단순하다. 문제는 추가 조건이다.

  • A는 오늘 오후 4시까지 출고해야 한다.
  • D를 생산한 뒤 A를 생산하려면 세척·Setup 때문에 90분이 추가된다.
  • C의 핵심 원재료는 오후 2시에 들어온다.
  • B는 내일 출고해도 된다.

이제 단순히 주문순서대로 생산하면 좋은 계획이 아닐 수 있다. 1번 라인에서는 A를 먼저 생산하는 편이 납기상 유리할 가능성이 높고, 2번 라인은 C 원료가 아직 없으니 오전에 B를 먼저 하고 C를 오후로 미루는 게 현실적일 수 있다. 이것이 생산계획이다.

계획에서 가장 먼저 필요한 건 ’제약조건’이다

AI가 계획을 만들려면 먼저 시스템이 공장의 제약을 알아야 한다 — 제품 A가 1번 라인에서만 생산 가능한지, 1시간에 몇 개를 만드는지, 제품 변경 시 세척시간이 얼마인지, 최소 Batch는 얼마인지, 작업자 몇 명이 필요한지, 현재 원재료는 얼마인지. 이 데이터가 없으면 AI는 현실적으로 실행 가능한 계획을 만들기 어렵다. 그래서 생산계획 자동화를 준비할 때는 과거 주문데이터보다 먼저 현재 공장의 Capacity와 Constraint가 정리돼 있는지 확인해야 하는 경우가 많다.

’설비 능력’은 하루 생산량 한 숫자로 끝나지 않는다

ERP에 설비능력을 하루 10,000개라고 등록해도 실제 계획에서는 부족할 수 있다. 제품 A는 시간당 1,000개인데 B는 600개일 수 있고, 제품 전환에 30분이 필요할 수도, 특정 제품 뒤에는 2시간 세척이 필요할 수도, 작업자가 4명일 때와 2명일 때 능력이 다를 수도 있다. 그래서 실제 계획에서는 설비능력을 고정된 한 숫자보다 제품 × 공정 × 설비 × 시간 관계로 관리해야 할 수 있다. 이게 정리 안 된 상태에서 AI 모델만 도입하면 계획표는 그럴듯한데 현장에서 실행할 수 없는 결과가 나온다.

식품공장에서는 생산순서 자체가 중요한 데이터다

A와 B를 같은 설비에서 만들 수 있다면 생산능력만 보면 어느 걸 먼저 만들어도 비슷하다. 하지만 식품 제조에서는 생산순서가 품질과 세척에도 영향을 준다. 알레르기 유발물질을 포함한 제품을 생산한 뒤 다른 제품으로 전환할 때 회사의 세척·검증절차가 필요할 수 있고, 색·향이 강한 제품 뒤에는 추가세척이 필요할 수도 있다. 그래서 생산순서를 자동 추천하려면 납기와 생산시간만이 아니라 회사가 정의한 위생·세척·교차오염 방지 조건을 함께 고려해야 한다. 이런 조건은 AI가 스스로 발견해 임의로 정하는 게 아니라 회사의 공정기준으로 먼저 정의돼 있어야 한다.

생산계획은 오히려 최적화가 핵심인 경우가 많다

생산계획을 무조건 머신러닝 문제로 설명하면 정확하지 않다. 이미 주문량·납기·설비능력·작업시간·원재료 가용량이 알려져 있다면 문제의 핵심은 미래를 예측하는 것보다 주어진 제약 안에서 가능한 계획을 찾는 것일 수 있다. 이때는 수리최적화·제약충족·휴리스틱·규칙기반 스케줄링이 쓰인다. 머신러닝이나 AI는 다른 부분에서 결합된다 — 실제 작업시간 예측, 수요예측, 설비고장 가능성 예측, 과거 계획변경 패턴 학습. 그래서 ’AI 생산계획’이라는 제품명보다 중요한 건 계획의 어느 부분에 어떤 기술을 쓰는가다.

’최적의 생산계획’이라는 말도 조심한다

수학적으로는 목적함수를 정하고 최적해를 찾을 수 있다. 하지만 공장에서는 무엇을 최적화할지부터 결정해야 한다 — 납기지연 최소화, 재고 최소화, 설비가동률 최대화, Setup 횟수 최소화, 잔업 축소, 긴급주문 우선. 이 목표들은 서로 충돌한다. 납기를 다 맞추려면 잔업이 늘고, Setup을 최소화하려면 같은 제품을 몰아서 만들어야 해 재고가 늘고, 재고를 줄이면 주문변동에 대응할 여유가 준다. 따라서 시스템이 말하는 ’최적’은 절대적 정답이 아니라 회사가 설정한 우선순위와 목적함수 안에서의 최적이다.

제품 A 납기와 Setup 비용 중 무엇을 우선할까

1번 라인에서 A와 D를 생산해야 하는데, A는 오늘 납품, D는 내일까지다. 그런데 현재 라인은 D 생산조건으로 Setup돼 있다. D를 먼저 하면 Setup 변경을 한 번 줄이지만 A 납품이 늦어질 위험이 있고, A를 바로 하려면 추가 Setup이 필요하지만 납기를 지킨다.

안 1. D → A   Setup 적음, A 납기 위험
안 2. A → D   Setup 증가, A 납기 지킴

어느 계획이 좋은지는 회사가 결정한다. 핵심 거래처 납기라면 추가비용을 감수하고, 납기여유가 충분하면 Setup 효율을 우선할 수도 있다. AI나 최적화 엔진이 필요한 건 이 판단을 대신하기보다 선택에 따른 결과를 계산해 보여주는 부분이다.

좋은 생산계획은 ’계획표’가 아니라 이유를 보여준다

시스템이 “제품 C를 오후 2시 이후 생산”이라고 추천했다면 담당자는 이유를 알아야 한다 — 원재료 X가 오후 2시 입고예정이라서인지, 1번 라인을 못 써서인지, 다른 긴급주문이 먼저 배정돼서인지. 계획추천의 설명가능성은 현장수용성과도 관련된다. 사람이 이유를 모르는 계획을 계속 승인하기는 어렵다. 특히 시스템의 계획과 현장관리자의 판단이 다를 때는 어떤 Constraint 때문에 결과가 달라졌는지 확인할 수 있어야 한다. 그래서 생산계획 화면에는 결과만이 아니라 주요 제약과 지연원인을 함께 표시하는 편이 유용하다.

’재고수량’보다 가용재고가 중요하다

원재료 A가 장부상 500kg 있어도 생산계획 시스템이 500kg 전부를 쓸 수 있다고 판단하면 문제가 생긴다. 100kg은 이미 다른 생산지시에 예약됐을 수도, 50kg은 품질검사로 HOLD일 수도, 일부 LOT는 특정 제품에 못 쓸 수도 있다. 그래서 생산계획에 필요한 건 단순 On Hand보다 실제 쓸 수 있는 Available Inventory다. On Hand · Available · Reserved · Quality Status 구분이 여기서 다시 쓰인다. 생산계획은 독립된 기능이 아니라 재고 데이터의 품질에 직접 의존한다.

원재료가 부족하면 계획이 끝나는 게 아니라 조달과 연결된다

제품 C를 만들려는데 원재료 X가 부족하다면 시스템은 “생산불가”라고만 표시할 수도 있다. 더 발전된 구조에서는 예정입고까지 고려한다 — X가 오늘 오후 2시에 500kg 입고예정이라면 C 생산을 오후로 배치한다. 하지만 여기서도 주의가 필요하다. 발주했다고 반드시 예정일에 입고되는 건 아니다. 공급업체의 실제 리드타임과 입고신뢰도가 낮다면 예정입고를 100% 확정재고처럼 쓰는 건 위험하다. 결국 생산계획은 구매·재고와 연결된다.

계획은 확정주문과 예측수요를 구분한다

제품 A 3,000개는 이미 고객이 주문했고, 제품 B 2,000개는 다음 주 판매예측이다. 두 수량을 동일한 확정수요로 취급하면 과잉생산이 발생하고, 예측수요를 전혀 고려하지 않으면 반복 판매되는 제품에서 재고부족이 발생한다. 그래서 생산계획에서는 수요의 성격을 구분한다 — 확정주문 · 예측수요 · 안전재고 보충 · 내부이동 필요량. 각 수요에 다른 우선순위를 적용할 수도 있다.

MTO와 MTS 공장은 계획 논리가 다르다

주문을 받은 뒤 생산하는 Make-to-Order와 예상수요에 맞춰 미리 생산하는 Make-to-Stock는 같은 로직으로 보기 어렵다. MTO에서는 납기와 주문우선순위가, MTS에서는 수요예측·목표재고·안전재고가 더 중요하다. 실제 공장에서는 두 방식이 섞여 있을 수도 있다 — 일부 품목은 재고생산, OEM 주문은 주문생산. 그래서 생산계획을 자동화할 때 공장 전체에 하나의 계획정책을 적용하기보다 품목·거래유형별 Planning Policy를 구분하는 게 현실적이다.

최소 Batch가 있으면 필요한 만큼만 만들 수 없다

제품 A가 700개 부족하면 700개를 만들면 될 것 같지만 최소 생산 Batch가 1,000개라면 계획이 달라진다 — 1,000개를 만들고 300개가 재고로 남는다. 반대로 설비 Capacity 때문에 한 번에 최대 500개만 만들 수 있다면 생산을 두 번 나눠야 한다. 그래서 생산수량 계산에서는 필요수량 · 최소 Batch · 최대 Batch · 포장단위 · 생산배수를 함께 고려한다. AI가 수요량을 정확히 예측해도 이런 제조조건을 반영하지 않으면 실행 가능한 계획이 아니다.

설비가 멈췄을 때 중요한 건 ’몇 초 만에’가 아니다

핵심설비가 멈추면 사람이 반나절 걸릴 재계획을 AI가 몇 초 만에 만든다는 예가 흔하다. 이해하기 쉬운 예이지만 실제 성능은 시스템·문제규모·최적화 방식에 따라 달라지므로 일반화하기 어렵다. 더 중요한 건 계산시간 자체보다 변경된 조건을 다시 반영할 수 있는 구조다.

1번 설비 고장 → 해당 설비 Capacity 제거 → 진행 중 작업 확인
→ 미시작 작업 중 다른 설비로 이동 가능 품목 탐색 → 납기영향 재계산
→ 원재료·인력조건 재확인 → 새로운 실행가능 계획 제안

이것이 재계획의 핵심이다. 5초가 걸리는지 30초가 걸리는지는 실제 구현과 공장규모의 문제다.

계획을 매번 처음부터 다시 만들 필요는 없다

설비 하나가 멈췄다고 오늘 생산계획 전체를 뒤집으면 현장이 더 혼란스럽다. 이미 자재가 준비됐고 작업자가 배치됐으며 생산이 시작된 작업은 가능한 한 유지하는 게 유리하다. 그래서 재계획에서는 계획 안정성도 중요한 조건이 된다 — 변경이 필요한 범위만 조정하고 기존 계획을 최대한 유지하는 것이다. 생산계획에서 가장 수학적으로 좋은 계획이 현장에서 가장 좋은 계획과 항상 같지는 않다. 계획을 자주 바꾸는 데에도 비용이 있기 때문이다.

계획이 틀어진 이유도 데이터로 남긴다

월요일 계획과 실제 생산결과가 크게 달랐다면 그 사실만 기록해선 다음 계획을 개선하기 어렵다. 왜 달라졌는지 남겨야 한다 — 원재료 입고지연 · 설비고장 · 긴급주문 · 작업자 결근 · 품질부적합 · 생산시간 초과. 계획과 실제의 차이가 반복적으로 쌓이면 중요한 사실을 발견한다. 특정 설비의 실제 생산시간이 Master의 표준시간보다 계속 길다면 Capacity 기준을 수정해야 하고, 특정 공급업체 입고가 계획보다 반복적으로 늦다면 구매 Lead Time Master를 조정해야 한다. 생산실적은 계획의 결과일 뿐 아니라 다음 계획의 기준정보를 검증하는 데이터다.

AI는 처음부터 자동확정하지 않는 편이 좋다

시스템이 다음 주 생산계획을 추천했고 담당자가 일부 순서를 변경했다면, 시스템이 “사람이 AI 계획을 망쳤다”고 해석해선 안 된다. 담당자는 시스템에 없는 정보를 알고 있을 수 있다 — 다음 주 거래처 사정, 특정 작업자의 숙련도, 설비의 미세한 이상, 예정되지 않은 위생점검. 초기에는 추천계획 · 담당자 수정 · 최종확정을 구분해 저장하고, 수정사유를 함께 남기면 시스템이 놓치고 있는 제약조건을 찾을 수 있다.

계획의 성능을 무엇으로 평가할 것인가

생산계획 시스템의 성능을 ‘AI 정확도 95%’ 같은 하나의 숫자로 표현하기는 어렵다. 계획에는 여러 목적이 있기 때문이다. 실무에서는 회사 목적에 따라 납기준수 · 계획대비 생산달성 · 긴급계획 변경횟수 · Setup 횟수 · 잔업시간 · 재고수준 · 설비가동률을 본다. 하지만 모든 지표를 동시에 최고로 만들 수는 없다. 설비가동률을 높이려 계속 생산하면 완제품 재고가 늘고, 재고를 최소화하면 설비 유휴시간이 는다. 그래서 KPI도 회사의 실제 목표와 연결해야 한다.

도입 전에 하루 계획표를 먼저 해부해 본다

AI 생산계획을 준비하는 회사라면 복잡한 기술검토보다 먼저 현재 생산관리자가 쓰는 하루 계획표를 펼쳐, 각 결정 옆에 이유를 적어본다.

A를 오전에 배치 — 오늘 납품이라서
B를 오후로 미룸 — 원재료 입고가 늦어서
C·D를 연속 배치 — 품목전환 시간이 짧아서
E는 내일로 넘김 — 설비 Capacity가 부족해서

이렇게 적으면 사람이 어떤 Constraint와 Priority를 쓰는지 보이고, 시스템에 이미 존재하는 데이터와 담당자의 머릿속에만 있는 데이터를 구분할 수 있다. 생산계획 자동화는 이 차이를 줄이는 과정에서 시작한다.

첫 목표는 ’완벽한 최적계획’이 아니다

처음부터 전체 공장의 모든 주문·설비·인력·자재를 자동으로 최적화하려 하면 프로젝트가 복잡해진다. 차라리 좁은 문제에서 시작한다.

오늘 확정주문에 필요한 생산수량 계산 → 가용재고 반영
→ 생산 가능한 설비만 후보로 → 납기순 기본계획 추천
→ 원재료 부족 주문 표시 → 품목전환 많은 구간 알림

이 정도만 해도 엑셀과 사람의 기억에 의존하던 계획업무가 상당히 구조화된다. 이후 계획과 실적 데이터를 쌓으며 Capacity·Setup Time·Lead Time 기준을 보정하고, 그다음 더 복잡한 최적화나 AI 기능을 붙이는 게 자연스럽다.

월요일의 네 주문을 다시 보면

처음에는 A·B·C·D 총 10,500개 주문만 보였다. 계획을 세우기 시작하면서 실제 생산필요량은 9,000개로 바뀌었다 — 완제품 재고가 있었기 때문이다. A는 납기가 급해 1번 라인에서 먼저, B는 내일까지 가능하므로 오전 2번 라인에, C는 원재료가 오후에 들어오니 오전엔 못 만들고, D는 A와 같은 설비를 쓰지만 Setup과 납기를 비교해 순서를 정했다. 처음의 네 숫자는 그대로인데 생산계획은 재고·납기·자재·설비·Setup 조건이 들어오면서 전혀 다른 문제가 됐다.

AI 생산계획의 본질은 이 복잡성을 마법처럼 없애는 게 아니다. 사람이 머릿속에서 처리하던 제약조건을 데이터로 만들고, 가능한 계획을 빠르게 계산하며, 선택에 따른 결과를 비교할 수 있게 만드는 것이다. 그렇게 보면 시작점도 명확해진다. AI 모델을 먼저 고르는 게 아니라, 우리 공장에서 생산순서를 결정할 때 실제로 쓰는 조건부터 적는 것이다.

참고 — 교차오염 방지·세척·검증 조건은 제품·공정 특성과 HACCP 기준에 따라 다르다. 관련 기준은 식품안전나라로 확인한다.

이어서 읽으면 좋은 글

제조업 AI 자동화 — 어디서부터 시작하나

AI · 자동화3분 만에 확인
저자 Michael Han

글 · Michael Han
(주)단지 대표(식품제조, 2016~) · VSL Vietnam MD · ISO 9001·14001·45001 인증심사원.저자 소개 →

최종 검증:

개정 이력

· 발행
· 개정

여기 담긴 규정·수치는 최소 6개월마다 위 공식 출처와 대조해 재확인합니다. 실질적 변경(요건·기준·수치)은 조용히 덮어쓰지 않고 개정 이력에 남깁니다.

이 글은 일반적인 실무 정보이며 법률·세무·행정 자문이 아닙니다. 규정·수치는 관할과 시점에 따라 달라지므로, 실제 판단 전 위 공식 출처와 관할 기관에서 최신 기준을 확인하시기 바랍니다.