KR101984460B1 - 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치 - Google Patents

머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치 Download PDF

Info

Publication number
KR101984460B1
KR101984460B1 KR1020190040892A KR20190040892A KR101984460B1 KR 101984460 B1 KR101984460 B1 KR 101984460B1 KR 1020190040892 A KR1020190040892 A KR 1020190040892A KR 20190040892 A KR20190040892 A KR 20190040892A KR 101984460 B1 KR101984460 B1 KR 101984460B1
Authority
KR
South Korea
Prior art keywords
schedules
evaluation index
schedule
new
genetic algorithm
Prior art date
Application number
KR1020190040892A
Other languages
English (en)
Inventor
송길태
오홍택
Original Assignee
부산대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 부산대학교 산학협력단 filed Critical 부산대학교 산학협력단
Priority to KR1020190040892A priority Critical patent/KR101984460B1/ko
Application granted granted Critical
Publication of KR101984460B1 publication Critical patent/KR101984460B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q41/00Combinations or associations of metal-working machines not directed to a particular result according to classes B21, B23, or B24
    • B23Q41/08Features relating to maintenance of efficient operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Manufacturing & Machinery (AREA)
  • General Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Artificial Intelligence (AREA)
  • Mechanical Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Operations Research (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)

Abstract

머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치가 제시된다. 본 발명에서 제안하는 머신러닝 기반 자동 공작기계 작업 스케줄링 방법은 스케줄 작업 목록을 데이터베이스로부터 수집하는 단계, 상기 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성하는 단계, 상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 단계, 상기 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단하는 단계, 상기 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계 및 상기 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환하는 단계를 포함한다.

Description

머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치{Method and Apparatus for automatically scheduling jobs in Computer Numerical Control machines using machine learning approaches}
본 발명은 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치에 관한 것이다.
종래 스케줄링 프로그래밍 발명은 항공기 스케줄이나 파트 타임의 타임테이블 스케줄링 등에 국한된 것이었다. 또한 이러한 경우 대부분 스케줄링을 각 조건에 따른 규칙 기반(rule-based) 형식으로 스케줄링 하였고, 평가 척도가 명확하지 않아 만들어진 스케줄링 결과에 대한 성능 평가가 모호하였다.
공작기계를 이용하여 제품을 생산하는 공장에서는 수천 가지의 제품을 각 제품의 크기나 모양에 따라 조건에 맞는 기계로 배분하여 생산한다. 이 때 이러한 조건들은 스케줄링에서 일종의 제약조건으로 작용한다. 현재 작업이 배정되어 있지 않은 기계가 있어도 이 조건을 충족시키지 못하는 기계에는 배분을 할 수 없기 때문이다. 따라서, 이러한 스케줄 제약조건을 만족시키면서 생산 현장에서 원하는 최적화된 스케줄을 제시하는 방법을 필요로 한다.
본 발명이 이루고자 하는 기술적 과제는 스케줄 제약조건을 만족시키면서 생산 현장에서 원하는 최적화된 스케줄을 제시하기 위한 방법 및 장치를 제공하는데 있다.
일 측면에 있어서, 본 발명에서 제안하는 머신러닝 기반 자동 공작기계 작업 스케줄링 방법은 스케줄 작업 목록을 데이터베이스로부터 수집하는 단계, 상기 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성하는 단계, 상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 단계, 상기 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단하는 단계, 상기 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계 및 상기 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환하는 단계를 포함한다.
상기 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계를 상기 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행한다.
상기 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계는 상기 복수의 스케줄에 대하여 두 개의 스케줄을 하나의 쌍으로 묶고, 각 스케줄 쌍에 대해 교차 조합(cross over) 연산 및 변이(mutation) 연산을 통해 두 개의 새로운 스케줄을 생성하여 업데이트 한다.
상기 사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하고, 상기 기계별 작업 배정 정보를 표시한다.
기계별 작업 배정 정보에 반영된 스케줄 대로 작업을 재분배하고, 상기 재분배된 결과는 다시 시각화하여 화면에 표시한다.
또 다른 일 측면에 있어서, 본 발명에서 제안하는 머신러닝 기반 자동 공작기계 작업 스케줄링 장치는 스케줄 작업 목록을 데이터베이스로부터 수집하는 전처리부, 상기 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성하고, 스케줄 분석부의 결과에 따라 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 유전 알고리즘 기반 스케줄 생성부, 상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 스케줄 평가부, 상기 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단하는 스케줄 분석부 및 사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하고, 상기 기계별 작업 배정 정보를 표시하는 디스플레이부를 포함한다.
상기 유전 알고리즘 기반 스케줄 생성부는 상기 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계를 상기 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행한다.
상기 유전 알고리즘 기반 스케줄 생성부는 상기 복수의 스케줄에 대하여 두 개의 스케줄을 하나의 쌍으로 묶고, 각 스케줄 쌍에 대해 교차 조합(cross over) 연산 및 변이(mutation) 연산을 통해 두 개의 새로운 스케줄을 생성하여 업데이트 한다.
상기 스케줄 분석부는 상기 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환한다.
상기 스케줄 분석부는 상기 기계별 작업 배정 정보에 반영된 스케줄 대로 작업을 재분배하고, 상기 재분배된 결과는 상기 디스플레이부를 통해 다시 시각화하여 화면에 표시한다.
본 발명의 실시예들에 따르면 스케줄 제약조건을 만족시키면서 생산 현장에서 원하는 최적화된 스케줄을 제시할 수 있고, 인력으로 예측한 스케줄보다 효율적이고 안정적인 생산성 향상에 기여할 수 있다.
도 1은 본 발명의 일 실시예에 따른 머신러닝 기반 자동 공작기계 작업 스케줄링 과정을 설명하기 위한 개략도이다.
도 2는 본 발명의 일 실시예에 따른 스케줄링 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 머신러닝 기반 자동 공작기계 작업 스케줄링 장치의 구성을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 머신러닝 기반 자동 공작기계 작업 스케줄링 장치의 동작을 설명하기 위한 도면이다.
공작기계를 이용하여 제품을 생산하는 공장에서는 수천 가지의 제품을 각 제품의 크기나 모양에 따라 조건에 맞는 기계로 배분하여 생산한다. 이 때 이 조건들은 스케줄링에서 일종의 제약조건으로 작용한다. 현재 작업이 배정되어 있지 않은 기계가 있어도 이 조건을 충족시키지 못하는 기계에는 배분을 할 수 없기 때문이다. 본 발명은 이러한 스케줄 제약조건을 만족시키면서 생산 현장에서 원하는 최적화된 스케줄을 제시한다. 이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 머신러닝 기반 자동 공작기계 작업 스케줄링 과정을 설명하기 위한 개략도이다.
제안하는 머신러닝 기반 자동 공작기계 작업 스케줄링 과정은 먼저 데이터베이스로부터 현재 기계별 작업 배정 정보(111)를 수집하고, 스케줄 대상 작업 목록을 검색(112)한다.
이렇게 수집된 정보를 이용하여 본 발명에서 제안하는 스케줄링 알고리즘(110)을 적용한다. 본 발명의 가장 중요한 특징은 결정론적인 알고리즘에 따른 단일 스케줄 결과 만들어가는 것이 아니라, 다양한 스케줄을 생성하여 자체적으로 고안한 세 가지 스케줄링 성능 평가 지표를 적용하여 평가한 후 새로운 스케줄로 점차 발전시켜 최적의 스케줄 결과를 학습시키는 방법인 유전 알고리즘(genetic algorithm)방식을 사용한다는 것이다. 본 발명의 실시 예에 따른 세 가지 지표는 납기를 맞추지 못한 작업의 수, 모든 작업들에 대해 납기보다 지연된 시간들의 총합, 그리고 가장 마지막으로 끝나는 작업의 종료 시간이다.
제안하는 스케줄링 알고리즘(110)은 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성하고, 생성된 복수의 스케줄에 대한 평가지표를 산출한다. 이렇게 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단하여, 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성한다. 이러한 단계를 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행한다. 반면에 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환한다.
이와 같은 스케줄링 알고리즘(110)을 적용하여 제시된 스케줄을 선택(120)한 후, 기계별 작업 배정 정보에 반영한다(130). 제시된 스케줄을 선택하지 않은 경우, 스케줄링 알고리즘(110)을 적용하는 단계부터 반복한다.
기계별 작업 배정 정보에 반영한 후, 기계별 작업 배정 정보를 디스플레이부에 표시한다(140). 제안하는 스케줄링 알고리즘(110)에 대하여, 도 2를 참조하여 더욱 상세히 설명한다.
도 2는 본 발명의 일 실시예에 따른 스케줄링 방법을 설명하기 위한 흐름도이다.
본 발명의 일 실시예에 따른 스케줄링 방법은 스케줄 작업 목록을 데이터베이스로부터 수집하는 단계(210), 상기 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성하는 단계(220), 상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 단계(230), 상기 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단하는 단계(240), 상기 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계(250) 및 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환하는 단계(260)를 포함한다.
단계(210)에서, 스케줄 작업 목록을 데이터베이스로부터 수집한다. 최초에 스케줄링을 할 대상 작업 목록들을 데이터베이스에서 가져온다.
단계(220)에서, 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성한다. 데이터베이스에서 가져온 스케줄링을 할 대상 작업 목록들을 이용하여 랜덤으로 N개의 스케줄을 만들어낸다.
단계(230)에서, 생성된 복수의 스케줄에 대한 평가지표를 산출한다. 이후, 더 좋은 평가지표를 가지는 스케줄들이 높은 선택확률을 가지도록 선택 확률을 설정한다.
단계(240)에서, 상기 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단한다.
산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 단계(250)에서 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성한다.
두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계를 상기 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행한다.
다시 말해, N개의 스케줄에 대해 각 두 개의 쌍으로 묶어 각 스케줄 쌍에 대해 교차 조합(cross over) 연산과 변이(mutation) 연산을 통해 새로운 두 개의 스케줄로 업데이트한다. 이러한 방식으로 생성된 새로운 N개의 스케줄에 대하여 교차 조합과 변이를 반복한다. 새로운 N개의 스케줄이 생성될 때마다 선택과 평가 과정을 반복하여 점차 평가 지표가 좋은 다양한 스케줄들이 새로 생성되도록 유도한다. 이후, 다시 단계(230)으로 이동하여 생성된 복수의 스케줄에 대한 평가지표를 산출한다.
산출된 평가지표가 목표 평가지표에 도달했을 경우, 단계(260)에서 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환한다. 이후, 사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하고, 상기 기계별 작업 배정 정보를 표시한다. 그리고, 기계별 작업 배정 정보에 반영된 스케줄 대로 작업을 재분배하고, 상기 재분배된 결과는 다시 시각화하여 화면에 표시한다.
도 3은 본 발명의 일 실시예에 따른 머신러닝 기반 자동 공작기계 작업 스케줄링 장치의 구성을 나타내는 도면이다.
제안하는 머신러닝 기반 자동 공작기계 작업 스케줄링 장치는 전처리부(310), 유전 알고리즘 기반 스케줄 생성부(320), 스케줄 평가부(330), 스케줄 분석부(340) 및 디스플레이부(도시하지 않음)를 포함한다.
전처리부(310)는 스케줄 작업 목록을 데이터베이스로부터 수집한다.
유전 알고리즘 기반 스케줄 생성부(320)는 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성한다. 데이터베이스에서 가져온 스케줄링을 할 대상 작업 목록들을 이용하여 랜덤으로 N개의 스케줄을 만들어낸다.
스케줄 평가부(330)는 생성된 복수의 스케줄에 대한 평가지표를 산출한다. 이후, 더 좋은 평가지표를 가지는 스케줄들이 높은 선택확률을 가지도록 선택 확률을 설정한다.
유전 알고리즘 기반 스케줄 생성부(320)는 스케줄 분석부의 결과에 따라, 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성한다.
유전 알고리즘 기반 스케줄 생성부(320)는 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계를 상기 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행한다.
다시 말해, N개의 스케줄에 대해 각 두 개의 쌍으로 묶어 각 스케줄 쌍에 대해 교차 조합(cross over) 연산과 변이(mutation) 연산을 통해 새로운 두 개의 스케줄로 업데이트한다. 이러한 방식으로 생성된 새로운 N개의 스케줄에 대하여 교차 조합과 변이를 반복한다. 새로운 N개의 스케줄이 생성될 때마다 선택과 평가 과정을 반복하여 점차 평가 지표가 좋은 다양한 스케줄들이 새로 생성되도록 유도한다. 이후, 다시 스케줄 평가부(330)를 통해 생성된 복수의 스케줄에 대한 평가지표를 산출한다.
스케줄 분석부(340)는 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단한다. 스케줄 분석부(340)는 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환한다.
이후, 사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하고, 디스플레이부는 사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하여 기계별 작업 배정 정보를 표시한다.
스케줄 분석부(340)는 기계별 작업 배정 정보에 반영된 스케줄 대로 작업을 재분배하고, 상기 재분배된 결과는 상기 디스플레이부를 통해 다시 시각화하여 화면에 표시한다.
도 4는 본 발명의 일 실시예에 따른 머신러닝 기반 자동 공작기계 작업 스케줄링 장치의 동작을 설명하기 위한 도면이다.
제안하는 머신러닝 기반 자동 공작기계 작업 스케줄링 장치는 앞서 설명한 바와 같이, 공정 스케줄링 최적화 소프트웨어(420)의 전처리부를 통해 스케줄 작업 목록을 생산 현장 공정 관리 데이터베이스(410)로부터 수집하여 전처리를 수행한다(421).
이후, 유전 알고리즘 기반 스케줄 생성부는 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 유전 알고리즘 기반 스케줄을 생성한다. 유전 알고리즘 기반 스케줄 생성부는 스케줄 분석부의 결과에 따라, 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성한다(422).
유전 알고리즘 기반 스케줄 생성부는 두 개의 평가지표에 해당하는 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계를 상기 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행한다.
스케줄 평가부를 통해 생성된 복수의 스케줄에 대한 평가지표를 산출한다(423). 그리고, 스케줄 분석부는 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 분석한다(424). 이후, 더 좋은 평가지표를 가지는 스케줄들이 높은 선택확률을 가지도록 선택 확률을 설정한다.
복수의 스케줄에 대해 각 두 개의 쌍으로 묶어 각 스케줄 쌍에 대해 교차 조합(cross over) 연산과 변이(mutation) 연산을 통해 새로운 두 개의 스케줄로 업데이트한다(424). 이러한 방식으로 생성된 새로운 스케줄에 대하여 교차 조합과 변이를 반복한다.
그리고, 다시 스케줄 평가부를 통해 생성된 복수의 스케줄에 대한 평가지표를 산출한다. 스케줄 분석부는 산출된 평가지표가 목표 평가지표에 도달했을 경우, 가장 높은 평가지표를 갖는 스케줄이 선택되도록 선택확률을 설정하여 사용자에게 반환한다.
사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하고, 디스플레이부는 사용자에게 반환된 스케줄을 기계별 작업 배정 정보에 반영하여 기계별 작업 배정 정보를 표시한다. 스케줄 분석부는 기계별 작업 배정 정보에 반영된 스케줄 대로 작업을 재분배하고, 상기 재분배된 결과는 상기 디스플레이부를 통해 다시 시각화하여 화면에 표시한다(430).
단순한 형태의 유전알고리즘만을 사용해서는 앞서 설명한 공장의 생산조건에서 오는 제약들을 만족시킬 수 없는 스케줄들이 나올 확률이 높기 때문에, 본 발명에서는 더 나아가 제약 조건을 만족시키도록 하기 위해 발전된 형태의 유전 알고리즘을 적용하여 생산 현장의 환경에서 오는 현실적인 제약들을 최대한 만족시키면서 생산 납기는 최대한 만족하는 스케줄들을 생산해낸다. 이를 실현하기 위해서 앞서 설명한 제약들을 어기는 정도를 다시 수치화하여 평가지표에서 패널티를 주어 점점 이러한 스케줄들이 선택될 확률이 낮아지게 하는 방법을 사용한다. 이러한 방법을 통해 종래기술에서 인력으로 예측한 스케줄보다 효율적이고 안정적인 생산성 향상에 기여할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다.  또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다.  이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다.  예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다.  또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.  소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다.  소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다.  상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.  상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.  컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.  프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (1)

  1. 스케줄 작업 목록을 데이터베이스로부터 수집하는 단계;
    상기 스케줄 작업 목록에 대하여 처리해야 하는 스케줄 작업을 대상으로 복수의 스케줄을 생성하는 단계;
    상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 단계;
    상기 산출된 복수의 스케줄에 대한 평가지표가 목표 평가지표에 도달했는지 판단하는 단계; 및
    상기 산출된 평가지표가 목표 평가지표에 도달하지 못했을 경우, 평가지표에 해당하는 두 개의 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계
    를 포함하고,
    상기 평가지표에 해당하는 두 개의 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계가 상기 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행된 후에, 상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 단계로 복귀되고,
    상기 산출된 평가지표가 목표 평가지표에 도달했을 경우, 더 높은 평가지표를 갖는 스케줄들이 높은 선택확률을 가지도록, 상기 생성된 복수의 스케줄에 선택확률을 설정하여 사용자에게 반환하는 단계;
    상기 복수의 스케줄 중 어느 하나가 선택되면, 상기 선택된 스케줄을 기계별 작업 배정 정보에 반영하는 단계;
    상기 기계별 작업 배정 정보를 표시하는 단계; 및
    상기 기계별 작업 배정 정보에 반영된 스케줄 대로 작업을 재분배하고, 상기 재분배된 결과는 다시 시각화하여 화면에 표시하는 단계
    를 더 포함하고,
    상기 생성된 복수의 스케줄에 대한 평가지표를 산출하는 단계는,
    상기 생성된 복수의 스케줄 각각에 대하여, 납기를 맞추지 못한 작업의 수, 모든 작업들에 대해 납기 보다 지연된 시간들의 총합 및 가장 마지막으로 끝나는 작업의 종료 시간을 기초로 상기 평가지표를 산출하고,
    상기 평가지표에 해당하는 두 개의 스케줄을 선택하고, 유전 알고리즘을 이용하여 두 개의 새로운 스케줄을 생성하는 단계는,
    상기 복수의 스케줄에 대하여 두 개의 스케줄을 하나의 쌍으로 묶고, 각 스케줄 쌍에 대해 교차 조합(cross over) 연산 및 변이(mutation) 연산을 통해 두 개의 새로운 스케줄을 생성하여 업데이트하고,
    목표 평가지표를 만족시키도록 하기 위해 복수의 스케줄의 수만큼의 새로운 스케줄이 생성될 때까지 반복 수행함으로써, 평가지표의 제약들을 어기는 정도를 다시 수치화하고 평가지표에서 패널티를 주어 목표 평가지표에 도달하지 못하는 스케줄들이 선택될 확률이 낮아지게 하는 점차 발전된 형태의 유전 알고리즘을 적용하여 최적의 스케줄들을 생산하는
    머신러닝 기반 자동 공작기계 작업 스케줄링 방법.
KR1020190040892A 2019-04-08 2019-04-08 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치 KR101984460B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190040892A KR101984460B1 (ko) 2019-04-08 2019-04-08 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190040892A KR101984460B1 (ko) 2019-04-08 2019-04-08 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180011200 Division 2018-01-30 2018-01-30

Publications (1)

Publication Number Publication Date
KR101984460B1 true KR101984460B1 (ko) 2019-05-30

Family

ID=66675566

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190040892A KR101984460B1 (ko) 2019-04-08 2019-04-08 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101984460B1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928648A (zh) * 2019-12-10 2020-03-27 浙江工商大学 融合启发式和智能计算的云工作流分段在线调度优化方法
CN112446526A (zh) * 2019-09-05 2021-03-05 美商讯能集思智能科技股份有限公司台湾分公司 生产排程***及方法
KR20210099932A (ko) 2020-02-05 2021-08-13 주식회사뉴로코어 강화 학습을 이용한 공장 시뮬레이터 기반 스케줄링 시스템
KR20210099934A (ko) 2020-02-05 2021-08-13 주식회사뉴로코어 공정 및 제품 유형에 독립적인 강화 학습 기반 스케줄링 시스템
KR102338304B1 (ko) 2020-10-20 2021-12-13 주식회사 뉴로코어 강화 학습을 이용한 공장 시뮬레이터 기반 스케줄링 시스템
KR20230165026A (ko) 2022-05-26 2023-12-05 주식회사 뉴로코어 로트 이력 재현 기능을 구비한 공장 시뮬레이터 기반 스케줄링 신경망 학습 시스템
KR20240000923A (ko) 2022-06-24 2024-01-03 주식회사 뉴로코어 공장 상태 스킵 기능의 시뮬레이터 기반 스케줄링 신경망 학습 시스템
KR20240000926A (ko) 2022-06-24 2024-01-03 주식회사 뉴로코어 제품 유형 및 유형 개수에 독립적인 신경망 기반 공정 스케줄링 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225203A (ja) * 1992-02-17 1993-09-03 Nippon Telegr & Teleph Corp <Ntt> ジョブショップスケジューリング問題解決方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05225203A (ja) * 1992-02-17 1993-09-03 Nippon Telegr & Teleph Corp <Ntt> ジョブショップスケジューリング問題解決方式

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112446526A (zh) * 2019-09-05 2021-03-05 美商讯能集思智能科技股份有限公司台湾分公司 生产排程***及方法
CN112446526B (zh) * 2019-09-05 2024-03-12 美商讯能集思智能科技股份有限公司台湾分公司 生产排程***及方法
CN110928648A (zh) * 2019-12-10 2020-03-27 浙江工商大学 融合启发式和智能计算的云工作流分段在线调度优化方法
CN110928648B (zh) * 2019-12-10 2022-05-20 浙江工商大学 融合启发式和智能计算的云工作流分段在线调度优化方法
KR20210099932A (ko) 2020-02-05 2021-08-13 주식회사뉴로코어 강화 학습을 이용한 공장 시뮬레이터 기반 스케줄링 시스템
KR20210099934A (ko) 2020-02-05 2021-08-13 주식회사뉴로코어 공정 및 제품 유형에 독립적인 강화 학습 기반 스케줄링 시스템
KR102338304B1 (ko) 2020-10-20 2021-12-13 주식회사 뉴로코어 강화 학습을 이용한 공장 시뮬레이터 기반 스케줄링 시스템
KR20230165026A (ko) 2022-05-26 2023-12-05 주식회사 뉴로코어 로트 이력 재현 기능을 구비한 공장 시뮬레이터 기반 스케줄링 신경망 학습 시스템
KR20240000923A (ko) 2022-06-24 2024-01-03 주식회사 뉴로코어 공장 상태 스킵 기능의 시뮬레이터 기반 스케줄링 신경망 학습 시스템
KR20240000926A (ko) 2022-06-24 2024-01-03 주식회사 뉴로코어 제품 유형 및 유형 개수에 독립적인 신경망 기반 공정 스케줄링 시스템

Similar Documents

Publication Publication Date Title
KR101984460B1 (ko) 머신러닝 기반 자동 공작기계 작업 스케줄링 방법 및 장치
US10496436B2 (en) Method and apparatus for automatically scheduling jobs in computer numerical control machines using machine learning approaches
JP6122621B2 (ja) プロジェクトの計画及び管理のシミュレーション及び視覚化
US10331295B2 (en) Visualization of an object using a visual query system
Alagöz et al. Rescheduling of identical parallel machines under machine eligibility constraints
JP6467264B2 (ja) 計画作成支援装置および計画作成支援方法
JP2007157124A (ja) スケジュール修正装置及びスケジュール修正プログラム、並びにスケジュール修正方法
JP2007233944A (ja) 商品販売予測システム
US9600792B2 (en) Method and apparatus for generating an engineering workflow
EP3502872B1 (en) Pipeline task verification for a data processing platform
WO2014061229A1 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
CN115545577B (zh) 排程数据的处理方法和设备
US20090319240A1 (en) Simulation apparatus, simulation control method, and computer product
JP6853134B2 (ja) 生産支援システム、及び生産支援方法
JP6094594B2 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
US11004007B2 (en) Predictor management system, predictor management method, and predictor management program
CN111191999A (zh) 产品研发管理方法、装置、计算机设备及存储介质
Pfeiffer et al. Simulation as one of the core technologies for digital enterprises: assessment of hybrid rescheduling methods
US8201023B2 (en) Test optimization
JP5911831B2 (ja) 生産管理装置および生産管理プログラム
US20120330619A1 (en) Dynamic connection visualization in computer aided design package
JP2011003097A (ja) 作業完了日予測システム
JPH04184602A (ja) 生産計画作成システムおよび生産計画作成方法
JP4906587B2 (ja) ジョブ稼動状況評価システム、ジョブ稼動状況評価方法及びジョブ稼動状況評価プログラム
JP4419814B2 (ja) サービス品質評価支援装置

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant