TODAY'S STUDY · 2026.10.15
이벤트가 움직이는 세계,
DEVS를 공부하다
제조공정부터 반도체 FAB의 재진입 흐름까지 — 이산사건 시뮬레이션 이해하기
시뮬레이션을 떠올리면 흔히 시간이 일정한 간격으로 흘러가는 장면부터 생각한다. 하지만 공장에서는 모든 초마다 의미 있는 일이 생기지 않는다. 부품이 도착하고, 설비가 작업을 끝내고, 다음 공정으로 물건이 넘어가는 순간이 중요하다. 오늘은 바로 그 사건의 시각을 중심으로 시스템을 표현하는 DEVS를 공부했다.
01
DEVS란 무엇인가?
DEVS는 Discrete Event System Specification, 우리말로는 이산사건 시스템 명세다. 사건이 발생하는 시점과 그 사건으로 바뀌는 상태를 수학적으로 표현하는 모델링 프레임워크다. 단순히 “이벤트를 처리하는 프로그램”이라기보다, 입력·출력·상태·시간의 관계를 일정한 문법으로 적는 방법에 가깝다.
고정 시간 간격 시뮬레이션은 1초, 2초, 3초처럼 매 간격마다 상태를 계산한다. 반면 이벤트 중심 시뮬레이션은 다음 사건이 4초에 있다면 그 시각으로 논리 시간을 이동할 수 있다. 그렇다고 DEVS가 언제나 더 빠르다는 뜻은 아니다. 사건이 매우 자주 발생하거나 이벤트 관리 비용이 큰 모델에서는 이점이 줄어들 수 있다.
시간 진행 비교
02
Atomic Model과 Coupled Model
Atomic Model은 더 이상 쪼개지 않고 행동을 정의하는 기본 단위다. 공장 설비 한 대를 예로 들면, 작업 요청을 받고 가공한 뒤 완료된 부품을 내보내는 규칙을 하나의 Atomic Model로 표현할 수 있다.
| 기호 | 의미 | 설비 예시 |
|---|---|---|
| X | 입력 집합 | 작업 요청 |
| Y | 출력 집합 | 완료된 부품 |
| S | 상태 집합 | Idle, Processing |
| δext | 외부 전이 함수 | 요청을 받으면 Processing으로 |
| δint | 내부 전이 함수 | 가공 시간이 끝나면 Idle로 |
| λ | 출력 함수 | 상태 전이 직전에 완료 신호 출력 |
| ta | 시간 진행 함수 | 다음 내부 이벤트까지 남은 시간 |
여러 Atomic Model을 연결하면 Coupled Model이 된다. 설비, 버퍼, 운반 장치를 각각 모델로 만들고 출력과 입력을 연결하면 제조라인 전체의 구조를 표현할 수 있다. 중요한 점은 큰 모델 안에 또 다른 Coupled Model을 둘 수 있다는 것이다. 복잡한 시스템을 계층적으로 나누기 쉬워진다.
Atomic Model 상태 전이 실험
STATE 01
Idle
입력 대기
STATE 02
Processing
작업 수행
설비는 요청을 기다리고 있습니다.
03
제조공정에서 병목을 읽는 법
절삭 3분, 열처리 5분, 검사 2분이 걸리는 직렬 라인을 생각해 보자. 설비가 한 대씩이고 다른 손실이 없다면 시간당 이론 생산능력은 각각 20개, 12개, 30개다. 가장 느린 열처리가 라인 전체의 상한을 결정한다. 앞 공정은 더 빨리 만들 수 있어도 열처리가 받아주는 속도보다 투입이 많으면 그 앞에 대기가 쌓인다.
제조공정 병목 실험
절삭
3분
시간당 20개
열처리
5분
시간당 12개
현재 병목
검사
2분
시간당 30개
라인 이론 생산능력: 시간당 12개
절삭의 공급 속도가 열처리 능력보다 커서, 충분한 수요가 이어지면 열처리 앞 대기가 늘어날 수 있습니다.
실제 DEVS 모델에서는 가공 완료, 고장, 수리, 자재 도착 같은 사건을 함께 넣을 수 있다. 그러면 평균 가공시간만 비교하는 계산을 넘어, 어느 시점에 대기열이 생기고 고장이 뒤 공정에 어떻게 전파되는지 살펴볼 수 있다. 다만 모델을 자세하게 만들수록 입력 데이터와 검증 책임도 함께 커진다.
04
반도체 FAB가 복잡한 이유
일반적인 직렬 생산라인은 제품이 앞에서 뒤로 한 번 지나간다고 생각하기 쉽다. 반도체 FAB는 같은 설비군을 여러 번 방문하는 Re-entrant Flow, 즉 재진입 흐름이 핵심적인 특징 중 하나다. 웨이퍼 묶음인 LOT은 운반 용기인 FOUP에 담겨 이동하고, 공정 단계마다 필요한 작업 조건인 Recipe에 맞는 설비를 찾아간다.
반도체 FAB의 재진입 흐름
Dispatching
대기 중인 LOT 가운데 무엇을 다음에 처리할지 정하는 규칙
Batch Processing
여러 LOT을 한 번에 묶어 처리하는 방식
Recipe
설비가 수행해야 할 공정 조건과 절차
설비 상태
가동·고장·수리·예방정비처럼 시간에 따라 달라지는 조건
같은 설비군을 서로 다른 단계의 LOT이 함께 기다리기 때문에 “먼저 온 순서”만으로 운영하기 어려울 수 있다. 어떤 LOT을 우선할지, 여러 개를 모아 처리할지, 설비 고장 중에는 어디로 보낼지 같은 판단이 서로 얽힌다. 이 글의 경로와 수치는 개념 설명용이며 특정 회사나 실제 FAB의 구조를 담지 않았다.
05
DEVS를 더 발전시킬 수 있을까?
DEVS, Markov Chain, Surrogate Model은 같은 문제를 서로 다른 해상도로 바라본다. 셋 중 하나를 무조건 고르는 문제라기보다, 무엇을 보존해야 하는지에 따라 역할을 나누는 편이 자연스럽다.
| 방법 | 잘 표현하는 것 | 주의할 점 |
|---|---|---|
| DEVS | 사건 순서, 구성요소 상호작용, 시간 변화 | 상세 모델일수록 구축·검증 비용 증가 |
| Markov Chain | 상태 사이의 확률적 이동 | 현재 상태만으로 다음을 설명할 수 있는지 검증 필요 |
| Surrogate Model | 기존 시뮬레이션의 입력·출력 관계 근사 | 학습 범위 밖 입력과 정확도·불확실성 검증 필요 |
예를 들어 상세한 DEVS 모델로 학습 데이터를 만들고, 반복 탐색이 필요한 일부 출력만 Surrogate Model로 빠르게 근사할 수 있다. 상태 정의가 충분하고 마르코프 가정이 데이터에서 확인된다면 Markov Chain으로 특정 상태 전이 층을 단순화하는 실험도 가능하다. 이것은 전체 DEVS를 자동으로 대체한다는 뜻이 아니다. 사건 순서와 개별 경로가 중요한 영역은 원 모델을 유지하고, 반복 계산이 많은 일부 구간만 근사하는 하이브리드 접근이 더 현실적일 수 있다.
이 아이디어들은 학계와 산업에서 공개적으로 다뤄지는 일반적인 모델링 방법론이다. 여기서는 회사 고유의 공정 구조, 운영 규칙, 데이터 또는 성능 수치를 사용하지 않았다.
06
오늘의 학습 정리
- DEVS의 핵심은 시간과 이벤트에 따른 상태 변화다.
- Atomic Model은 개별 구성 요소, Coupled Model은 그 연결 구조다.
- 제조공정에서는 생산 병목과 설비 고장의 영향을 분석할 수 있다.
- 반도체 FAB에서는 재진입, 배치, 디스패칭, 설비 상태가 복잡성을 만든다.
- Markov Chain과 Surrogate Model은 검증을 전제로 부분 근사나 하이브리드 구성에 활용할 수 있다.
결국 DEVS를 이해한다는 것은 복잡한 시스템을 이벤트와 상태 변화라는 작은 단위로 분해해 바라보는 방법을 익히는 일이다.
읽으며 참고한 공개 자료
- Arizona State University ACIMS — Formal System Description
Atomic·Coupled Model의 구성 요소와 출력 함수가 내부 전이 직전에 호출되는 순서를 확인했다. - IEEE — Re-entrant Flow Shop Scheduling in Semiconductor Manufacturing
웨이퍼 FAB를 재진입형 이산사건 공정으로 다루는 공개 연구를 참고했다. - NASA Advanced Supercomputing — Multi-Fidelity Surrogate Modeling
고비용 시뮬레이션 데이터로 빠른 근사 모델을 학습하고 정확도와 불확실성을 검토하는 일반 원리를 확인했다.