KR102590516B1 - 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치 - Google Patents

공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR102590516B1
KR102590516B1 KR1020220147122A KR20220147122A KR102590516B1 KR 102590516 B1 KR102590516 B1 KR 102590516B1 KR 1020220147122 A KR1020220147122 A KR 1020220147122A KR 20220147122 A KR20220147122 A KR 20220147122A KR 102590516 B1 KR102590516 B1 KR 102590516B1
Authority
KR
South Korea
Prior art keywords
simulation
experiment
level
module
data
Prior art date
Application number
KR1020220147122A
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 KR1020220147122A priority Critical patent/KR102590516B1/ko
Priority to US18/454,551 priority patent/US20240152851A1/en
Application granted granted Critical
Publication of KR102590516B1 publication Critical patent/KR102590516B1/ko

Links

Classifications

    • 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/067Enterprise or organisation modelling
    • 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/41885Total 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 modeling, simulation of the manufacturing system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0256Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults injecting test signals and analyzing monitored process response, e.g. injecting the test signal while interrupting the normal operation of the monitored system; superimposing the test signal onto a control signal during normal operation of the monitored system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • 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/0633Workflow analysis
    • 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/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • 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/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • 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]

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)

Abstract

이에, 본 발명의 일 목적은 공장의 작업 일정에 대한 What-if 시뮬레이션 실험의 대상이 되는 모델의 기준 정보의 요인의 수준을 변경하면서 성능 지표를 추출하는 과정을 자동화할 수 있도록 하여 효과적으로 최적의 실험 결과(즉, 시나리오)를 결정하고 이에 기초하여 실제 공장의 작업 일정에 대한 디스패칭 전략을 수립 가능하도록 하는 것에 있다.
이를 위해, 본 발명의 일 실시예에 따른 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 클라이언트 장치는, What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하고, 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하기 위한 실험 설계 모듈과, 상기 실험 설계 데이터에 기초하여 복수의 실행 엔진을 포함하는 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 병렬 실행함으로써 실험 실행 결과를 출력하기 위한 시뮬레이션 실행 모듈을 포함한다.

Description

공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치{What-if Simulation Method of Factory Situation And Device That Implements Same}
본 발명은 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치에 관한 것이며, 보다 구체적으로는 모델의 요인(Factor)을 변경시키면서 성능지표를 추출하는 What-if 시뮬레이션을 자동화하여 효과적으로 최적의 실험 결과를 결정하기 위한 방법 및 장치에 관한 것이다.
공장, 예를 들어 반도체 제조 공장은 가장 정교한 인공 시스템 중 하나이고, 일반적으로 자동화된 자원 처리 시스템과 연결되는 수 백대 또는 수 천 대의 고가 장비들로 구성되어 있다. 이러한 수 많은 장비들로 구성되는 공장에서 최적의 작업 일정을 구축하게 되면 공장 생산성을 상당히 개선할 수 있다.
하지만, 기존에 공장 내 배치되는 많은 장비들에 대한 작업 일정을 마련하기 위해서, 전문가 등 사람에 의해 조정되는 파라미터들에 기초한 발견적 해결 방식에 의존하였으나, 해당 방식은 공장 내 작업 일정을 세우기 위해서 매번 사람이 개입되어야 하고, 그로 인해 공장 운영 효율이 제한될 수 있다는 단점이 있다.
특히, 각 작업장에서 진행되는 가용한 작업들을 선택하고 순서를 정하는 디스패칭(dispatching) 전략을 수립함에 있어 상기한 바와 같은 사람에 의한 발견적 해결 방식은 한계점이 있음이 분명하고, 이를 보완할 수 있는 대체 방식의 개발 및 보급이 시급한 상황이다.
이에 공장의 작업 일정에 대한 시나리오에 대해 시뮬레이션을 수행함으로써 미리 시나리오에 대한 결과를 예측하는 방식이 이용되고 있다. 그러나 시나리오 또는 시뮬레이션 모델의 요인(Factor)을 변경시키면서 성능지표를 추출하는 What-if 시뮬레이션을 수행함에 있어서, 자동화된 툴이 없고 사람이 수동으로 일일이 시나리오나 요인을 입력해야 하는 번거로움이 존재한다.
이에, 본 발명의 일 목적은 공장의 작업 일정에 대한 What-if 시뮬레이션 실험의 대상이 되는 모델의 기준 정보의 요인의 수준을 변경하면서 성능 지표를 추출하는 과정을 자동화할 수 있도록 하고 용이하게 할 수 있는 방법을 제공하는 것에 있다.
또한, 본 발명의 다른 목적은 공장의 작업 일정에 대한 What-if 시뮬레이션 실험을 통해 효과적으로 최적의 실험 결과(즉, 시나리오)를 결정하고 이에 기초하여 실제 공장의 작업 일정에 대한 디스패칭 전략을 수립하는 과정을 용이하게 하는 것에 있다.
다만, 본 발명이 해결하고자 하는 과제는 이상에서 언급한 바로 제한되지 않으며, 언급되지는 않았으나 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있는 목적을 포함할 수 있다.
이하 본 발명의 목적을 달성하기 위한 구체적 수단에 대하여 설명한다.
본 발명의 일 실시예에 따른 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 장치는, What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하고, 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하기 위한 실험 설계 모듈과, 상기 실험 설계 데이터에 기초하여 복수의 실행 엔진을 포함하는 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 병렬 실행함으로써 실험 실행 결과를 출력하기 위한 시뮬레이션 실행 모듈을 포함한다.
전술한 장치에 있어서, 상기 관심 요인의 수준을 설정하는 것은, 상기 수준의 유형을 선택하는 것, 및 선택된 상기 수준의 유형에 대한 수준 값에 대한 입력을 수신하는 것을 포함한다.
전술한 장치에 있어서, 상기 수준의 유형은 관리자가 직접 지정한 값을 수준 값으로 정의하도록 하는 List 유형, 최소 값(min), 최대 값(max) 및 증가폭을 설정할 수 있는 Range 유형, 및 지정된 범위에서 무작위로 수준 값을 추출하는 Distribution Sampling 유형 중 적어도 하나를 포함한다.
전술한 장치에 있어서, 상기 시뮬레이션 실행 모듈의 상기 실험 실행 결과는 성능 지표(KPI)를 포함한다.
전술한 장치에 있어서, 상기 시뮬레이션 실행 모듈은 커스텀 출력 프로세싱 모듈을 더 포함하고, 상기 실험 실행 결과는 관리자가 정의한 커스템 출력 데이터를 포함하되, 상기 커스텀 출력 데이터는 상기 커스텀 출력 프로세싱 모듈에 의해 추출된다.
전술한 장치에 있어서, 상기 모델은 What-if 시뮬레이션 실험의 설계를 위한 상기 장치의 사용자 인터페이스를 통해 관리자에 의해 선택을 수신함으로써 선택된다.
전술한 장치에 있어서, 상기 실험 실행 결과를 분석하여 관리자에게 제시하기 위한 데이터 분석 모듈을 더 포함한다.
전술한 장치에 있어서, 상기 데이터 분석 모듈에서 상기 실험 실행 결과를 분석하는 것은 상기 성능 지표 및 상기 관심 요인 사이의 상관 계수 분석 및 민감도 분석을 수행하는 것을 포함한다.
본 발명의 일 실시예에 따른 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 시스템은, What-if 시뮬레이션 실험을 설계 및 실행하기 위한 클라이언트 장치; 상기 클라이언트 장치 상에서 상기 What-if 시뮬레이션 실험에 대한 애플리케이션을 관리하기 위한 관리 모듈을 포함하는 시뮬레이션 관리 서버; 및 상기 What-if 시뮬레이션 실험에 대한 데이터를 저장하기 위한 외부 DB를 포함하고, 상기 클라이언트 장치는, 상기 What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하고, 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하기 위한 실험 설계 모듈과, 상기 실험 설계 데이터에 기초하여 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 실행함으로써 실험 실행 결과를 출력하기 위한 시뮬레이션 실행 모듈을 포함하고, 상기 시뮬레이션 관리 서버는 상기 What-if 시뮬레이션 실험을 실행하기 위한 시뮬레이션 모듈을 더 포함하고, 상기 클라이언트 장치가 상기 시뮬레이션 관리 서버에 실험 실행 요청을 전송하는 경우, 상기 시뮬레이션 실행 모듈에 의한 상기 What-if 시뮬레이션 실험은 실행되지 않는다.
본 발명의 일 실시예에 따른 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 방법은, What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하는 단계와, 상기 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하는 단계와, 상기 실험 설계 데이터에 기초하여 복수의 실행 엔진을 포함하는 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 병렬 실행함으로써 실험 실행 결과를 출력하는 단계를 포함한다.
상기한 바와 같이, 본 발명에 의하면 이하와 같은 효과가 있다.
첫째로, 공장의 작업 일정에 대한 What-if 시뮬레이션 실험의 대상이 되는 모델의 기준 정보의 요인의 수준을 변경하면서 성능 지표를 추출하는 과정을 자동화할 수 있도록 하여 용이하게 실험 설계를 할 수 있도록 한다.
둘째로, What-if 시뮬레이션 실험을 실행함으로서 얻어진 실험 결과에 기초하여 사용자로 하여금 공장의 작업 일정에 대한 디스패칭 전략을 수립과 같은 공장 상황에 대한 의사결정을 내리는데에 도움을 줄 수 있다.
셋째로, 복수의 입력 데이터 세트 각각에 대한 What-if 시뮬레이션 실험을 병렬적으로 실행할 수 있으므로, 사람이 입력 데이터를 일일이 수동 입력하여 시뮬레이션 실험을 수행하던 기존의 방식에 비해, 클라이언트 장치 및 시뮬레이션 관리 서버의 프로세싱 성능 및 리소스를 효율적으로 사용할 수 있게 해주므로 그 처리 속도가 현저히 빠르며 사람의 노동력 투입을 최소화하고 사람의 개입에 따른 오류 발생 가능성을 줄일 수 있다.
넷째로, 시뮬레이션 실험에 대한 입력 데이터를 별도의 사용자 인터페이스를 통해 관리자로 하여금 직관적으로 작성 및 편집할 수 있게 하여 실험 설계를 용이하게 할 수 있다.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른 공장의 작업 일정을 시뮬레이션하기 위한 시스템을 개략적으로 나타내는 도면이다.
도 2 및 도 3은 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험 설계를 위한 입력 데이터를 입력하기 위한 사용자 인터페이스의 예시적인 도면이다.
도 4는 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험을 위한 입력 데이터 중 변경 대상이 되는 요인을 선택하고 요인의 수준을 선택하기 위한 요인 편집기의 예시적인 도면이다.
도 5는 본 발명의 다른 일 실시예에 따른 What-if 시뮬레이션 실험을 위한 입력 데이터 중 변경 대상이 되는 요인을 선택하고 요인의 수준을 선택하기 위한 요인 편집기의 예시적인 도면이다.
도 6은 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험의 출력 데이터를 편집하기 위한 출력 데이터 편집기의 예시적인 도면이다.
도 7은 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험의 설계를 위한 실험 설계 편집기의 예시적인 도면이다.
도 8은 본 발명의 일 실시예에 따른 시뮬레이션 실행 모듈의 구조를 개략적으로 나타내는 도면이다.
도 9는 본 발명의 일 실시예에 따른 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 방법에 대한 흐름도이다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 쉽게 실시할 수 있는 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 예에 한정되지 않는다. 또한, 본 발명의 바람직한 실시예에 대한 동작원리를 상세하게 설명함에 있어서 관련된 공지기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다. 명세서 전체에서, 특정 부분이 다른 부분과 연결되어 있거나 위/아래에 있다고 할 때, 이는 직접적으로 연결되어 있거나, 위/아래에 있는 경우뿐만 아니라, 그 중간에 다른 구성요소를 사이에 두고, 간접적으로 연결되거나 위/아래에 있는 경우도 포함한다.
나아가, 명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
"제1", "제2" 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이러한 구성요소들은 해당 용어들에 의해 한정되어서는 안 된다. 즉, 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는" 및 "/" 라는 기재는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 달리 구체적으로 명시하지 않는 한, "단수"의 표현은 본 명세서에서 하나 이상의 개체를 포함하는 것으로 사용된다. 마지막으로, 본 명세서에서 사용된 바와 같이, "또는"은 달리 구체적으로 명시하지 않는 한, 비-배타적인 "또는"을 의미한다.
또한, 본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
공장의 작업 일정을 시뮬레이션하기 위한 시스템의 개요
도 1은 본 발명의 일 실시예에 따른 공장의 작업 일정을 시뮬레이션하기 위한 시스템을 개략적으로 나타내는 도면이다.
도 1을 참조하면, 공장의 작업 일정을 시뮬레이션하기 위한 시스템은, 클라이언트 장치(10), 시뮬레이션 관리 서버(20) 및 외부 데이터베이스(DB)(30)를 포함할 수 있다.
클라이언트 장치(10)는 공장을 관리 감독하는 관리자 또는 기타 사용자의 하나 이상의 컴퓨팅 디바이스일 수 있으며, 예를 들어, 서버, PC, 휴대폰, 태블릿, 노트북, PDA 등 다양한 디바이스일 수 있다. 클라이언트 장치(10)는 실험 설계 모듈(12), 시뮬레이션 실행 모듈(14), 데이터 분석 모듈(16) 및 플러그인 모듈(18)을 포함할 수 있으며, 이러한 모듈들은 관리자 디바이스의 프로세서가 컴퓨터 실행가능한 명령어를 실행함으로써 구현되는 소프트웨어 모듈이거나, 별도의 하드웨어 모듈로 구성되거나, 둘의 조합으로 구성될 수 있으며, 이에 대해 한정하지는 않는다.
실험 설계 모듈(12)은 What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인(Factor) 중에서 관리자가 실험 결과 있어서 관심이 있는 하나 이상의 요인들을 관심 요인으로 선택하고, 선택된 관심 요인에 대해 수준을 변경하여 입력할 수 있도록 함으로써 실험 설계 데이터를 생성할 수 있으며, 이를 통해 What-if 시뮬레이션 실험에 대한 다양한 설계가 가능하도록 한다. 여기서, 모델은 실제 공장의 장비, 작업물, 셋업 시간 등 공장의 상황 정보를 기초로 컴퓨터 상에서 생성된 가상의 공장 환경일 수 있으며, 입력 값이 되는 기준 정보를 모델에 입력하면, 시뮬레이션 실험 결과인 출력 값을 출력하도록 구성될 수 있다.
What-if 시뮬레이션 실험을 설계하는 과정에 대해 설명하면, 먼저, 관리자는 클라이언트 장치(10)의 사용자 인터페이스를 통해 What-if 시뮬레이션 실험의 대상이 되는 베이스 모델(Base Model)을 선택할 수 있다.
베이스 모델을 선택한 후, 관리자는 해당 모델에 대한 입력 값인 기준 정보의 여러 요인들 중에서 관심이 있는(즉, 변경을 가할) 하나 이상의 요인을 독립 변수로써 선택하고 선택된 요인의 수준(level)을 정의할 수 있다. 모델의 기준 정보는 데이터 테이블(Data Table) 및 전역 변수(Global Variable) 중 적어도 하나를 포함할 수 있다. 필요시, 관리자는 모델의 기준 정보의 요인 및 수준을 새로 생성하는 과정을 거칠 수도 있다. 또한, 실험 설계 모듈(12)을 통해, 관리자는 클라이언트 장치(10)의 사용자 인터페이스를 통해 모델에서 수행할 What-if 시뮬레이션 실험의 결과를 평가하기 위한 종속 변수로써 출력 값, 예를 들어 성능 지표(KPI)를 정의(즉, 생성 또는 선택)할 수 있다. 성능 지표(KPI)는 실험 실행 결과를 정제하여 하나의 숫자 또는 임의의 객체(시간, 문자 등)으로 나타내는 것으로, 실험 결과를 정제하는 것은 What-if 시뮬레이션 실험의 결과를 그대로 표시하는 것 뿐 아니라 실험 결과로 나온 다양한 수식(sum, count, average, mean, min, max, std 등)들을 조합한 형태로 표시하는 것을 포함할 수 있다. 이와 같이, 관리자가 실험 설계 모듈(12)을 통해 모델, 모델의 독립 변수(변경을 가할 기준 정보의 요인) 및 종속 변수(성능 지표)를 선택함으로써 What-if 시뮬레이션 실험을 설계하여 실험 설계 데이터를 생성할 수 있다.
시뮬레이션 실행 모듈(14)은 실험 설계 모듈(12)을 통해 그 모델 및 독립/종속 변수 등이 정의된 What-if 시뮬레이션 실험의 실험 설계 데이터에 기초하여 실행기에 입력할 입력 데이터를 생성하고, 실행기(Executor)를 실행하여 실험 실행 결과를 출력할 수 있다. 이 때, 시뮬레이션 실행 모듈(14)은 모델에 관리자가 입력한 입력 값에 대한 전처리 과정을 통해 What-if 시뮬레이션 실험에 대한 입력 데이터를 생성하는 과정을 거칠 수 있다.
한편, 입력 데이터는 복수의 입력 데이터 세트가 포함되어 있을 수 있으며, 이 경우, 클라이언트 장치(10)의 프로세싱 성능 및 리소스에 기초하여 실행기의 복수의 실행 엔진을 통해 복수의 입력 데이터 세트 각각에 대한 What-if 시뮬레이션 실험을 병렬적으로 실행할 수 있다. 이러한 병렬적인 실험 실행은, 사람이 입력 데이터를 일일이 수동 입력하여 시뮬레이션 실험을 수행하던 기존의 방식에 비해, 클라이언트 장치(10) 및 시뮬레이션 관리 서버(20)의 프로세싱 성능 및 리소스를 효율적으로 사용할 수 있게 해주므로 그 처리 속도가 현저히 빠르며 사람의 노동력 투입을 최소화하고 사람의 개입에 따른 오류 발생 가능성을 줄인다는 효과를 가진다.
또한, 일 실시예에 따르면, 시뮬레이션 실행 모듈(14)은 커스텀 출력 프로세싱(Custom Output Processing) 모듈을 포함할 수 있다. 커스텀 출력 프로세싱 모듈을 통해 관리자가 정의한 추가적인 커스텀 출력 데이터를 추출하여 실험 실행 결과로서 출력할 수 있다. 일례로, 커스텀 출력 프로세싱 모듈은 모델에서 사전에 정의되지 않은 출력 스키마(Output Schema)를 관리자가 임의로 만들어 하나의 모델이 실행 종료될 때, 혹은 전체 실험이 종료될 때 데이터를 수집 및 추출할 수 있다. 예를 들어, 특정 모델의 출력으로서 작업물의 투입 시간 및 완료 시간만 기록하는 것으로 설정되어 있는 경우, 관리자가 Cycle Time(완료시각 - 투입시각) 정보가 출력되길 원하는 경우, 커스텀 출력 프로세싱 모듈을 통해 Cycle Time 정보가 커스텀 출력 데이터로서 출력되도록 할 수 있다. 또한, 커스텀 출력 프로세싱 모듈은 Lot_ID(작업물 ID), Cycle_Time을 포함하는 두 가지 Column으로 구성된 출력 스키마를 구성하고, 매 시뮬레이션 실행(Run)이 끝날 때마다 Cycle_Time 값, 즉, 완료시각 - 투입시각 값을 구하여 해당 출력 스키마에 넣음으로써 커스텀 출력 데이터를 생성할 수 있다. 이처럼, 시뮬레이션 실행 모듈(14)은 실험 실행 결과로서 성능 지표 및/또는 커스텀 출력 데이터를 포함할 수 있게 된다.
데이터 분석 모듈(16)은 What-if 시뮬레이션 실험의 실험 실행 결과를 조회하고 이를 분석하는 작용을 한다. 비제한적인 예로써, 각 What-if 시뮬레이션 실험의 실험 실행 결과는 실험 실행을 위해 입력된 요인(Factor) 값(예: 하나 이상의 요인과 각 요인에 대한 수준)과 실험 결과인 성능 지표(KPI) 값을 적어도 포함하는데, 이러한 실험 실행 결과는 리포트 형식으로 표시될 수 있다. 또한 관리자가 클라이언트 장치(10)를 통해 Auto Refresh Interval을 설정함으로써 실험 실행 도중에도 주기적으로(예: 10s, 30s, 60s 간격 등) 중간 실험 결과가 업데이트될 수 있으며 예상 종료 시간(또는 잔여 실험 시간)을 데이터 분석 모듈(16)이 예상하여 출력될 수도 있다.
일 실시예에 따르면, 데이터 분석 모듈(16)은 각 What-if 시뮬레이션 실험의 실험 실행 결과에 포함된 요인(Factor) 값 및 성능 지표(KPI) 값 사이의 상관 계수를 종합적으로 확인할 수 있는 차트를 표시할 수 있다. 일례로, 차트는 행은 요인 값이고 열은 성능 지표(KPI) 값인 상관 매트릭스와, 상관 매트릭스에서 상관 관계가 높게 나온 요인 값-성능 지표 값 사이의 플롯(Plot)을 표시하는 플롯 그래프를 포함할 수 있다. 플롯 그래프를 통해 요인 값 및 성능 지표 사이의 민감도 분석을 수행할 수 있다. 일 예로써, 민감도 분석이란 요인 값이 변했을 때 이에 따라 성능 지표가 어느 정도로 변화하는지에 대한 정도, 또는 요인 값이 어느 정도의 값 이상 또는 이하가 되었을 때 성능 지표에 변화가 발생하는지(즉, 요인 값의 임계치)에 대한 것일 수 있으며, 그 구체적인 내용에 대하여 한정하지는 않는다.
플러그인 모듈(18)은 What-if 시뮬레이션 실험을 통해 모델 및 모델에 대한 입력 데이터를 최적화하거나, 입력 데이터의 각 요인의 편집을 용이하게 하거나, 새로운 요인 값, 성능 지표를 입력 가능하게 하는 등 다양한 방식으로 모델을 실행할 수 있도록 기능을 확장해주는 하나 이상의 플러그인 모듈을 포함할 수 있다.
비제한적인 일 예로써 플러그인 모듈(18)은 What-if 시뮬레이션 실험에 대한 모델의 디스패칭 시점에 인공 신경망을 통한 강화 학습을 통해 스케줄시 사용하는 사전 설정 요인의 가중치를 최적화하는 가중치 최적화(Weight Optimizer) 모듈을 포함할 수 있다.
또한, 플러그인 모듈(18)은 파라미터 발견 정책 그래디언트(Parameter Exploring Policy Gradient, PEPG)를 사용하여 Simulation Argument 최적화를 지원하는 PEPG 최적화 모듈을 포함할 수 있으며, 이를 통해 사용자가 요인과 성능 지표(KPI)를 지정하면 일종의 강화 학습을 통해 성능 지표를 최적화하는 요인을 발견할 수 있도록 실험을 반복 수행하는 기능을 수행할 수 있다.
도 1을 참조하면, 시뮬레이션 관리 서버(20)는 관리 모듈(22) 및 시뮬레이션 모듈(24)을 포함할 수 있다. 관리 모듈(22)은 What-if 시뮬레이션 실험을 수행하기 위해 클라이언트 장치(10)에서 공장 시뮬레이션 애플리케이션을 실행할 때, 로그인, 업데이트, 사용자 인터페이스(UI) 메뉴 구성 등과 관련된 데이터를 송수신 가능하도록 한다. 비제한적인 일 예로써, 관리 모듈(22)은 시뮬레이션 관리 서버(20)를 통해 클라이언트 장치(10)의 로그인 요청을 수신하여 관리자의 신원을 확인하고, 업데이트 요청 및 데이터 요청에 의해 업데이트 파일, 메뉴 구성 데이터 등을 클라이언트 장치에 전송할 수 있으며, 이를 통해 클라이언트 장치(10)에 설치된 공장 시뮬레이션 애플리케이션을 유지 및 관리하는 작용을 한다.
시뮬레이션 관리 서버(20)의 시뮬레이션 모듈(24)은 What-if 시뮬레이션 실험을 클라이언트 장치(10) 대신 실행하기 위한 모듈이다. 전술한 것처럼, 클라이언트 장치(10)는 실험 설계 모듈(12), 시뮬레이션 실행 모듈(14), 데이터 분석 모듈(16) 및 플러그인 모듈(18)을 포함함으로써 What-if 시뮬레이션 실험의 설계, 실행 및 실험 결과 데이터의 분석에 이르는 일련의 과정들을 수행할 수 있다. 그러나, 일부의 경우, 클라이언트 장치(10)의 프로세싱 성능이나 리소스의 제약으로 인해, 클라이언트 장치(10)에서 What-if 시뮬레이션 실험을 직접 실행하기 힘들거나 실험 실행 속도가 느린 경우가 있을 수 있다. 이에, What-if 시뮬레이션 실험의 실행을 시뮬레이션 관리 서버(20)에서 대신 수행해줄 수 있다. 일 예로, 클라이언트 장치(10)가 What-if 시뮬레이션 실험에 대한 실행 요청 및/또는 실험 설계 데이터를 시뮬레이션 관리 서버(20)로 전송하면, 시뮬레이션 관리 서버(20)는 시뮬레이션 모듈(24)을 통해 해당 실험을 실행하고 그 실험 실행 결과를 클라이언트 장치(10)로 전송할 수 있다. 이 경우 클라이언트 장치(10)의 시뮬레이션 실행 모듈은 What-if 시뮬레이션 실험을 직접 실행하지 않게 된다.
외부 DB(30)는 클라이언트 장치(10) 및/또는 시뮬레이션 관리 서버(20)에 의해 생성된 What-if 시뮬레이션 실험의 실험 실행 결과를 기록 및 저장할 수 있다. 또한, 외부 DB(30)는 실험 실행 결과 뿐만 아니라, 다수의 클라이언트 장치(10)에 대한 정보, 시뮬레이션을 위한 모델들 및 각 모델의 기준 정보 등 각종 데이터를 저장하고 있을 수 있다.
What-if 시뮬레이션 실험 설계를 위한 입력 데이터의 입력 방법
도 2 및 도 3은 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험 설계를 위한 입력 값을 입력하기 위한 사용자 인터페이스의 예시적인 도면이다. 이하 구체적으로 설명하는 것처럼 이러한 실험 설계 과정에 있어서 클라이언트 장치(10)에 표시된 사용자 인터페이스를 통해 관리자로부터 입력 값들을 수신할 수 있다.
먼저 도 2를 참조하면, 클라이언트 장치(10)에서 실행되는 공장 시뮬레이션 애플리케이션의 사용자 인터페이스는 새로운 What-if 시뮬레이션 실험(New Scenario)를 생성하기 위한 윈도우(120)를 표시할 수 있다. 윈도우(120)는 실험의 명칭을 입력할 수 있는 실험 명칭(Scenario name) 엔트리(121), 실험의 디렉토리를 설정할 수 있는 실험 디렉토리(Scenario Directory) 엔트리(122), 및 실험에 대한 모델(Model)을 선택할 수 있는 모델 엔트리(123)를 포함할 수 있다. 또한, 선택한 모델을 이용한 실험의 실행에 필요한 어셈블리(Assembly)의 경로를 지정할 수 있는 모델 경로 엔트리(124), 선택한 모델에 대한 커스텀화된 UI가 존재하는 경우 해당 UI의 경로를 지정할 수 있는 UI 경로 엔트리(125)를 포함할 수 있다. 모델 엔트리(123) 주변에 위치하는 브라우즈(Browse) 버튼을 선택하면 모델을 선택할 수 있는 팝업창(128)이 표시되며, 관리자는 팝업창(128)에 표시된 모델 트리 중에서 하나의 모델을 선택할 수 있다.
또한, 도 3을 참조하면, 팝업창(128)을 통해 관리자가 What-if 시뮬레이션의 대상이 되는 모델을 선택하면, 선택된 모델에 대한 입력 값의 기준 정보인 데이터 테이블(Data Table) 및 전역 변수(Globla Variable)를 편집할 수 있는 사용자 인터페이스가 표시될 수 있다. 비제한적인 일 예로서, 이러한 사용자 인터페이스는 데이터 테이블을 보기 및 편집 가능하도록 하는 데이터 테이블 뷰어(Data Table Viewer)(129a) 및 전역 변수들을 보기 및 편집 가능하도록 하는 전역 변수 뷰어(Global Variable Viewer)(129b)를 포함할 수 있으며, 이러한 뷰어들을 통해 모델의 기준 정보를 편집할 수 있다. 다만 기준 정보의 편집 방식은 다양한 변형이 이루어질 수 있으며 이에 대해 한정하지는 않는다. 도 3의 예시는 모델 중 Equipment라는 모델을 선택한 경우의 데이터 테이블 뷰어의 예와, 팝업창(128)의 Arguments 경로를 관리자가 선택한 경우의 전역 변수 뷰어의 예를 도시한 것이다.
도 4는 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험을 위한 입력 값 중 변경 대상이 되는 요인을 선택하고 요인의 수준을 선택하기 위한 요인 편집기의 예시적인 도면이다.
도 4를 참조하면, 요인 편집기(Factor Editor)를 통해 What-if 시뮬레이션 실험의 대상이 될 모델의 기준 정보 중에서 수준(level)을 변경해 가면서 실험을 진행할 관심 요인(Target Factor)을 선택할 수 있다. 비제한적인 예에서, 모델의 기준 정보는 데이터 테이블 및 전역 변수 테이블 내의 요인을 포함할 수 있는데, 이러한 요인 중 하나 이상의 관심 요인으로 선택하고, 선택된 관심 요인의 수준을 어떻게 변경할지를 등록할 수 있다. 도 4의 예에서는 모델에 있어서 제품(Product) 데이터 테이블의 값에 What-if 시뮬레이션 실험을 실행하고 싶은 관심 요인 및 수준을 정의하는 것에 대해 도시한다. 제품(Product) 데이터 테이블의 INPUT_INTERVAL이라는 요인이 관심 요인(131a)으로서 선택된 경우에 대한 것으로, 선택된 관심 요인(131a)에 대한 수준을 설정할 수 있는 수준 설정 윈도우(130)가 표시될 수 있다. 수준 설정 윈도우(130)는 관심 요인(131a)에 대한 관심 요인 정보 표시부(131), 수준 유형 입력부(132), 수준 값 입력부(133), 및 수준 값 표시부(134)를 포함할 수 있다. 도 4의 예에서는 수준 유형 입력부(132)에서 List 유형을 선택하였는데, List 유형은 관리자가 직접 지정한 값을 수준 값으로 정의하도록 하는 유형에 해당한다. 그 외에도 최소 값(min), 최대 값(max) 및 증가폭을 설정할 수 있는 Range 유형이고, 지정된 분포에서 무작위로 수준 값을 추출하는 Distribution Sampling 유형이 선택 가능하며, 이 외에 다른 유형도 설정할 수 있다. 예를 들어, 외부 프로그램 또는 스크립트로부터 생성된 값이나 Excel과 같은 편집 애플리케이션 프로그램으로부터 수준 값을 불러들이는 기능을 수행하는 유형이나, 클립보드를 활용한 복사 & 붙여넣기 기능을 수행하는 유형 등이 설정될 수 있다.
구체적인 예로써, List 유형, Range 유형, Distribution Sampling 유형은 관심 요인이 정수 또는 실수인 경우 적용되고, 관심 요인이 날짜인 경우 List 유형 및 Interval Time 유형(시간 간격을 나타내는 값)이 적용되고, 관심 요인이 문자열인 경우 List 유형만 적용될 수 있다. 도 4의 예에서는 List 유형을 선택한 후, 수준 값 입력부(133)에 구체적인 수준 값인 10, 20, 30, 40을 관리자가 입력하였으며, 그 결과, 수준 값 표시부(134)에는 관리자가 입력한 수준 값(10, 20, 30, 40)들이 표시될 수 있다. 또한, 관리자는 교체 버튼(135a) 및 추가 버튼(135b)을 선택함으로써 수준 유형 및 값들을 교체하거나 추가할 수 있다. 위 예에서 볼 수 있듯이, 수준 값은 숫자 또는 임의의 객체(시간, 문자열 등)가 될 수도 있다.
도 5는 본 발명의 다른 일 실시예에 따른 What-if 시뮬레이션 실험을 위한 입력 값 중 변경 대상이 되는 요인을 선택하고 요인의 수준을 선택하기 위한 요인 편집기의 예시적인 도면이다.
도 5를 참조하면, 관심 요인(131b)으로써 전역 변수 뷰어에서 Input Argument 중에서 period를 선택한 경우의 요인 편집기의 일 예를 도시한다. 또한, 관심 요인에 대한 수준 유형 입력부(132)에서 Range 유형을 선택한 경우, 수준 값 입력부(133)에서 최소 값(Min), 최대 값(Max) 및 증가폭(Inc)을 각각 입력할 수 있는 엔트리들이 표시될 수 있다. 그리고 수준 값 표시부(134)에는 관리자가 최소 값(Min)으로 1, 최대 값(Max)으로 11, 증가폭(Inc)으로 1을 입력한 경우, What-if 시뮬레이션 실험을 실행시 입력 값으로 사용될 관심 요인의 수준들을 표시할 수 있다.
이와 같이, 본 발명의 일 실시예에 따르면, 시뮬레이션 실험에 대한 입력 값의 관심 요인 및 그 수준을, 요인 편집기라는 별도의 사용자 인터페이스를 통해 관리자로 하여금 직관적으로 작성 및 편집할 수 있게 하여 실험 설계를 용이하게 하는 효과가 발생한다.
도 6은 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험의 출력 데이터를 편집하기 위한 출력 데이터 편집기의 예시적인 도면이다.
도 6을 참조하면, 출력 데이터 편집기(135)는 What-if 시뮬레이션 실험의 출력 데이터를 편집하기 위한 것으로서, 이 때의 출력 데이터는 각 What-if 시뮬레이션 실험에 대한 성능 지표(KPI) 및 관리자가 정의한 추가적인 커스텀 출력 데이터 중 적어도 하나를 포함할 수 있다. 여기서 성능 지표(KPI) 및 커스텀 출력 데이터는 What-if 시뮬레이션 실험 결과를 평가하기 위한 인덱스들의 집합으로서, 요인(Factor)의 조합에 따라 모델을 실행하여 What-if 시뮬레이션 실험 결과를 평가 가능하도록 한다. 도 6의 예에서는, 출력 데이터 편집기(135)는 성능 지표 계산식 편집부(136), 함수 선택부(137), 함수 편집부(138), 및 입력 가능한 모델 데이터를 표시하는 후보 모델 데이터 표시부(139)를 포함할 수 있다.
성능 지표 계산식 편집부(136)를 통해 관리자는 성능 지표(또는 커스텀 출력 데이터)의 산출에 이용할 계산식을 입력할 수 있다. 일 예에서는, What-if 시뮬레이션 실험에 사용되는 모델의 입력 데이터 또는 출력 데이터의 하나 이상의 요인(Factor)를 활용하여 성능 지표(또는 커스텀 출력 데이터)를 산출할 식을 입력할 수 있다.
함수 선택부(137)에서는 사전 설정된 함수를 선택할 수 있는데, 예를 들어, 사칙연산, 지수, 로그, 삼각함수, Type 변환, Table Aggregation(First, Last, Sum,Avg,Std, Count) 등의 함수를 이용 가능하며, 함수 편집부(138)를 통해 선택한 함수의 구체적인 수치 등을 편집 및 입력할 수 있다. 예를 들어, 성능 지표 계산식 편집부(136), 함수 선택부(137), 함수 편집부(138), 후보 모델 데이터 표시부(139)를 이용하여 Sum, Count 등의 함수를 선택하고 모델의 하나 이상의 요인(OutPuts.ProductCycleTimeTable, Inputs.ProductTable 등)을 선택하여 [Sum (OutPuts.ProductCycleTimeTable, "CycleTimeSec") / Count(Inputs.ProductTable, "ProductID", "PROD01") - 0.05]와 같은 계산식을 편집할 수 있다. 또한, 수치가 아닌 경우, 계산식으로 단독 값이 입력 가능하다.
이와 같이, 본 발명의 일 실시예에 따르면, 시뮬레이션 실험의 결과로 출력될 출력 데이터를 출력 데이터 편집기라는 별도의 사용자 인터페이스를 통해 관리자로 하여금 직관적으로 작성 및 편집할 수 있게 하여 실험 설계를 용이하게 하는 효과가 발생한다.
도 7은 본 발명의 일 실시예에 따른 What-if 시뮬레이션 실험의 설계를 위한 실험 설계 편집기의 예시적인 도면이다.
도 7을 참조하면, 실험 설계 편집기(140)는 입력된 하나 이상의 요인(Factor)들 및 성능 지표(KPI)를 이용해 What-if 시뮬레이션 실험을 관리자로 하여금 설계하도록 할 수 있다. 실험 설계 편집기(140)는 요인 지정부(141), 성능 지표 지정부(142) 및 미리보기 윈도우(143)를 포함할 수 있다. 도 7의 예에서는 요인 지정부(141)에 2개의 요인들 UNIT_QTY_1 및 UNIT_QTY_2를 지정하고, 성능 지표 지정부(142)에서는 Production_QTY를 지정한 경우에 대해 도시하고 있다. 이 경우 요인 UNIT_QTY_1는 수준이 6개이고, 요인 UNIT_QTY_2는 수준이 5개이므로, 총 6×5 = 30개의 실험 실행 횟수가 정해지게 되며, 미리보기 윈도우(143)에는 요인들 UNIT_QTY_1 및 UNIT_QTY_2의 각 수준을 조합한 실험 설계가 표시되고, Apply 버튼을 선택하여 실험을 실행한 이후 출력 데이터는 Production_QTY에서 지정한 값으로 출력될 수 있다.
전술한 본 발명의 일 실시예에 따른 클라이언트 장치(10)의 사용자 인터페이스를 통해, What-if 시뮬레이션 실험에 대한 실험 설계 데이터를 관리자로부터 효율적으로 입력 받을 수 있으며, 이에, 관리자의 입장에서는 간단한 입력만으로도 직관적인 방식으로 다수의 실험에 대한 설계를 수행할 수 있으므로, 실험 설계의 과정을 대폭 간편화함과 동시에 실험 설계 과정의 오류를 줄일 수 있는 효과가 발생한다.
시뮬레이션 실행 모듈
도 8은 본 발명의 일 실시예에 따른 시뮬레이션 실행 모듈의 구조를 개략적으로 나타내는 도면이다.
도 8을 참조하면, 시뮬레이션 실행 모듈(14)은 실험 설계 모듈(12)로부터 실험 설계 데이터(148)를 수신하고 이를 전처리하여 입력 데이터(152)를 생성한 후 입력 데이터(152)에 기초하여 실험을 실행함으로써 실행 결과(156)를 생성할 수 있다.
구체적으로 설명하면, 시뮬레이션 실행 모듈(14)은 전처리 모듈(151), 실행기(153) 및 커스텀 출력 처리기(155)를 포함할 수 있다. 전처리 모듈(151)은 실험 설계 모듈(12)로부터 실험 설계 데이터(148)를 수신하고 이를 실행기(153)에서 실험을 실행하기에 적합한 형태로 변환하여 입력 데이터(152)를 생성할 수 있다. 여기서의 전처리는, 예를 들어, 모델에 관리자가 입력한 입력 값을 요인 값(Factor value)으로 치환하는 것을 포함할 수 있다.
실행기(Executor)(153)는 What-if 시뮬레이션 실험에 대한 입력 데이터를 전처리 모듈(151)로부터 수신하여 이를 실행기(153)에 포함되어 있는 하나 이상의 실행 엔진을 통해 모델에 입력하고 실행함으로써 엔진 출력 데이터를 생성할 수 있다. 일 실시예에 따르면 복수의 What-if 시뮬레이션 실험 각각에 대한 복수의 입력 데이터 세트가 수신되는 경우 실행기(153)는 복수의 실행 엔진 각각에(또는 적어도 일부에) 입력 데이터를 병렬적으로 할당하여 입력함으로써 What-if 시뮬레이션 실험을 병렬적으로 실행할 수 있다. 이러한 병렬적인 실험 실행은, 사람이 입력 데이터를 일일이 수동 입력하여 시뮬레이션 실험을 수행하던 기존의 방식에 비해, 클라이언트 장치(10) 및 시뮬레이션 관리 서버(20)의 프로세싱 성능 및 리소스를 효율적으로 사용할 수 있게 해주므로 그 처리 속도가 현저히 빠르며 사람의 노동력 투입을 최소화하고 사람의 개입에 따른 오류 발생 가능성을 줄인다는 효과를 가진다.
또한, 시뮬레이션 실행 모듈(14)은 커스텀 출력 처리기(155)를 포함할 수 있다. 커스텀 출력 처리기(155)를 통해 복수의 실험 엔진 각각에 의해 모델에 입력 데이터를 입력하여 수행한 What-if 시뮬레이션 실험에 대한 엔진 출력 데이터로부터 출력 데이터, 즉, 성능 지표(KPI) 및 커스텀 출력 데이터를 추출하여 실험 실행 결과로서 출력할 수 있다.
본 발명의 또 다른 실시예에 따르면, What-if 시뮬레이션 실험 중 일부에 대해서는 이전에 수행한 과거 엔진 출력 데이터(157)가 전처리 모듈(151)에 제공될 수 있으며, 전처리 모듈(151)은 과거 엔진 출력 데이터(157) 및 실험 설계 데이터(148)에 기초하여 입력 데이터(152)를 생성할 수 있다. 관리자는 사용자 인터페이스를 통해 과거 엔진 출력 데이터(157)의 활용 여부를 선택할 수 있으며, 만약 과거 엔진 출력 데이터(157)를 활용할 것을 선택하면, 이전 실험의 결과가 현재 실험에 반영될 수 있으므로, 종속적인 성격의 실험 설계가 가능해진다는 효과가 발생한다.
공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 방법
도 9는 본 발명의 일 실시예에 따른 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 방법에 대한 흐름도이다. 이러한 공장의 작업 일정에 대한 시뮬레이션 방법은 관리자의 클라이언트 장치 및/또는 시뮬레이션 관리 서버의 프로세서 또는 프로세서에 의해 구현된 하나 이상의 모듈들에 의해 수행될 수 있다.
도 9를 참조하면, 먼저, 단계 S10에서, What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택할 수 있다. 모델은 입력 값이 되는 기준 정보와, 시뮬레이션 실험 결과인 출력 값을 적어도 포함할 수 있다. 또한, 모델은 What-if 시뮬레이션 실험의 설계를 위한 클라이언트 장치의 사용자 인터페이스를 통해 관리자에 의해 선택을 수신함으로써 선택될 수 있다.
단계 S20에서, 단계 S10에서 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성할 수 있다. 이 때, 관심 요인의 수준을 설정하는 것은, 수준의 유형을 선택하는 것, 및 선택된 수준의 유형에 대한 수준 값에 대한 입력을 수신하는 것을 포함할 수 있다. 또한, 수준의 유형은 관리자가 직접 지정한 값을 수준 값으로 정의하도록 하는 List 유형, 최소 값(min), 최대 값(max) 및 증가폭을 설정할 수 있는 Range 유형, 및 지정된 범위에서 무작위로 수준 값을 추출하는 Distribution Sampling 유형 중 적어도 하나를 포함할 수 있다.
단계 S30에서, 실험 설계 데이터에 기초하여 복수의 실행 엔진을 포함하는 실행기를 이용하여 모델에 대한 What-if 시뮬레이션 실험을 병렬 실행함으로써 실험 실행 결과를 출력할 수 있다. 이 때, 시뮬레이션 실행 모듈의 실험 실행 결과는 성능 지표(KPI) 및/또는 관리자가 정의한 커스템 출력 데이터를 포함할 수 있으며, 커스텀 출력 데이터는 시뮬레이션 실행 모듈에 포함된 커스텀 출력 프로세싱 모듈에 의해 추출될 수 있다.
컴퓨터 판독 가능한 기록매체
본 발명의 실시예들에 따른 방법의 각 단계들이나 동작들은, 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램의 실행에 따라 하나 이상의 프로세서를 포함하는 컴퓨터에 의해 수행될 수 있음은 자명하다.
전술한 기록매체에 저장된 컴퓨터 실행가능 명령어(instruction)들은, 해당하는 각 단계를 수행하도록 프로그램된 컴퓨터 프로그램을 통해 구현 가능하되, 이러한 컴퓨터 프로그램은 컴퓨터 판독 가능한 기록매체에 저장될 수 있고, 프로세서에 의해 실행 가능하다. 컴퓨터 판독 가능한 기록매체는 비일시적 판독 가능 매체(non-transitory readable medium)일 수 있다. 이 때, 비일시적 판독 가능 매체란 레지스터, 캐시, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 방법을 수행하기 위한 프로그램들은 소거가능 프로그래머블 판독 전용 메모리(EPROM), 전기적 소거가능 프로그래머블 판독 전용 메모리(EEPROM), 및 플래시 메모리 디바이스와 같은 반도체 메모리 디바이스, 내부 하드 디스크 및 이동식 디스크와 같은 자기 디스크, 광학-자기 디스크, 및 CD-ROM 및 DVD-ROM 디스크를 포함하는 비휘발성 메모리 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
본 문서에 개시된 다양한 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상에서 설명한 바와 같이, 본 발명이 속하는 기술 분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 상술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함하는 것으로 해석되어야 한다.
본 명세서 내에 기술된 특징들 및 장점들은 모두를 포함하지 않으며, 특히 많은 추가적인 특징들 및 장점들이 도면들, 명세서, 및 청구항들을 고려하여 당업자에게 명백해질 것이다. 더욱이, 본 명세서에 사용된 언어는 주로 읽기 쉽도록 그리고 교시의 목적으로 선택되었고, 본 발명의 주제를 묘사하거나 제한하기 위해 선택되지 않을 수도 있다는 것을 주의해야 한다.
본 발명의 실시예들의 상기한 설명은 예시의 목적으로 제시되었다. 이는 개시된 정확한 형태로 본 발명을 제한하거나, 빠뜨리는 것 없이 만들려고 의도한 것이 아니다. 당업자는 상기한 개시에 비추어 많은 수정 및 변형이 가능하다는 것을 이해할 수 있다.
그러므로 본 발명의 범위는 상세한 설명에 의해 한정되지 않고, 이를 기반으로 하는 출원의 임의의 청구항들에 의해 한정된다. 따라서, 본 발명의 실시예들의 개시는 예시적인 것이며, 이하의 청구항에 기재된 본 발명의 범위를 제한하는 것은 아니다.
10: 클라이언트 장치
12: 실험 설계 모듈
14: 시뮬레이션 실행 모듈
16: 데이터 분석 모듈
18: 플러그인 모듈
20: 시뮬레이션 관리 서버
22: 관리 모듈
24: 시뮬레이션 모듈
30: 외부 DB

Claims (10)

  1. 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 장치로서,
    What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하고, 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하기 위한 실험 설계 모듈과,
    상기 실험 설계 데이터를 전처리하여 상기 What-if 시뮬레이션 실험에 대한 입력 데이터를 생성하기 위한 전처리 모듈 - 상기 전처리 모듈은 이전에 얻어진 과거 엔진 출력 데이터에 더 기초하여 상기 입력 데이터를 생성 가능함 - 과,
    상기 입력 데이터에 기초하여 복수의 실행 엔진을 포함하는 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 병렬 실행함으로써 실험 실행 결과를 출력하기 위한 시뮬레이션 실행 모듈
    을 포함하고,
    상기 관심 요인의 수준을 설정하는 것은,
    사용자 인터페이스를 통해 상기 수준의 유형을 선택하는 것, 및
    사용자 인터페이스를 통해 선택된 상기 수준의 유형에 대한 수준 값에 대한 입력을 수신하는 것을 포함하고,
    상기 수준의 유형은 관리자가 직접 지정한 값을 수준 값으로 정의하도록 하는 List 유형, 최소 값(min), 최대 값(max) 및 증가폭을 설정할 수 있는 Range 유형, 및 지정된 범위에서 무작위로 수준 값을 추출하는 Distribution Sampling 유형 중 적어도 하나를 포함하고,
    상기 시뮬레이션 실행 모듈의 상기 실험 실행 결과는 상기 What-if 시뮬레이션 실험에 대한 성능 지표(KPI)를 포함하고, 상기 성능 지표는 사용자 인터페이스의 출력 데이터 편집기를 통해 편집 가능하며,
    상기 출력 데이터 편집기는,
    성능 지표의 산출에 이용할 계산식을 입력하기 위한 성능 지표 계산식 편집부;
    상기 계산식과 연관된 사전 설정된 함수를 선택하기 위한 함수 선택부;
    상기 함수 선택부를 통해 선택된 함수의 수치를 입력하기 위한 함수 편집부
    를 포함하고,
    상기 관심 요인 및 상기 성능 지표에 대한 입력 이후에 상기 사용자 인터페이스는 실험 설계 편집기를 표시하되, 상기 실험 설계 편집기는 선택된 복수의 요인들 중 하나 이상을 조합한 실험 설계를 미리 보기할 수 있는 미리보기 윈도우를 포함하는
    장치.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 시뮬레이션 실행 모듈의 상기 실험 실행 결과는 성능 지표(KPI)를 포함하는
    장치.
  5. 제 4 항에 있어서,
    상기 시뮬레이션 실행 모듈은 커스텀 출력 프로세싱 모듈을 더 포함하고, 상기 실험 실행 결과는 관리자가 정의한 커스템 출력 데이터를 포함하되, 상기 커스텀 출력 데이터는 상기 커스텀 출력 프로세싱 모듈에 의해 추출되는
    장치.
  6. 제 1 항에 있어서,
    상기 모델은 What-if 시뮬레이션 실험의 설계를 위한 상기 장치의 사용자 인터페이스를 통해 관리자에 의해 선택을 수신함으로써 선택되는
    장치.
  7. 제 1 항에 있어서,
    상기 실험 실행 결과를 분석하여 관리자에게 제시하기 위한 데이터 분석 모듈
    을 더 포함하는 장치.
  8. 제 7 항에 있어서,
    상기 데이터 분석 모듈에서 상기 실험 실행 결과를 분석하는 것은 상기 실험 실행 결과에 포함된 성능 지표 및 상기 관심 요인 사이의 상관 계수 분석 및 민감도 분석을 수행하는 것을 포함하는
    장치.
  9. 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 시스템으로서,
    What-if 시뮬레이션 실험을 설계 및 실행하기 위한 클라이언트 장치;
    상기 클라이언트 장치 상에서 상기 What-if 시뮬레이션 실험에 대한 애플리케이션을 관리하기 위한 관리 모듈을 포함하는 시뮬레이션 관리 서버; 및
    상기 What-if 시뮬레이션 실험에 대한 데이터를 저장하기 위한 외부 DB
    를 포함하고,
    상기 클라이언트 장치는,
    상기 What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하고, 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하기 위한 실험 설계 모듈과,
    상기 실험 설계 데이터를 전처리하여 상기 What-if 시뮬레이션 실험에 대한 입력 데이터를 생성하기 위한 전처리 모듈 - 상기 전처리 모듈은 이전에 얻어진 과거 엔진 출력 데이터에 더 기초하여 상기 입력 데이터를 생성 가능함 - 과,
    상기 입력 데이터에 기초하여 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 실행함으로써 실험 실행 결과를 출력하기 위한 시뮬레이션 실행 모듈
    을 포함하고,
    상기 관심 요인의 수준을 설정하는 것은,
    사용자 인터페이스를 통해 상기 수준의 유형을 선택하는 것, 및
    사용자 인터페이스를 통해 선택된 상기 수준의 유형에 대한 수준 값에 대한 입력을 수신하는 것을 포함하고,
    상기 수준의 유형은 관리자가 직접 지정한 값을 수준 값으로 정의하도록 하는 List 유형, 최소 값(min), 최대 값(max) 및 증가폭을 설정할 수 있는 Range 유형, 및 지정된 범위에서 무작위로 수준 값을 추출하는 Distribution Sampling 유형 중 적어도 하나를 포함하고,
    상기 시뮬레이션 실행 모듈의 상기 실험 실행 결과는 상기 What-if 시뮬레이션 실험에 대한 성능 지표(KPI)를 포함하고, 상기 성능 지표는 사용자 인터페이스의 출력 데이터 편집기를 통해 편집 가능하며,
    상기 출력 데이터 편집기는,
    성능 지표의 산출에 이용할 계산식을 입력하기 위한 성능 지표 계산식 편집부;
    상기 계산식과 연관된 사전 설정된 함수를 선택하기 위한 함수 선택부;
    상기 함수 선택부를 통해 선택된 함수의 수치를 입력하기 위한 함수 편집부
    를 포함하고,
    상기 관심 요인 및 상기 성능 지표에 대한 입력 이후에 상기 사용자 인터페이스는 실험 설계 편집기를 표시하되, 상기 실험 설계 편집기는 선택된 복수의 요인들 중 하나 이상을 조합한 실험 설계를 미리 보기할 수 있는 미리보기 윈도우를 포함하며,
    상기 시뮬레이션 관리 서버는 상기 What-if 시뮬레이션 실험을 실행하기 위한 시뮬레이션 모듈을 더 포함하고,
    상기 클라이언트 장치가 상기 시뮬레이션 관리 서버에 실험 실행 요청을 전송하는 경우, 상기 시뮬레이션 실행 모듈에 의한 상기 What-if 시뮬레이션 실험은 실행되지 않는
    시스템
  10. 공장의 작업 일정에 대한 시뮬레이션을 수행하기 위한 방법으로서,
    What-if 시뮬레이션 실험의 대상이 되는 모델(Model)에 대한 입력 값인 기준 정보에 포함된 복수의 요인 중 하나 이상의 요인을 관심 요인으로 선택하는 단계와,
    상기 선택된 관심 요인의 수준을 설정함으로써 실험 설계 데이터를 생성하는 단계와,
    상기 실험 설계 데이터를 전처리하여 상기 What-if 시뮬레이션 실험에 대한 입력 데이터를 생성하는 단계 - 상기 입력 데이터는 이전에 얻어진 과거 엔진 출력 데이터에 더 기초하여 생성 가능함 - 와,
    상기 입력 데이터에 기초하여 복수의 실행 엔진을 포함하는 실행기를 이용하여 상기 모델에 대한 상기 What-if 시뮬레이션 실험을 병렬 실행함으로써 실험 실행 결과를 출력하는 단계
    를 포함하고,
    상기 관심 요인의 수준을 설정하는 것은,
    사용자 인터페이스를 통해 상기 수준의 유형을 선택하는 것, 및
    사용자 인터페이스를 통해 선택된 상기 수준의 유형에 대한 수준 값에 대한 입력을 수신하는 것을 포함하고,
    상기 수준의 유형은 관리자가 직접 지정한 값을 수준 값으로 정의하도록 하는 List 유형, 최소 값(min), 최대 값(max) 및 증가폭을 설정할 수 있는 Range 유형, 및 지정된 범위에서 무작위로 수준 값을 추출하는 Distribution Sampling 유형 중 적어도 하나를 포함하고,
    상기 실험 실행 결과는 상기 What-if 시뮬레이션 실험에 대한 성능 지표(KPI)를 포함하고, 상기 성능 지표는 사용자 인터페이스의 출력 데이터 편집기를 통해 편집 가능하며,
    상기 출력 데이터 편집기는,
    성능 지표의 산출에 이용할 계산식을 입력하기 위한 성능 지표 계산식 편집부;
    상기 계산식과 연관된 사전 설정된 함수를 선택하기 위한 함수 선택부;
    상기 함수 선택부를 통해 선택된 함수의 수치를 입력하기 위한 함수 편집부
    를 포함하고,
    상기 관심 요인 및 상기 성능 지표에 대한 입력 이후에 상기 사용자 인터페이스는 실험 설계 편집기를 표시하되, 상기 실험 설계 편집기는 선택된 복수의 요인들 중 하나 이상을 조합한 실험 설계를 미리 보기할 수 있는 미리보기 윈도우를 포함하는
    방법.
KR1020220147122A 2022-11-07 2022-11-07 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치 KR102590516B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220147122A KR102590516B1 (ko) 2022-11-07 2022-11-07 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치
US18/454,551 US20240152851A1 (en) 2022-11-07 2023-08-23 What-if simulation method of factory situation and device that implements same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220147122A KR102590516B1 (ko) 2022-11-07 2022-11-07 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치

Publications (1)

Publication Number Publication Date
KR102590516B1 true KR102590516B1 (ko) 2023-10-19

Family

ID=88507692

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220147122A KR102590516B1 (ko) 2022-11-07 2022-11-07 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치

Country Status (2)

Country Link
US (1) US20240152851A1 (ko)
KR (1) KR102590516B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100020822A (ko) * 2008-08-13 2010-02-23 포항공과대학교 산학협력단 유비쿼터스 시스템 설계/분석을 위한 컴퓨터 응용 시스템 및 유비쿼터스 시스템 설계/분석 방법
KR20140055871A (ko) * 2012-11-01 2014-05-09 한국건설기술연구원 시추공정의 최적화 시스템 및 시추공정의 최적화 방법
KR20190134799A (ko) * 2017-04-26 2019-12-04 누보 피그노네 테크놀로지 에스알엘 물리적 플랜트의 모델링 운영을 위한 방법 및 시스템
KR20210099932A (ko) * 2020-02-05 2021-08-13 주식회사뉴로코어 강화 학습을 이용한 공장 시뮬레이터 기반 스케줄링 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100020822A (ko) * 2008-08-13 2010-02-23 포항공과대학교 산학협력단 유비쿼터스 시스템 설계/분석을 위한 컴퓨터 응용 시스템 및 유비쿼터스 시스템 설계/분석 방법
KR20140055871A (ko) * 2012-11-01 2014-05-09 한국건설기술연구원 시추공정의 최적화 시스템 및 시추공정의 최적화 방법
KR20190134799A (ko) * 2017-04-26 2019-12-04 누보 피그노네 테크놀로지 에스알엘 물리적 플랜트의 모델링 운영을 위한 방법 및 시스템
KR20210099932A (ko) * 2020-02-05 2021-08-13 주식회사뉴로코어 강화 학습을 이용한 공장 시뮬레이터 기반 스케줄링 시스템

Also Published As

Publication number Publication date
US20240152851A1 (en) 2024-05-09

Similar Documents

Publication Publication Date Title
US10642990B2 (en) Generation of dynamic contextual pivot grid analytics
US8196113B2 (en) Realtime creation of datasets in model based testing
CA2937017C (en) Integrated design application
US8296117B2 (en) Business process optimizer
Khadka et al. A method engineering based legacy to SOA migration method
EP2866161A1 (en) System and method for visualization and optimization of system of systems
US20100318957A1 (en) System, method, and apparatus for extensible business transformation using a component-based business model
Rokis et al. Exploring Low-Code Development: A Comprehensive Literature Review
US20220027806A1 (en) Multi-process workflow designer
KR101836333B1 (ko) 원자력 발전소의 노심설계 자동 검증 시스템
KR102590516B1 (ko) 공장 상황에 대한 What-if 시뮬레이션 방법 및 이를 위한 장치
Van der Blom et al. Sparkle: Toward Accessible Meta-Algorithmics for Improving the State of the Art in Solving Challenging Problems
Estrada-Torres et al. Discovering business process simulation models in the presence of multitasking
Boucher et al. Framework to model PSS collaborative value networks and assess uncertainty of their economic models
US10990360B2 (en) House of quality for federated manufacturing apps
KR101508496B1 (ko) 자산 기반의 요구사항 시뮬레이터 및 요구사항 관리 방법
Pope Big data analytics with SAS: Get actionable insights from your big data using the power of SAS
Kajava Improving company performance through implementation of Business Intelligence tools: Implementation of a Microsoft Power BI in a Case Study Company
Bogomolova Methodological approaches to risk assessment of real investment projects
Herden et al. An Agile approach to improve process-oriented software development
KR101273374B1 (ko) 플러그 인 기반의 시뮬레이션 워크플로우 실행 시스템 및 방법
Fadahunsi et al. Visualizing and analyzing dynamic business process using Petri nets
KR20190143595A (ko) 동시병행 일정 최적화 방법 및 시스템
Lytos et al. The EVIDENT Platform: Leveraging Crowdsourcing Approaches for Assessing Consumers Behavior
US20210374026A1 (en) System and method for automated desktop analytics triggers

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant