본문 바로가기

강화학습 기반의 생산 일정 계획 최적화에 관한 연구

  • 강형원
  • 인천대학교
  • 작품구분일반형
  • 공개여부비공개
  • 카테고리정보, 전자, 기계, 유통/물류
  • 등록일2019-06-14
  • 팀원(공동개발자)강형원, 이전우, 우창윤
  • 출품 경진대회2019-1학기 산학 캡스톤디자인 경진대회( 학생팀&멘토 모집)

상세설명

1. 수행배경

  • 현업에서 제품의 생산방식이 고도화 되고 복잡해졌다. 
  • 일정계획을 효율적으로 세우기가 어려워짐
  • 일정계획을 수립하는데 많은 시간이 필요함
  • 기존에 존재하는 룰을 이용한 일정계획은 최적의 모델과 거리가 멀다.
  • 문제가 단순한 경우에는 기존의 룰도 좋은 해를 구할 수 있지만문제가 점차 복잡해짐으로써 좋은 해를 구하기 쉽지 않음
  • 산업경영공학에서 배운 일정계획에 대한 지식과 연계전공(인공지능 소프트웨어)에서 배운 딥러닝 지식을 이용하여 일정계획을 수립함으로써 최적의 모델에 근접 할 수 있도록 하며 일정계획에 많은 시간과 비용을 소모하지 않도록 하고자 한다.
  • 기존의 존재하는 룰보다 좋은 성능을 가지게 된다면 공정의 자동화에 도움이 될 수 있음을 기대한다.

2. 수행기간

  •  

    추진일정표

    일련번호

    주요내용

    추진일정

    기간

    ()

    3

    4

    5

    6

    1

    경진대회 주제 선정 및 기업담당자 미팅

     

     

     

     

     

    2

    2

    강화학습 관련 학습 및 기본 룰 코딩

     

     

     

     

     

    4

    3

    DDQN 모델 구축

     

     

     

     

    4

    4

    모델 개선

     

     

     

     

    6

    5

    결과 보고서 작성 및 제출

     

     

     

     

     

    2

    6

    개선 및 교내외 경진대회 참가

     

     

     

     

    6

     


3. 개발작품 설명

  • 스케줄링은 단순한 문제일 경우 어려움이 없으나, 복잡한 문제의 경우 많은 시간과 비용이 소모됨.
  • 강화학습(DDQN)을 이용하여 일정계획을 수립함으로써 시간과 비용 절감
  • 1차적으로 장비의 제약이 없고주문 분리가 불가능하고병렬기계인 경우의 문제를 해결하려고 한다.
  • 작업의 타입이 바뀌는 경우 setup time이 발생하며 2시간으로 설정하였다.
  • 총 납기 지연 시간을 최소화하는 일정 계획을 수립한다.
  • 총 머신의 개수는 18개이며 작업의 타입은 13오더의 개수는 100개를 1세트로 설정하였다.
  • 기본 룰(FCFS, LPT, SPT, MOR, LOR, Slack)과의 성능을 비교/분석한다.
  • 딥러닝 플랫폼은 keras를 사용하며사용 기술로는 강화학습중 DDQN(Double DQN)기법을 사용한다.
  • Input(State)는 총 360개로 이루어져 있음
  • 10개의 order가 각각 마지막으로 할당된 작업의 타입이 같은지해당 머신에 할당할 경우 slack의 양에 대한 정보가 담겨있음.

  • Output은 총 18개로 이루어져 있음

  • 18가지 액션에 대한 Q-value 값을 가지고 있으며값이 큰 액션을 실행

  •  action에 대한 reward의 정보를 가지고 있으며 agent에게 주는 정보를 이용하여 network를 업데이트한다. (reward = -7*setup여부 1*violation due date)

  • Input의 정보를 state로 하여 어떤 액션을 행할지 구하는 DDQN 모델

  • 활성화함수는 모두 Relu를 사용하였다.

  • Q 함수를 거쳐 행동에 대한 Q-value가 가장 높은 액션을 취함

  • 학습 방법은 하나의 오더로 반복 학습과 일반화 학습을 하였다.

  • scores 그래프와 납기지연시간 그래프 모두 수렴하기 때문에 학습이 올바르게 되었음을 알 수 있다.

  • 하나의 order로 반복 학습한 경우와 일반화까지 진행한 경우의 성능을 확인하기 위하여 기본 룰을 이용하여 orderlist 10세트의 성능을 비교하였다

  • 기본 룰중에서 가장 성능이 좋은 slack에 비하여 하나의 order로 반복 학습한 경우 20.28%, 일반화 한 경우 20.11% 정도의 성능이 개선되었음을 확인하였다.

  • 하나의 오더로 반복 학습 시킨 경우가 일반화 보다 좋은 결과를 내는 경우또는 쉬운 문제의 경우 기본 룰이 일반화 보다 좋을 결과를 내는 경우가 있다.

4. 활용방안

  • 일정계획을 수립하는데 걸리는 시간과 비용 감소 가능할 것으로 기대된다.
  • 기존의 일정계획보다 우수한 성능의 계획을 수립 가능할 것으로 예상된다.
  • 공정의 일정 계획의 자동화가 가능할 것으로 기대된다.

소개 영상

정보가 없습니다.

소개 슬라이드

기타자료

댓글