KR102641502B1 - 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치 - Google Patents

디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치 Download PDF

Info

Publication number
KR102641502B1
KR102641502B1 KR1020180165309A KR20180165309A KR102641502B1 KR 102641502 B1 KR102641502 B1 KR 102641502B1 KR 1020180165309 A KR1020180165309 A KR 1020180165309A KR 20180165309 A KR20180165309 A KR 20180165309A KR 102641502 B1 KR102641502 B1 KR 102641502B1
Authority
KR
South Korea
Prior art keywords
digital twin
model
execution
parallel
simulation
Prior art date
Application number
KR1020180165309A
Other languages
English (en)
Other versions
KR20200076323A (ko
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 KR1020180165309A priority Critical patent/KR102641502B1/ko
Publication of KR20200076323A publication Critical patent/KR20200076323A/ko
Application granted granted Critical
Publication of KR102641502B1 publication Critical patent/KR102641502B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Abstract

본 발명에 실시 예에 따른 디지털 트윈 시스템의 동작 방법은, 디지털 트윈 다중 병렬 설정부에서 복수의 시나리오 후보들 중에서 어느 하나를 설정하는 단계, 디지털 트윈 실행 엔진부에서 상기 설정된 시나리오에 따라 데이터 및 모델 중에서 적어도 하나 이상을 병렬 수행하는 단계, 및 등록된 가치 평가 함수를 동적 수행으로 평가하는 단계를 포함할 수 있다.

Description

디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치{APPARATUS AND METHOD FOR MULTI-MODEL PARALLEL EXECUTION AUTOMATION AND VERIFICATION ON DIGITAL TWIN}
본 발명은 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치에 방법에 관한 것이다.
일반적으로 디지털 트윈(쌍둥이)는 다양한 목적으로 사용될 수 있도록 물리적 자산이나시스템, 장소, 사람 및 장치들에 대하여 복제본을 마련하고, 실제 시스템과 개별로 동태 및 행위 분석이 가능한 환경을 디지털 트윈 환경이라 한다. 디지털 트윈용 모델링 및 시뮬레이션 분야는 복잡한 시스템의 행위를 정의하고 행위 모델을 다양하게 준비하고 모델을 실행하여 미래에 유효한 정책을 결정하는데 사용된다. 종래에는 디지털 트윈용 시뮬레이션 엔진과 모델링에서 실행 설정부와 실행 엔진부를 갖추고서도 모델 병렬 수행이 용이하지 않아서 사람이 개입되어 개별로 반복 실행해야 했다.
공개특허: 10-2016-0014252, 공개일: 2016년 2월 11일, 제목: 이전트 기반 다중 마이크로 시뮬레이션을 위한 다중 데이터 세트 관리 장치 및 방법 공개특허: 10-2016-0013681, 공개일: 2016년 2월 5일, 제목: 에이전트 기반 정책실험 가상공간 시뮬레이션 시스템 및 그 방법 등록특허: 10-1852527, 등록일: 2018년 4월 20일, 제목: 기계학습 기반의 동적 시뮬레이션 파라미더 교정 방법
본 발명의 목적은, 디지털 트윈에 데이터, 모델, 행위기반 수행코드 등을 복수 등록하고 병렬 수행함으로써, 그 결과를 자동 최적화하는 방법을 제공하는데 있다.
본 발명의 실시 예에 따른 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치는 복수의 시나리오 병렬 수행이 가능하고 시나리오 스크립트에 따라 복수의 설정 방식을 가지며 설정에 따른 트윈 엔진부에서 단순 모델 실행을 넘어 유효성 평가를 동시에 진행할 수 있다.
본 발명의 실시 예에 따른 디지털 트윈 시스템의 동작 방법은, 디지털 트윈 다중 병렬 설정부에서 복수의 시나리오 후보들 중에서 어느 하나를 설정하는 단계, 디지털 트윈 실행 엔진부에서 상기 설정된 시나리오에 따라 데이터 및 모델 중에서 적어도 하나 이상을 병렬 수행하는 단계 및 등록된 가치 평가 함수를 동적 수행으로 평가하는 단계를 포함할 수 있다.
본 발명은 디지털 트윈 시스템의 병렬 모델 혹은 데이터 병렬 모델 실행으로 시뮬레이션 시간 단축과 복수 모델 실행으로 분석이 용이하게 되었다. 특히 인공지능의 앙상블 방식처럼 여러 모델을 결합하여 정확성을 판정하고 최적 의사 결정을 행하는 방식과 개별 결과의 상호 비교가 가능하여 정확성에 어떤 요인이 영향을 주는지 모델을 판정하기도 쉬운 장점을 가진다
또한, 본 발명은 실험 시나리오 스크립트를 병렬 구성하여 등록 실행 가능하게 하여 실험과 결과를 자동 평가가 가능하게 한다. 따라서 종래의 트윈 시스템처럼 시뮬레이션 결과를 사후에 개별 분석처리 하는 것이 불필요하고 순차 실행을 병렬 실행으로 전환이 용이하다. 그리고 트윈 모델링 정책에 따라 자동 실행이 용이 하다.
또한, 본 발명은 모델의 파라미터 조정 후 반복 튜닝과정을 대폭 간소화하고 결과의 정확성을 높이기 위하여 복수 모델을 결합 평가가 가능한 특징을 가진다. 최근에 복잡계 시스템은 복합 모델 혹은 복수의 모델을 결합하여 변화 관측이 주된 경향 분석이 되기 때문에 본 발명은 매우 활용 가치가 높다.
이하에 첨부되는 도면들은 본 실시 예에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 실시 예들을 제공한다. 다만, 본 실시예의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시 예로 구성될 수 있다.
도 1은 종래의 디지털 트윈 시스템의 구성도를 보여준다.
도 2는 종래의 에이전트 기반 다중 마이크로 시뮬레이션 구성도를 보여준다.
도 3은 종래의 정책실험 가상공간 시뮬레이션 시스템 구성도를 보여준다.
도 4는 본 발명의 실시 예에 따른 디지털 트윈 시스템(10)을 예시적으로 보여주는 블록도이다.
도 5는 본 발명의 실시 예에 따른 디지털 트윈 시스템(10)의 제 1 병렬 수행 시나리오를 예시적으로 보여주는 도면이다.
도 6은 동일 모델 특징 가변 실험 계획서를 예시적으로 보여주는 표이다.
도 7은 복수 모델 부스팅 실행 실험 계획서를 예시적으로 보여주는 표이다.
도 8은 본 발명의 실시 예에 따른 디지털 트윈 시스템(10)의 제 2 병렬 수행 시나리오를 예시적으로 보여주는 도면이다.
도 9는 본 발명의 실시 예에 따른 디지털 트윈 시스템(10)의 제 3 병렬 수행 시나리오를 예시적으로 보여주는 도면이다.
도 10은 유형별 유효성 검증 함수 선택 방식을 예시적으로 보여주는 표이다.
도 11은 본 발명의 실시 예에 따른 디지털 트윈 다중 병렬 설정부(200)의 동작 방법을 예시적으로 보여주는 흐름도이다.
도 12는 본 발명의 실시 예에 따른 디지털 트윈 병렬 실행 엔진부(300)의 모델 실행 과정을 예시적으로 보여주는 흐름도이다.
도 13은 디지털 트윈 병렬 실행 엔진부(300)에서 복수 모델 및 목표함수 달성 여부 판정을 수행하는 과정을 예시적으로 보여주는 흐름도이다.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다.
상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 혹은 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 혹은 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. 본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함하다" 혹은 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 혹은 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 혹은 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 혹은 이들을 조합한 것들의 존재 혹은 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 발명의 실시 예에 따른 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치는 복수의 시나리오 병렬 수행이 가능하고 시나리오 스크립트에 따라 복수의 설정 방식을 가지며 설정에 따른 트윈 엔진부에서 단순 모델 실행을 넘어 유효성 평가를 동시에 진행함으로써, 실험 시간을 단축 가능하고 트윈 모델의 정책 평가를 사후에 별도로 하지 않아도 되는 특징을 가지며 디지털 트윈의 병렬성과 분석 편의성을 높일 수 있다.
종래 기술은 이산 사건 시뮬레이션 (discrete event-based simulation, time-based simulation) 기술로 분류되어 국방 응용(전투기, 탱크, 병사 개인화기 시뮬레이션)인 가상 전쟁 시나리오 기반 시뮬레이션 등에 주로 사용되어 왔고, 최근에는 디지털 쌍둥이(트윈) 기술로 분류된 물리 장치(시설)의 데이터를 수집하여 가상 공간에서 쌍둥이 모델로 정의하고 트윈 모델의 코드를 실행하여 오동작의 연관 분석을 행하는 수단으로 신 기술이 채택되고 있다. 그리고 복잡한 행위 분석을 위해 에이전트 기반 시뮬레이션 환경이 정책 결정을 위해 사용되고 있다. 이들은 공통적으로 모델을 정의하고 시뮬레이션 엔진으로 모델을 실행하여 그 결과에 따라 모델의 행위 패턴이나 비용이나 위험을 예측한다.
디지털 트윈 시스템은 이미 수집된 데이터를 가상의 트윈 모델로 실행하여 실제 시스템에서 발생 가능한 문제점을 조기 진단하여 개선해야 할 부분을 식별하거나 비용 절감 요인 등을 분석한다. 여기서 모델을 다양하게 구성하는 노력이 필요하다. 그러나 다양한 모델을 만들어도 어느 모델에 어떤 파라미터가 최적인지 알 수 없기 때문에 원하는 예상 목적을 달성하기 위해 반복 실행을 하게 된다. 여기서 파라미터가 변경되거나 트윈 모델을 일부가 수정된 경우. 그 활용에 앞서 정확성을 확인하는 과정을 반복하게 된다. 이 방법은 수행 시간이 많이 걸리고 어떠한 것이 예상 결과로 유효한지 확인하기 어려운 문제점을 가지고 있다.
이러한 문제점을 해결하고자 병렬 수행 모델 시나리오 스크립트에 기반하여 모델과 결과를 쌍(pair)으로 생성하고 목적에 부합하는 목표를 사전 등록하고 이 목적을 달성하는 모델을 조기에 판정하여 실행 시간을 단축하고 다중 모델에 의한 정확성을 높이는 수단을 포함하고 있다.
디지털 트윈 시스템은 실세계(현실 장비, 시설, 사물)의 사건 데이터와 설정 정보를 기록하고 이를 근간으로 실시간 분석 및 모니터링을 한다. 여기에 가상 디지털 트윈을 추가하여 과거 사건 데이터를 주입하고 여러 관심 모델을 붙여서 런타임 엔진으로 수행하면 실시간이 아니어도 어느 시점에나 오류나 이상 증상을 분석이 가능하도록 시스템을 구성 가능하다. 이는 신제품 설계에 신뢰성 향상 혹은 비용 절감 요인을 조기 진단하는데 활용된다.
도 1은 종래의 디지털 트윈 시스템의 구성도를 보여준다. 도 1을 참조하면, 종래 디지털 트윈 시스템은 실세계 물리 시스템에 데이터와 사건을 수집하기 위한 장치를 추가하고 이를 기반으로 시스템 상태를 분석하여 유지 보수 및 사전 조치 판단한다. 디지털 트윈 시스템은 실시간 데이터 정보와 사전 정보를 기반으로 확률적으로 결함 가능성과 데이터 발생 주기를 가변하는 모델을 준비하고 KPI(key performance index, 신뢰도, 이상탐지, 비용함수, 위험도, 응답성, 등)에 따른 사후 분석을 통해 그 결과를 활용하여 개선을 한다.
도 2는 종래의 에이전트 기반 다중 마이크로 시뮬레이션 구성도를 보여준다. 도 2를 참조하면, 다중 시뮬레이션 모델과 초기 데이터 세트와 데이터 세트 관리 모듈, 행동 전이 확률표, 시뮬레이션 엔진, 시뮬레이션 집게 모듈을 포함한다.
도 3은 종래의 정책실험 가상공간 시뮬레이션 시스템 구성도를 보여준다. 도 3을 참조하면, 에이전트 기반 가상공간 시뮬레이션 시스템도 모델 설정부와 시뮬레이션 엔진부를 포함하고 있으며 시간, 지형 설정에 따라 다양한 모델링이 가능한 특징이 있다.
종개 기술은 시간 설정에 따른 정책 실행만 하고 그 결과를 판단하여 제어하거나 개선 여부를 판단 할 수 없거나, 다중 시뮬레이션 모델과 초기 데이터 세트와 데이터 세트 관리 모듈, 전이 확률표, 시뮬레이션 엔진, 시뮬레이션 집게 모듈을 포함한다 하고 있어, 다중 시뮬레이션 시스템에서 결과의 정확성을 높이는 수단이나 여러 파라미터와 결과의 연관 분석 제어 부분은 제시하고 있지 못한다. 그래서 반복 실행은 사람 개입이 필요하게 된다.
도 4는 본 발명의 실시 예에 따른 디지털 트윈 시스템(10)을 예시적으로 보여주는 블록도이다. 도 4를 참조하면, 디지털 트윈 시스템(10)은 디지털 트윈 시나리오 스크립트부(100), 디지털 트윈 시나리오 설정부(200), 및 디지털 트윈 병렬 실행 엔진부(300)를 포함할 수 있다. 디지털 트윈 병렬 실행 엔진부(300)는, 도 4에 도시되지 않았지만, 모델 실행부(Step) 및 실행 결과 평가부(Superstep)를 더 포함할 수 있다.
도 5는 본 발명의 실시 예에 따른 디지털 트윈 시스템(10)의 제 1 병렬 수행 시나리오를 예시적으로 보여주는 도면이다. 도 5를 참조하면, 디지털 트윈 시스템(10)은 일반적인 컴퓨팅 시스템(PC, Server, HPC Server, 분산컴퓨터, 병렬 컴퓨터)에 저장 장치를 포함하며, 디지털 트윈 다중 병렬 설정부(200)와 디지털 트윈 병렬 실행 엔진부(300)를 포함할 수 있다. 데이터 저장장치로부터 복수의 데이터셋과 복수의 모델을 선택할 수 있다. 데이터와 모델 흐름은 시나리오 스크립트에 따라 실행되는 특징을 가진다.
디지털 트윈 다중 병렬 설정부(200)는 디지털 트윈 활용 목적에 따라 주어진 데이터와 모델을 입력으로 준비하고 목적에 가장 최적 평가 정책을 스크립트로 작성할 수 있다.
도 6은 동일 모델 특징 가변 실험 계획서를 예시적으로 보여주는 표이다. 도 7은 복수 모델 부스팅 실행 실험 계획서를 예시적으로 보여주는 표이다. 복수의 시나리오 후보는 도 6 및 도 7 등과 같이 실험 게획서에 따른 시나리오를 작성하여 설정될 수 있다. 이 실험 계획서에 기반한 입력과 실행 결과를 group 혹은 pair로 묶어서 공통저장소에 보관하고 엔진에서 열람 가능하게 한다. 여기서 실험 계획서는 데이터 및 모델이 모두 병렬인 경우, 데이터 병렬 수행, 모델 병렬 수행으로 구분될 수 있다.
제 1 병렬 수행 시나리오는 데이터 및 모델이 모두 병렬로 수행되는 경우이다. 도 5에 도시된 바와 같이 제 1 병렬 수행 시나리오 스크립트 구성이 가능하다. 실행 시간을 단축하기 위하여 데이터는 그룹으로 분리될 수 있다. 여기서 데이터 분리 기준은 전체 population에 영향이 최소가 되게 임의 분할하고 디지털 트윈 분석의 정확성을 높이고자 동일 목적에 서로 다른 모델을 구성하고 데이터 연결을 정의한다. 실시 예 도 5에서 모델 병렬화는 Data X를 Model X, Model Y에 연결하는 시나리오를 작성이고 Model X와 model Y는 동일 목적으로 서로 다른 행위 모델을 의미한다. 이렇게 정의하여야 복수의 모델 실행 결과에 가치 평가를 실시하고 평균을 낼 수 있다.
제 2 병렬 수행 시나리오는 데이터만 병렬로 수행되는 경우이다. 도 8에 도시된 바와 같이 초기 데이터에서 추출한 data X와 data Y를 동일 모델에 활용하도록 제 2 병렬 수행 시나리오 스크립트 구성이 가능하다. 이 경우는 동일 목적으로 데이터 병렬화 실행하는 경우로 초기 데이터로부터 데이터 그룹을 달리하여 예상하는 결과를 축소된 데이터에서 특성을 조기에 분석 추출할 수 있다. Group을 나누는 방법은 성별(sex)별, 지역별(location, 시, 군, 읍, 면 등), 무작의로 축소된 population별 주요 변수 추출 제어가 가능하다.
제 3 병렬 수행 시나리오는 모델만 병렬로 수행되는 경우이다. 도 9에 도시된 바와 같이 데이터 세트(Data Set)을 달리하여 동일 모델에 병렬 실행하는 방식에 관한 것으로 스크립트 구성이 가능하다. 이 경우 데이터 그룹을 달리하여 예상하는 결과를 빨리 도출 할 수 있는 장점을 가진다. 여기서 데이터를 data x와 data y로 분리하는데 규모를 축소하거나 데이터의 그룹 특성을 미리 알 수 있는 경우에 유용하다. 남녀 차이나 연령별 그룹이나 지역별 그룹으로 분리가 용이하기 때문에 실행 시간을 단축하는 스크립트가 매우 유용하다. 그리고 설정부, 엔진부와 유효성 검증 함수(Validation Function)은 공통으로 적용될 수 있다.
도 10은 유형별 유효성 검증 함수 선택 방식을 예시적으로 보여주는 표이다. 도 10에 도시된 바와 같이, 시나리오 스크립트 부분은 최대한 자동 생성하고, bellman equation과 같이 잘 알려진 가치 함수 방식은 미리 정의한 함수에 파라미터 연결함으로 사용을 준비 시킬 수 있다. 특히 유효성 검증 함수에 대한 정의는 모델 정책 검증 함수로 변형이 가능하여 Key Performance Index(성능 metrics)로 대체 가능하다. 주요 함수식은 Cost function(비용 최소 진단), 가치 함수(가치 향상 진단), 행위에 따른 가치 함수(행위별 자치 향상 진단) 등이 유효하다. 엔진부의 step 단계와 superstep단계에서 최종 실행됨으로써, 결과 비교가 자동화 될 수 있다. 유효성을 진단하기 위해 데이터 이용 검증 함수도 가능하다.
도 11은 본 발명의 실시 예에 따른 디지털 트윈 다중 병렬 설정부(200)의 동작 방법을 예시적으로 보여주는 흐름도이다. 도 4 내지 도 11을 참조하면, 디지털 트윈 다중 병렬 설정부(200)의 동작은 다음과 같이 진행될 수 있다.
디지털 트윈 다중 병렬 설정부(200)는 실험계획서와 실험 목적에 따라 시나리오 스크립트에 기반하여 실험 조건을 동적 구성하고 자동 실행할 수 있도록 하는데 목적을 갖는다. 도 6 및 도 7에 도시된 바와 같이 여러가지 유형의 실험이 가능하다. 디지털 트윈 다중 병렬 설정부(200)는 여러가지 유형을 수용하도록 모듈화 될 수 있다. 디지털 트윈 다중 병렬 설정부(200)는 실험 목적에 부합하는 정책 목표함수와 그 목표값을 엔진부에 등록 설정하고(S110), 매 스텝마다 가치 평가 함수를 수행하도록 준비시키는 가치 평가함수와 임계값 등록단계를 수행하고(S120), 준비된 n개의 모델을 등록한다(S130). 그리고 디지털 트윈 다중 병렬 설정부(200)는 병렬 수행 조건을 시나리오 스크립트를 근거로 그룹핑 혹은 매핑 등록을 한다. 여기서 복수 입력 데이터와 모델 과의 관계와 가치 함수와 목표 함수 연관을 묶어서 검색이 용이하고 참조가 쉽게 만들어 준다. 데이터 병렬 실행 혹은 모델 실행 설정은 병렬 수행 조건 등록에 의존한다(S140). 이후에, 디지털 트윈 다중 병렬 설정부(200)는 등록이 완료되어 모델 실행 실행 요청을 할 수 있다(S150).
도 12는 본 발명의 실시 예에 따른 디지털 트윈 병렬 실행 엔진부(300)의 모델 실행 과정을 예시적으로 보여주는 흐름도이다. 도 4 내지 도 12을 참조하면, 디지털 트윈 병렬 실행 엔진부(300)의 모델 실행 과정은 다음과 같이 진행될 수 있다.
모델링 개시 명령어를 수신하면, 디지털 트윈 병렬 실행 엔진부(300)의 모델 실행부(Step; 310)는 등록된 모델을 메모리에 적재하고 등록된 실험 조건을 조회하여 해당 데이터를 연결하고 시뮬레이션 인스턴스를 생성할 수 있다(S210).
다음으로 모델 실행부(310)는 적재된 데이터와 모델을 단순히 실행 하고(S220), 모델 실행 중간 상태를 출력할 수 있다(S230). 다음으로 모델 실행부 (310)는 실험 조건별 실행과 해당 결과를 메모리 상에서 비교 검증할 수 있다. 해당 결과와 실험 조건 화일을 참조하여 결과를 분류 및 저장해야 한다.
점선부분에서 가치 함수 평가를 함에 따라 디지털 트윈 시뮬레이션이 제대로 수행되고 있는지를 동적으로 판단이 가능하다(S240). 한 스텝이 실행되면 등록된 제 1 가치 함수를 호출하여 평가할 수 있다(S250). 만일, 제 1 가치 함수가 지정되어 있지 않으면 default 함수가 실행될 수 있다.
이후, 임시저장 데이터를 불러와서 가치함수 평가를 실시하고 그 결과가 임계값(가치함수, 가치 최대) 이상이면 조기 종료할 수 있다(S260). 반면에, 가치 평가값이 임계값 이하이면, 현 상태의 가치 평가값(VE)는 제 1 가치 함수 평가 스크립트 지정 장소에 실행 결과와 함께 등록될 수 있다(S270). 모델의 에이전트가 다음 행동을 선택하는 기준으로 가치 평가 함수를 활용할 수 있다. 그리고 설정된 실행 Step 시간 이내 이면 인스턴스의 실행을 반복할 수 있다(S280). 만일, 지정된 실행 시간을 초과하면, 지금까지의 결과를 분류 저장하고 부분 완료가 통보될 수 있다(S290).
실시 예에 있어서, 기대 비용은 다음의 수학식으로 표현 가능하다.
여기서 J는 기대 비용 산출, X는 모델 컨텍스트 상태 및 외부 요인, U는 가치 혹은 비용 분석 유틸리티 함수, r은 동적 행위에 대한 보상 값이다.
상술된 바와 같이, 연속적인 수행 결과의 기대되는 최소 비용을 예측 가능하여 다중 실행에서 최적 실행 모델을 비교가 가능하다.
도 13은 디지털 트윈 병렬 실행 엔진부(300)에서 복수 모델 및 목표함수 달성 여부 판정을 수행하는 과정을 예시적으로 보여주는 흐름도이다. 도 4 내지 도 13을 참조하면, 실행결과 평가부(Superstep; 320)의 복수 모델 및 목표 함수 달성 여부 판정을 수행하는 과정은 다음과 같이 진행될 수 있다. 모델 실행부(300)에서 각 개별 모델 실행이 부분 완료되었다는 통보를 수신하면, 실행결과 평가부(Superstep; 320) 단계가 실행될 수 있다. 등록된 모델 수를 모두 실행하지 않으면, 디지털 트윈 병렬 실행 엔진부(300)는 각 인스턴스별 모델 결과를 취합하고(S310), 시나리오별 목표함수 평가를 실시하고, 그 결과를 분류하여 저장할 수 있다(S320).
이후, 실행결과 평가부(320)는 N이 등록된 모델 실행수 보다 작은 지를 판별할 수 있다(S330). 만일, N이 등록된 모델 실행수 보다 작다면, 글로벌 목표 함수 평가 혹은 평가가 스킵(skip) 될 수 있다(S350). 반면에, N이 등록된 모델 실행수 보다 작지 않으면, 실험 조건표에 결과가 갱신되고, N을 1만큼 증가시킨 뒤 S310 단계로 진입될 수 있다(S345)
목표 함수를 활용하여 정책을 업데이트 할 때마다 어떤 방향으로 업데이트 할 지에 대한 기준이 있어서 기존의 단순 시뮬레이터들의 사후 결과 분석이 필요 없다. 해당 모델이 글로벌 목표 함수를 만족하는 지가 판별될 수 있다(S350). 만일, 해당 모델이 목표 함수에 만족한다면, 실행 결과 평가부(320)는 해당 모델과 결과를 묶음으로 영구 저장하고 히스토리(History) 내역을 생성 및 저장하고 실행을 종료할 수 있다(S360). 반면에, 해당 모델이 목표 함수에 만족하지 못한다면, 실행결과 평가부(320)는 디지털 트윈 다중 병렬 설정부(200) 내부의 조정부(220)에 갱신된 실험 조건표 재등록을 통보할 수 있다(S365)
실시 예에 따라서는, 단계들 및/혹은 동작들의 일부 혹은 전부는 하나 이상의 비-일시적 컴퓨터-판독가능 매체에 저장된 명령, 프로그램, 상호작용 데이터 구조(interactive data structure), 클라이언트 및/혹은 서버를 구동하는 하나 이상의 프로세서들을 사용하여 적어도 일부가 구현되거나 혹은 수행될 수 있다. 하나 이상의 비-일시적 컴퓨터-판독가능 매체는 예시적으로 소프트웨어, 펌웨어, 하드웨어, 및/혹은 그것들의 어떠한 조합일 수 있다. 또한, 본 명세서에서 논의된 "모듈"의 기능은 소프트웨어, 펌웨어, 하드웨어, 및/혹은 그것들의 어떠한 조합으로 구현될 수 있다.
본 발명의 실시 예들의 하나 이상의 동작들/단계들/모듈들을 구현/수행하기 위한 하나 이상의 비-일시적 컴퓨터-판독가능 매체 및/혹은 수단들은 ASICs(application-specific integrated circuits), 표준 집적 회로들, 마이크로 컨트롤러를 포함하는, 적절한 명령들을 수행하는 컨트롤러, 및/혹은 임베디드 컨트롤러, FPGAs(field-programmable gate arrays), CPLDs(complex programmable logic devices), 및 그와 같은 것들을 포함할 수 있지만, 여기에 한정되지는 않는다.
본 발명은 복수의 시나리오 병렬 수행이 가능하고 시나리오 스크립트에 따라 복수의 설정 방식을 가지며 설정에 따른 트윈 엔진부에서 단순 모델 실행을 넘어 유효성 평가를 동시에 진행하여 실험 시간을 단축 가능하고 트윈 모델의 정책 평가를 사후에 별도로 하지 않아도 되는 특징을 가지며 디지털 트윈의 병렬성과 분석 편의성을 높였다.
본 발명은 디지털 트윈 시스템의 병렬 모델 혹은 데이터 병렬 모델 실행으로 시뮬레이션 시간 단축과 복수 모델 실행으로 분석이 용이하게 되었다. 특히 인공지능의 앙상블 방식처럼 여러 모델을 결합하여 정확성을 판정하고 최적 의사 결정을 행하는 방식과 개별 결과의 상호 비교가 가능하여 정확성에 어떤 요인이 영향을 주는지 모델을 판정하기도 쉬운 장점을 가진다
본 발명은 실험 시나리오 스크립트를 병렬 구성하여 등록 실행 가능하게 하여 실험과 결과를 자동 평가가 가능하게 한다. 따라서 종래의 트윈 시스템처럼 시뮬레이션 결과를 사후에 개별 분석처리 하는 것이 불필요하고 순차 실행을 병렬 실행으로 전환이 용이하다. 그리고 트윈 모델링 정책에 따라 자동 실행이 용이 하다.
본 발명은 모델의 파라미터 조정 후 반복 튜닝과정을 대폭 간소화하고 결과의 정확성을 높이기 위하여 복수 모델을 결합 평가가 가능한 특징을 가진다. 최근에 복잡계 시스템은 복합 모델 혹은 복수의 모델을 결합하여 변화 관측이 주된 경향 분석이 되기 때문에 본 발명은 매우 활용 가치가 높다.
한편, 상술 된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시 예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함할 것이다.
10: 디지털 트윈 시스템
100: 디지털 트윈 시나리오 스크립트부
200: 디지털 트윈 다중 병렬 설정부
300: 디지털 트윈 병렬 실행 엔진부
210: 시나리오 설정부
220: 조정부
310: 모델 실행부
320: 실행결과 평가부

Claims (10)

  1. 디지털 트윈 시스템의 동작 방법에 있어서,
    디지털 트윈 다중 병렬 설정부에서 복수의 시나리오 후보들 중에서 어느 하나를 설정하는 단계;
    디지털 트윈 병렬 실행 엔진부에서 상기 설정된 시나리오에 따라 데이터 및 모델 중에서 적어도 하나 이상을 병렬 수행하는 단계; 및
    등록된 가치 평가 함수를 동적 수행으로 평가하는 단계를 포함하고,
    상기 설정하는 단계는
    상기 가치 평가 함수 및 임계값을 등록하는 단계를 포함하고,
    상기 병렬 수행하는 단계는
    상기 설정된 시나리오에 상응하게 등록된 병렬 수행 조건을 기반으로 시뮬레이션 인스턴스를 생성하여 디지털 트윈 시뮬레이션을 수행하되, 기설정된 실행 스탭(STEP)만큼 상기 시뮬레이션 인스턴스를 반복 실행하고, 상기 시뮬레이션 인스턴스의 모델 실행 중간 상태에 대한 상기 가치 평가 함수의 평가 결과가 기등록된 임계값 이상이면 상기 기설정된 실행 스탭을 수행하지 않고 상기 디지털 트윈 시뮬레이션을 조기 종료하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 평가하는 단계는
    상기 디지털 트윈 시뮬레이션의 매 스텝(STEP)마다 상기 등록된 가치 평가 함수를 호출하여 상기 디지털 트윈 시뮬레이션에 대한 유효성 평가를 수행하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  4. 삭제
  5. 청구항 1에 있어서,
    상기 병렬 수행하는 단계는
    상기 조기 종료 이전에 상기 기설정된 실행 스텝이 종료되는 경우, 상기 시뮬레이션 인스턴스의 모델 결과를 분류 저장하고 상기 시뮬레이션 인스턴스의 부분 완료를 통보하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  6. 청구항 1에 있어서,
    상기 평가하는 단계는
    상기 디지털 트윈 시뮬레이션의 시뮬레이션 인스턴스 별 모델 결과를 취합하여 글로벌 목표 함수를 만족하는지 여부를 판단하고, 시뮬레이션 인스턴스 별 모델 결과를 취합한 결과가 글로벌 목표 함수에 만족하면 시뮬레이션 인스턴스 별 모델과 시뮬레이션 인스턴스 별 모델 결과를 그룹핑하여 저장 및 히스토리 내역을 생성하는 단계를 포함하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  7. 청구항 1에 있어서,
    상기 설정하는 단계는
    실험 계획서를 기반으로 시나리오를 작성하여 상기 복수의 시나리오 후보들을 설정하는 단계
    실험목적에 상응하는 정책 목표 함수 및 목표값을 등록하는 단계; 및
    복수의 모델들을 등록하는 단계를 포함하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  8. 청구항 7에 있어서,
    상기 병렬 수행 조건은
    복수의 데이터와 모델 간의 관계 및 상기 가치 평가 함수와 상기 정책 목표 함수 간의 연관성을 참조하여 등록되는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  9. 청구항 1에 있어서,
    실험 계획서에 기반한 입력과 상기 디지털 트윈 시뮬레이션의 실행 결과를 그룹(GROUP) 혹은 페어(PAIR)로 묶어서 열람 가능하도록 저장하는 단계를 더 포함하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 방법.
  10. 복수의 시나리오 후보들 중에서 어느 하나를 설정하는 디지털 트윈 다중 병렬 설정부; 및
    상기 설정된 시나리오에 따라 데이터 및 모델 중에서 적어도 하나 이상을 병렬 수행하고, 등록된 가치 평가 함수를 동적으로 수행하는 디지털 트윈 병렬 실행 엔진부
    를 포함하고,
    상기 디지털 트윈 다중 병렬 설정부는
    상기 가치 평가 함수 및 임계값을 등록하고,
    상기 디지털 트윈 병렬 실행 엔진부는
    상기 설정된 시나리오에 상응하게 등록된 병렬 수행 조건을 기반으로 시뮬레이션 인스턴스를 생성하여 디지털 트윈 시뮬레이션을 수행하되, 기설정된 실행 스탭(STEP)만큼 상기 시뮬레이션 인스턴스를 반복 실행하고, 상기 시뮬레이션 인스턴스의 모델 실행 중간 상태에 대한 상기 가치 평가 함수의 평가 결과가 기등록된 임계값 이상이면 상기 기설정된 실행 스탭을 수행하지 않고 상기 디지털 트윈 시뮬레이션을 조기 종료하는 것을 특징으로 하는 디지털 트윈용 다중 모델 병렬 실행 자동화 장치.
KR1020180165309A 2018-12-19 2018-12-19 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치 KR102641502B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180165309A KR102641502B1 (ko) 2018-12-19 2018-12-19 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180165309A KR102641502B1 (ko) 2018-12-19 2018-12-19 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200076323A KR20200076323A (ko) 2020-06-29
KR102641502B1 true KR102641502B1 (ko) 2024-02-28

Family

ID=71401143

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180165309A KR102641502B1 (ko) 2018-12-19 2018-12-19 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102641502B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111950066B (zh) * 2020-08-27 2022-09-13 中国国家铁路集团有限公司 一种基于bim和gis技术的数字孪生数据驱动系统
KR102354594B1 (ko) * 2020-09-22 2022-01-21 한국기술교육대학교 산학협력단 자율형 사물에 적용되는 제어 소프트웨어 검증을 수행하는 전자 장치 및 이의 구동 방법
KR20230013296A (ko) * 2021-07-19 2023-01-26 한국공항공사 지속가능한 시설물 관리를 위한 디지털 트윈 자동적용체계 기반의 시설정보통합관리시스템 구축 방법 및 장치
KR102495864B1 (ko) * 2021-12-13 2023-02-06 주식회사 스탠스 디지털 트윈 모델을 도출하는 장치, 방법 및 컴퓨터 프로그램

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048715A (ja) * 2012-08-29 2014-03-17 Toyota Motor Corp プラント制御装置
US20160247129A1 (en) * 2015-02-25 2016-08-25 Siemens Corporation Digital twins for energy efficient asset maintenance

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101158637B1 (ko) * 2010-10-29 2012-06-26 한국과학기술원 효율적 시뮬레이션 정보 수집을 위한 실험 틀 및 이를 이용한 시뮬레이션 방법 및 시스템
KR20160013681A (ko) 2014-07-28 2016-02-05 한국전자통신연구원 에이전트 기반 정책실험 가상공간 시뮬레이션 시스템 및 그 방법
KR20160014252A (ko) 2014-07-29 2016-02-11 한국전자통신연구원 에이전트 기반 다중 마이크로 시뮬레이션을 위한 다중 데이터 세트 관리 장치 및 방법
KR101852527B1 (ko) 2016-11-16 2018-06-07 한국과학기술원 기계학습 기반의 동적 시뮬레이션 파라미터 교정 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048715A (ja) * 2012-08-29 2014-03-17 Toyota Motor Corp プラント制御装置
US20160247129A1 (en) * 2015-02-25 2016-08-25 Siemens Corporation Digital twins for energy efficient asset maintenance

Also Published As

Publication number Publication date
KR20200076323A (ko) 2020-06-29

Similar Documents

Publication Publication Date Title
KR102641502B1 (ko) 디지털 트윈용 다중 모델 병렬 실행 자동화 및 검증을 위한 방법 및 장치
US10649882B2 (en) Automated log analysis and problem solving using intelligent operation and deep learning
JP2019533242A (ja) 自動車保証の不正の予測のためのシステム及び方法
CN111369299B (zh) 识别的方法、装置、设备及计算机可读存储介质
US20140330758A1 (en) Formal verification result prediction
JP2008536219A (ja) 診断及び予知方法並びにシステム
Xu et al. System regression test planning with a fuzzy expert system
CN107451040A (zh) 故障原因的定位方法、装置及计算机可读存储介质
EP4075281A1 (en) Ann-based program test method and test system, and application
US8875074B1 (en) Formal fault detection
US20100235143A1 (en) Method for the generation of analytical redundancy relations for system diagnostics
Falessi et al. Preserving order of data when validating defect prediction models
TW202046034A (zh) 生產設計支援裝置、生產設計支援方法及生產設計支援程式
CN114048362A (zh) 基于区块链的电力数据异常检测方法、装置和系统
WO2020223184A1 (en) Analytical model training method for customer experience estimation
CN111949502A (zh) 数据库的预警方法、装置、计算设备和介质
Moradi et al. Machine learning-assisted fault injection
US11526375B2 (en) Systems and methods for pre-executing idiosyncratic computation through the application of algorithmic prediction of user behavior patterns
Strasser et al. An empirical evaluation of Bayesian networks derived from fault trees
Chouchen et al. Predicting code review completion time in modern code review
Korkmaz et al. Assessing software quality using the markov decision processes
Tsakiltsidis et al. Towards automated performance bug identification in python
CN112380204B (zh) 一种数据质量的评估方法及装置
Goldszmidt et al. Three Research Challenges at the Intersection of Machine Learning, Statistical Induction, and Systems.
CN111737319A (zh) 用户集群的预测方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right