KR101362844B1 - 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법 - Google Patents

글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법 Download PDF

Info

Publication number
KR101362844B1
KR101362844B1 KR1020130101989A KR20130101989A KR101362844B1 KR 101362844 B1 KR101362844 B1 KR 101362844B1 KR 1020130101989 A KR1020130101989 A KR 1020130101989A KR 20130101989 A KR20130101989 A KR 20130101989A KR 101362844 B1 KR101362844 B1 KR 101362844B1
Authority
KR
South Korea
Prior art keywords
devs
information
model
coordinator
simulators
Prior art date
Application number
KR1020130101989A
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 KR1020130101989A priority Critical patent/KR101362844B1/ko
Application granted granted Critical
Publication of KR101362844B1 publication Critical patent/KR101362844B1/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
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명에 의한 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법이 개시된다. 본 발명에 따른 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법은 (a)다수의 DEVS 기반 모의기가 루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하되, 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 관리하는 단계; (b)다수의 비-DEVS 기반 모의기가 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 상기 비-DEVS 모델에서 발생하는 이벤트 정보를 관리하는 단계; 및 (c)모의기 연동 관리기가 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기로부터 제공 받은 정보들을 기반으로 모의 수행을 위한 시뮬레이션 스케쥴링 정보를 생성하고 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 단계를 포함하는 것을 특징으로 한다.

Description

글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법{DEVS-BASED DISTRIBUTED SIMULATION METHOD USING GLOBAL COORDINATOR}
본 발명은 DEVS 기반 분산 시뮬레이션 방법에 관한 것으로, 특히, 다수의 DEVS 기반 모의기와 비-DEVS 기반 모의기 간에 연동하는 글로벌 코디네이터를 구비하여 그 구비된 글로벌 코디네이터에서 각 모의기에서 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받고 제공받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 기반으로 전체 시뮬레이션 상에 존재하는 모델들의 수행 순서를 스케쥴링하도록 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법에 관한 것이다.
DEVS(Discrete Event System Specification) 기반 시뮬레이션 시스템의 단일 모의기에서 모의를 수행하는 경우 해당 모의기의 루트 코디네이터(Root Coordinator)를 이용한다.
도 1은 종래 기술에 따른 분산 시뮬레이션 시스템의 구성을 나타내는 도면이다.
도 1에 도시한 바와 같이, 각 DEVS 기반 모의기는 분산 시뮬레이션 네트워크 I/F(Interface), DEVS 모델, DEVS 모델을 관리하기 위한 루트 코디네이터로 구성된다.
여기서 루트 코디네이터는 개별 DEVS 기반 모의기에 존재하는 DEVS 모델만을 관리하게 된다. 이러한 루트 코디네이터를 통해 모의기 내부의 모든 모델에서 발생하는 사건에 대한 정보를 바탕으로 동작하게 되므로 효율적인 실행이 가능하다.
이러한 각 DEVS 기반 모의기는 분산 시뮬레이션 네트워크를 기반으로 상호 간에 연동할 수 있을 뿐 아니라 다른 종류의 비-DEVS 기반 모의기와도 연동할 수 있다.
그러나 이러한 시뮬레이션 시스템이 확장되어 다수의 모의기를 통해 분산 모의를 수행하게 되면 개별 모의기에서는 각 모의기 내부 모델의 사건 정보만 알고 타 모의기에 존재하는 모델의 사건 정보는 알 수 없게 되어 다수의 모의기에 분산되어 있는 DEVS 형식론 기반 모델의 동작을 제어하기 위한 글로벌 코디네이터 (Global Coordinator)가 없는 현행 시스템의 경우 동작이 비효율적이거나 제한된다.
또한, 각 DEVS 기반 모의기는 분산 시뮬레이션 네트워크 I/F를 갖고 있어 분산 시뮬레이션 네트워크 변경 시 모든 모의기의 I/F를 변경해야 하는 문제점이 있다.
따라서 이러한 종래 기술의 문제점을 해결하기 위한 것으로, 본 발명의 목적은 다수의 DEVS 기반 모의기와 비-DEVS 기반 모의기 간에 연동하는 글로벌 코디네이터를 구비하여 그 구비된 글로벌 코디네이터에서 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받고 제공받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 기반으로 전체 시뮬레이션 상에 존재하는 모델들의 수행 순서를 스케쥴링하도록 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 시스템을 제공하는데 있다.
그러나 본 발명의 목적은 상기에 언급된 사항으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 목적들을 달성하기 위하여, 본 발명의 한 관점에 따른 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법은 (a)다수의 DEVS 기반 모의기가 루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하되, 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 관리하는 단계; (b)다수의 비-DEVS 기반 모의기가 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 관리하는 단계; 및 (c)모의기 연동 관리기가 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기로부터 제공 받은 정보들을 기반으로 모의 수행을 위한 시뮬레이션 스케쥴링 정보를 생성하고 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 단계를 포함할 수 있다.
바람직하게, 상기 구성 정보는 모델을 구성하는 AM, CM의 구성을 나타내는 정보이고, 상기 상태 정보는 모델의 상태를 나타내는 정보이며, 상기 이벤트 정보는 모델의 상태 천이 시 출력되는 정보로 다른 모델에 영향을 줄 수 있는 정보를 의미하는 것을 특징으로 한다.
바람직하게, 상기 (a) 단계는 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 상기 모의기 연동 관리기에 송신하는 것을 특징으로 한다.
바람직하게, 상기 (c) 단계는 상기 다수의 DEVS 기반 모의기로부터 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 수신하고, 상기 다수의 비-DEVS 기반 모의기로부터 상기 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 수신하며, 수신된 정보들을 기반으로 각 모델의 수행 순서를 나타내는 수행명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 생성하여 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 것을 특징으로 한다.
바람직하게, 상기 모의기 연동 관리기는 제1 네트워크를 통해 상기 다수의 DEVS 기반 모의기와 연동하고, 상기 제1 네트워크와 다른 제2 네트워크를 통해 상기 다수의 비-DEVS 기반 모의기와 연동하는 것을 특징으로 한다.
본 발명의 다른 한 관점에 따른 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법은 (a)제1 네트워크 I/F(Interface)가 루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하는 다수의 DEVS 기반 모의기로부터 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 제공 받는 단계; (b)제2 네트워크 I/F가 다수의 비-DEVS 기반 모의기로부터 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 제공 받는 단계; 및 (c)글로벌 코디네이터가 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기로부터 제공 받은 정보들을 기반으로 모의 수행을 위한 시뮬레이션 스케쥴링 정보를 생성하고 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 단계를 포함할 수 있다.
바람직하게, 상기 구성 정보는 모델을 구성하는 AM, CM의 구성을 나타내는 정보이고, 상기 상태 정보는 모델의 상태를 나타내는 정보이며, 상기 이벤트 정보는 모델의 상태 천이 시 출력되는 정보로 다른 모델에 영향을 줄 수 있는 정보를 의미하는 것을 특징으로 한다.
바람직하게, 상기 (a) 단계는 루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하는 상기 다수의 DEVS 기반 모의기로부터 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 제공 받는 것을 특징으로 한다.
바람직하게, 상기 (c) 단계는 상기 다수의 DEVS 기반 모의기로부터 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 수신하고, 상기 다수의 비-DEVS 기반 모의기로부터 상기 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 수신하며, 수신된 정보들을 기반으로 각 모델의 수행 순서를 나타내는 수행명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 생성하여 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 것을 특징으로 한다.
바람직하게, 상기 글로벌 코디네이터는 제1 네트워크를 통해 상기 다수의 DEVS 기반 모의기와 연동하고, 상기 제1 네트워크와 다른 제2 네트워크를 통해 상기 다수의 비-DEVS 기반 모의기와 연동하는 것을 특징으로 한다.
이를 통해, 본 발명은 다수의 DEVS 기반 모의기와 비-DEVS 기반 모의기 간에 연동하는 글로벌 코디네이터를 구비하여 그 구비된 글로벌 코디네이터에서 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받고 제공받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 기반으로 전체 시뮬레이션 상에 존재하는 모델들의 수행 순서를 스케쥴링하도록 함으로써, 효율적인 모의 수행이 가능할 수 있는 효과가 있다.
또한, 본 발명은 모의기 내부의 모든 모델에서 발생하는 사건에 대한 정보를 모두 관할하여 모의를 수행하기 때문에 부하 절감 및 모의 시간을 단축할 수 있는 효과가 있다. 이렇게 부하 절감이 가능한 이유는 기존에 DEVS 기반 모의기가 분산 시뮬레이션 네트워크에 연결되는 경우 DEVS 모델의 각종 정보들이 분산 시뮬레이션 네트워크를 통해 그대로 노출됨으로써 성능 저하를 유발하고 또한 이산 사건이라는 DEVS의 특성을 살리지 못하는 단점이 있었으나 본 발명에 따른 모의기 연동 관리기를 통해 선별된 정보만 분산 시뮬레이션 네트워크에 노출되고 모의기 연동 관리기의 Global Coordinator를 통해 DEVS 모델의 이산 사건 특성을 살릴 수 있는 가능성이 생겼기 때문이다.
또한, 본 발명은 DEVS 기반 모의기와 비-DEVS 기반 모의기를 모두 연동하는 경우 글로벌 코디네이터의 기능 또는 역할만을 변경하고 개별 모의기 각각의 기능 또는 역할은 변경하지 않아도 되기 때문에 다종 시뮬레이션 시스템과 연동할 수 있는 효과가 있다.
도 1은 종래 기술에 따른 분산 시뮬레이션 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 DEVS 기반 분산 시뮬레이션 시스템을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 DEVS 기반 모의기의 구성을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 모의기 연동 관리기의 구성을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 메시지 포맷(format)을 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 DEVS 기반 분산 시뮬레이션 방법을 나타내는 도면이다.
이하에서는, 본 발명의 실시예에 따른 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법을 첨부한 도 2 내지 도 6을 참조하여 설명한다. 본 발명에 따른 동작 및 작용을 이해하는데 필요한 부분을 중심으로 상세히 설명한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 동일한 명칭의 구성 요소에 대하여 도면에 따라 다른 참조부호를 부여할 수도 있으며, 서로 다른 도면임에도 불구하고 동일한 참조부호를 부여할 수도 있다. 그러나, 이와 같은 경우라 하더라도 해당 구성 요소가 실시예에 따라 서로 다른 기능을 갖는다는 것을 의미하거나, 서로 다른 실시예에서 동일한 기능을 갖는다는 것을 의미하는 것은 아니며, 각각의 구성 요소의 기능은 해당 실시예에서의 각각의 구성요소에 대한 설명에 기초하여 판단하여야 할 것이다.
특히, 본 발명에서는 다수의 DEVS(Discrete Event System Specification) 기반 모의기와 비-DEVS 기반 모의기 간에 연동하는 글로벌 코디네이터(global coordinator)를 구비하여 그 구비된 글로벌 코디네이터에서 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받고 제공받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 기반으로 전체 시뮬레이션 상에 존재하는 모델들의 수행 순서를 스케쥴링(scheduling)하도록 하는 새로운 분산 시뮬레이션 방안을 제안한다.
이때, 글로벌 코디네이터는 서로 다른 네트워크를 구성하는 다수의 DEVS 기반 모의기와 다수의 비-DEVS 기반 모의기에 각각 연동할 수 있다. 즉, 글로벌 코디네이터는 제1 네트워크를 통해 다수의 DEVS 기반 모의기와 연동하게 되고, 제1 네트워크와 다른 제2 네트워크를 통해 다수의 비-DEVS 기반 모의기와 연동할 수 있다.
도 2는 본 발명의 일 실시예에 따른 DEVS 기반 분산 시뮬레이션 시스템을 나타내는 도면이다.
도 2에 도시한 바와 같이, 본 발명에 따른 DEVS 기반 분산 시뮬레이션 시스템은 다수의 DEVS 기반 모의기(110), 모의기 연동 관리기(120), 및 다수의 비-DEVS 기반 모의기(130) 등을 포함하여 구성될 수 있다.
DEVS 기반 모의기(110)는 루트 코디네이터(root coordinator)를 이용하여 내부의 DEVS 모델의 구성 정보, 및 상태 정보와 DEVS 모델에서 발생하는 이벤트 정보를 포함하는 상태 정보 및 이벤트 정보, 루트 코디네이터의 정보를 관리하고 이러한 정보들을 기반으로 모의를 수행할 수 있다. 즉, DEVS 기반 모의기(110)는 모델의 구성 정보, 상태 정보 및 이벤트 정보, 및 루트 코디네이터 정보 등을 모의기 연동 관리기(120)에 제공하고, 이에 대한 응답으로 모의기 연동 관리기(120)로부터 제공 받는 시뮬레이션 스케쥴링 정보에 따라 모의를 수행하게 된다.
이때, DEVS 모델은 AM(Atomic Model), AM의 조합인 CM(Coupled Model)로 이루어질 수 있는데, 이러한 AM, CM의 구성을 DEVS 모델의 구성 정보라고 일컫는다.
또한 상태 정보는 DEVS 모델의 상태를 나타내는 정보이고, 이벤트 정보는 모델의 상태 천이 시 출력되는 정보로서 다른 모델에 영향을 줄 수 있는 정보를 나타낸다.
다시 말해, 구성 정보는 입력, 출력을 갖는 기본모델(Atomic Model, AM) 및 다수의 AM을 연결해서 입출력 관계를 형성한 복합모델(Coupled Model, CM)이 어떠한 구성을 갖고 구현되어 있는지를 나타내는 정보이다. 예를 들어 음료수 자판기를 모델로 만든다면 입력은 동전투입구 및 음료수 선택 버튼에 해당하고 출력은 음료수 제공부가 될 수 있다. 자판기 모델을 간단하게 만든다면 동전투입구, 음료수 선택 버튼을 입력으로 하고 음료수 제공부를 출력으로 하는 단일 AM으로 구성할 수도 있겠지만 더 상세한 모델링을 하게 된다면 동전투입 모델, 음료수 선택 모델, 음료수 제공 모델을 각각의 AM으로 만들고 각 AM 간에 입출력 관계를 맺은 음료수 자판기 CM을 만들 수도 있다. 상태 정보는 AM 및 CM 모델이 갖고 있는 상태값을 의미한다. 예를 들어 음료수 자판기 모델인 경우 대기 상태, 동전 투입 상태, 음료수 선택 상태, 음료수 제공 완료 상태 등으로 구성될 수 있다. 상태 정보는 입력값 또는 모델 내부의 시간진행 함수에 의해 정해지는 것으로 모델 내부의 현재상태를 나타내는 정보라고 할 수 있다. 이벤트 정보는 모델의 상태변화에 따라 모델외부로 출력되는 정보를 의미하며 다른 모델에 영향을 줄 수 있는 정보를 의미한다. 루트 코디네이터는 단일 DEVS 모의기 내부에 존재하는 모델(AM 및 CM)에 대한 구성정보, 상태정보, 이벤트 정보를 관리하는 역할을 수행한다.
이 경우 DEVS 모델의 구성 정보, 상태 정보 및 이벤트 정보로는 루트 코디네이터에 의해서 관리된 정보를 송신하게 되며 특히 상태 정보 및 이벤트 정보의 경우 모델링에 따라 입력, 출력, 모델 내부 시간진행 함수 수행 결과를 발생 시간으로 정리해서 송신하게 된다.
여기서 구성 정보는 모델 간의 입/출력 포트 연결을 위한 정보로 활용되며 상태 정보는 각 모델의 입력 및 시간 진행에 따른 다음 상태를 예측하기 위해 사용되며 이벤트 정보는 입/출력 포트를 통해 전달되는 정보로서 각 모델들에게 상태 정보 변경을 위한 용도로 사용된다.
이때, DEVS 기반 모의기(110)는 DEVS 모의기 네트워크 즉, 제1 네트워크를 통해 모의기 연동 관리기(120)와 연동하여 모의 수행에 필요한 각종 데이터를 송신 또는 수신할 수 있다.
모의기 연동 관리기(120)는 DEVS 기반 모의기(110)와 비-DEVS 기반 모의기(130) 간에 구비되어 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받고 제공받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 기반으로 전체 시뮬레이션 상에 존재하는 모델들의 수행 순서를 스케쥴링할 수 있다.
모의기 연동 관리기(120)는 그 스케쥴링한 결과로 각 모델의 수행 순서를 나타내는 수행 명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 생성하고 생성된 시뮬레이션 스케쥴링 정보를 DEVS 기반 모의기(110)와 비-DEVS 기반 모의기(130)에 제공할 수 있다.
이때, 모의기 연동 관리기(120)는 DEVS 기반 모의기(110)와 비-DEVS 기반 모의기(130)로부터 주기적 또는 비주기적으로 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받게 된다.
즉, 모의기 연동 관리기(120)는 다수의 DEVS 기반 모의기(110) 및 다수의 비-DEVS 기반 모의기(130)로부터 모델의 구성 정보, 상태 정보, 이벤트 정보를 수신하고 개별 정보의 발생 예정 시점을 기반으로 발생시간이 빠른 순으로 정렬해서 시뮬레이션 스케쥴링 정보를 생성해서 각 모의기로 전송한다. 시뮬레이션 스케쥴링 정보를 수신한 각 모의기는 수신정보를 기반으로 시뮬레이션을 진행하고 이에 따라 변경된 상태 정보, 이벤트 정보를 모의기 연동 관리기(120)로 보내게 된다.
비-DEVS 기반 모의기(130)는 내부의 비-DEVS 모델의 구성 정보, 및 상태 정보와 비-DEVS 모델에서 발생하는 이벤트 정보를 포함하는 수행정보를 관리하고 이러한 정보를 기반으로 모의를 수행할 수 있다. 즉, 비-DEVS 기반 모의기(130)는 모델의 구성 정보, 상태 정보 및 이벤트 정보 등을 모의기 연동 관리기(120)에 제공하고, 이에 대한 응답으로 모의기 연동 관리기(120)로부터 제공 받는 시뮬레이션 스케쥴링 정보에 따라 모의를 수행하게 된다.
이때, 비-DEVS 기반 모의기(130)는 분산 시뮬레이션 네트워크 즉, 제2 네트워크를 통해 모의기 연동 관리기(120)와 연동하여 모의 수행에 필요한 각종 데이터를 송신 또는 수신할 수 있다.
이처럼 DEVS 기반 모의기(110)는 분산 시뮬레이션 네트워크에 직접 연동되지 않고 DEVS 모의기 네트워크를 통해 모의기 연동 관리기(120)와 연동하기 때문에 분산 시뮬레이션 네트워크의 종류가 변경되더라도 모의기 연동 관리기(120)의 I/F만 변경되면 된다.
도 3은 본 발명의 일 실시예에 따른 DEVS 기반 모의기의 구성을 나타내는 도면이다.
도 3에 도시한 바와 같이, 본 발명에 따른 DEVS 기반 모의기(110)는 DEVS 모델 저장부(111), 루트 코디네이터(112), 및 네트워크 I/F(113) 등을 포함하여 구성될 수 있다.
DEVS 모델 저장부(111)는 적어도 하나의 DEVS 모델을 저장하여 관리할 수 있다.
루트 코디네이터(112)는 DEVS 기반 모의기 내에 존재하는 DEVS 모델의 구성 정보, 및 상태 정보와 DEVS 모델에서 발생하는 이벤트 정보를 포함하는 수행 정보를 관리하고, 모델의 구성 정보, 상태 정보 및 이벤트 정보, 루트 코디네이터 정보를 모의기 연동 관리기(120)에 제공할 수 있다.
이때, 루트 코디네이터(112)는 주기적으로 자신이 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보, 루트 코디네이터 정보를 모의기 연동 관리기(120)에 제공하거나 모의기 연동 관리기(120)의 요청에 따라 구성 정보, 상태 정보 및 이벤트 정보, 루트 코디네이터 정보를 제공하게 된다.
루트 코디네이터(112)는 모의기 연동 관리기(120)로부터 각 모델의 수행 순서를 나타내는 수행 명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 수신하고, 수신된 시뮬레이션 스케쥴링 정보에 따라 모의를 수행할 수 있다.
네트워크 I/F(113)는 DEVS 모의기 네트워크 즉, 제1 네트워크를 통해 모의기 연동 관리기(120)와 연동하여 모의 수행에 필요한 각종 데이터를 송신 또는 수신할 수 있다.
도 4는 본 발명의 일 실시예에 따른 모의기 연동 관리기의 구성을 나타내는 도면이다.
도 4에 도시한 바와 같이, 본 발명에 따른 모의기 연동 관리기(120)는 제1 네트워크 I/F(121), 글로벌 코디네이터(122), 및 제2 네트워크 I/F(123) 등을 포함하여 구성될 수 있다.
제1 네트워크 I/F(121)는 DEVS 모의기 네트워크를 통해 DEVS 기반 모의기(110)와 연동하여 모의 수행에 필요한 각종 데이터를 송신 또는 수신할 수 있다.
예컨대, 제1 네트워크 I/F(121)는 DEVS 모의기 네트워크를 통해 DEVS 기반 모의기(110)로부터 모델의 구성 정보, 상태 정보 및 이벤트 정보, 루트 코디네이터 정보를 수신하고, 수행 명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 송신할 수 있다.
글로벌 코디네이터(122)는 다수의 DEVS 기반 모의기, 비-DEVS 기반 모의기에 연동하여 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보를 제공받고 제공받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 관리할 수 있다.
글로벌 코디네이터(122)는 다수의 DEVS 기반 모의기, 비-DEVS 기반 모의기로부터 제공 받은 모델의 구성 정보, 상태 정보 및 이벤트 정보를 기반으로 모의를 수행하기 위한 시뮬레이션 스케쥴링 정보를 생성하고 생성된 시뮬레이션 스케쥴링 정보를 다수의 DEVS 기반 모의기, 비-DEVS 기반 모의기에 제공할 수 있다.
이때, 시뮬레이션 스케쥴링 정보는 각 모델의 수행 순서를 나타내는 수행 명령 정보 등을 포함한다.
제2 네트워크 I/F(123)는 분산 시뮬레이션 네트워크를 통해 비-DEVS 기반 모의기(130)와 연동하여 모의 수행에 필요한 각종 데이터를 송신 또는 수신할 수 있다.
도 5는 본 발명의 일 실시예에 따른 메시지 포맷(format)을 나타내는 도면이다.
도 5에 도시한 바와 같이, 본 발명에 따라 DEVS 기반 모의기, 모의기 연동 관리기, 비-DEVS 기반 모의기 간에 전송되는 메시지 포맷은 소스 타입(Source type) 필드, 소스 ID(Source ID) 필드, 목적지 타입(Destination type) 필드, 목적지 ID(Destination ID) 필드, 메시지 ID(Message ID) 필드, 메시지 사이즈(Message size) 필드, 메시지 데이터(Message data) 필드 등으로 구성될 수 있다.
소스 타입 필드는 소스 타입을 나타내는 필드로서, 8 비트가 할당될 수 있다. 예컨대, 소스 타입 필드의 값이 0이면 모의기 연동 관리기를 나타내고 1이면 DEVS 기반 모의기를 나타내며, 2이면 비-DEVS 기반 모의기를 나타낸다.
소스 ID 필드는 소스 ID를 나타내는 필드로서 0~254까지의 8비트가 할당된다. 여기서, 소스 ID 필드의 값이 255인 경우 전체 모의기를 지칭하게 된다.
목적지 타입 필드는 목적지 타입을 나타내는 필드로서, 8 비트가 할당될 수 있다. 예컨대, 목적지 타입 필드의 값이 0이면 모의기 연동 관리기를 나타내고 1이면 DEVS 기반 모의기를 나타내며, 2이면 비-DEVS 기반 모의기를 나타낸다.
목적지 ID 필드는 목적지 ID를 나타내는 필드로서 0~254까지의 8비트가 할당된다. 여기서, 목적지 ID 필드의 값이 255인 경우 전체 모의기를 지칭하게 된다.
메시지 ID 필드는 메시지의 종류를 나타내는 필드로서, 16 비트가 할당된다. 예컨대, 메시지 ID 필드의 값이 0이면 DEVS 모델의 구성 정보를 나타내고, 1이면 DEVS 모델의 상태 정보 및 이벤트 정보를 나타내며, 2이면 비-DEVS 모델의 구성 정보를 나타내며, 3이면 비-DEVS 모델의 상태 정보 및 이벤트 정보를 나타내며, 4이면 DEVS 모델의 수행 명령 정보를 나타낸다.
메시지 데이터 필드는 데이터를 나타내는 필드로서, 가변적으로 비트가 할당된다.
도 6은 본 발명의 일 실시예에 따른 DEVS 기반 분산 시뮬레이션 방법을 나타내는 도면이다.
도 6에 도시한 바와 같이, 본 발명에 따른 DEVS 기반 모의기(110)는 루트 코디네이터를 이용하여 내부의 DEVS 모델의 구성 정보, 및 상태 정보와 DEVS 모델에서 발생하는 이벤트 정보를 포함하는 수행 정보, 루트 코디네이터의 정보를 관리하고(S610), 이러한 정보들을 모의기 연동 관리기(120)에 송신할 수 있다(S612).
또한 비-DEVS 기반 모의기(130)는 내부의 비-DEVS 모델의 구성 정보, 및 상태 정보와 비-DEVS 모델에서 발생하는 이벤트 정보를 포함하는 수행 정보를 관리하고(S620) 이러한 정보들을 모의기 연동 관리기(120)에 송신할 수 있다(S622).
다음으로, 모의기 연동 관리기(120)는 DEVS 기반 모의기(110)와 비-DEVS 기반 모의기(130)로부터 각 모의기가 관리하는 모델의 구성 정보, 상태 정보 및 이벤트 정보, 루트 코디네이터의 정보를 제공 받으면, 제공 받은 모델의 구성 정보, 상태 정보 및 이벤트 정보, 루트 코디네티어의 정보를 기반으로 모의를 수행하기 위한 시뮬레이션 스케쥴링 정보를 생성할 수 있다(S630).
다음으로, 모의기 연동 관리기(120)는 생성된 시뮬레이션 스케쥴링 정보를 다수의 DEVS 기반 모의기, 비-DEVS 기반 모의기에 제공할 수 있다(S640, S650).
다음으로, DEVS 기반 모의기(110)는 시뮬레이션 스케쥴링 정보를 제공 받으면, 제공 받은 시뮬레이션 스케쥴링 정보 내 수행 순서에 따라 모의를 수행할 수 있다(S660).
또한 비-DEVS 기반 모의기(130)는 시뮬레이션 스케쥴링 정보를 제공 받으면, 제공 받은 시뮬레이션 스케쥴링 정보 내 수행 순서에 따라 모의를 수행할 수 있다(S670).
한편, 이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
이상에서 설명한 실시예들은 그 일 예로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
110: DEVS 기반 모의기
111: DEVS 모델 저장부
112: 루트 코디네이터
113: 네트워크 I/F
120: 모의기 연동 관리기
121: 제1 네트워크 I/F
122: 글로벌 코디네이터
123: 제2 네트워크 I/F
130: 비-DEVS 기반 모의기

Claims (10)

  1. (a)다수의 DEVS 기반 모의기가 루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하되, 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 관리하는 단계;
    (b)다수의 비-DEVS 기반 모의기가 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 관리하는 단계; 및
    (c)모의기 연동 관리기가 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기로부터 제공 받은 정보들을 기반으로 모의 수행을 위한 시뮬레이션 스케쥴링 정보를 생성하고 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 단계;
    를 포함하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  2. 제1 항에 있어서,
    상기 구성 정보는 모델을 구성하는 AM, CM의 구성을 나타내는 정보이고, 상기 상태 정보는 모델의 상태를 나타내는 정보이며, 상기 이벤트 정보는 모델의 상태 천이 시 출력되는 정보로 다른 모델에 영향을 줄 수 있는 정보를 의미하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  3. 제1 항에 있어서,
    상기 (a) 단계는,
    상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 상기 모의기 연동 관리기에 송신하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  4. 제3 항에 있어서,
    상기 (c) 단계는,
    상기 다수의 DEVS 기반 모의기로부터 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보, 및 상기 루트 코디네이터의 정보를 수신하고,
    상기 다수의 비-DEVS 기반 모의기로부터 상기 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 수신하며,
    수신된 정보들을 기반으로 각 모델의 수행 순서를 나타내는 수행명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 생성하여 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  5. 제4 항에 있어서,
    상기 모의기 연동 관리기는,
    제1 네트워크를 통해 상기 다수의 DEVS 기반 모의기와 연동하고, 상기 제1 네트워크와 다른 제2 네트워크를 통해 상기 다수의 비-DEVS 기반 모의기와 연동하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  6. (a)제1 네트워크 I/F(Interface)가 루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하는 다수의 DEVS 기반 모의기로부터 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 제공 받는 단계;
    (b)제2 네트워크 I/F가 다수의 비-DEVS 기반 모의기로부터 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 제공 받는 단계; 및
    (c)글로벌 코디네이터가 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기로부터 제공 받은 정보들을 기반으로 모의 수행을 위한 시뮬레이션 스케쥴링 정보를 생성하고 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 단계;
    를 포함하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  7. 제6 항에 있어서,
    상기 구성 정보는 모델을 구성하는 AM, CM의 구성을 나타내는 정보이고, 상기 상태 정보는 모델의 상태를 나타내는 정보이며, 상기 이벤트 정보는 모델의 상태 천이 시 출력되는 정보로 다른 모델에 영향을 줄 수 있는 정보를 의미하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  8. 제6 항에 있어서,
    상기 (a) 단계는,
    루트 코디네이터를 이용하여 적어도 하나의 DEVS 모델을 관리하는 상기 다수의 DEVS 기반 모의기로부터 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 제공 받는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  9. 제8 항에 있어서,
    상기 (c) 단계는,
    상기 다수의 DEVS 기반 모의기로부터 상기 적어도 하나의 DEVS 모델 각각의 구성 정보, 상태 정보, 상기 이벤트 정보, 및 상기 루트 코디네이터의 정보를 수신하고,
    상기 다수의 비-DEVS 기반 모의기로부터 상기 적어도 하나의 비-DEVS 모델 각각의 구성 정보, 상태 정보, 이벤트 정보를 수신하며,
    수신된 정보들을 기반으로 각 모델의 수행 순서를 나타내는 수행명령 정보를 포함하는 시뮬레이션 스케쥴링 정보를 생성하여 생성된 상기 시뮬레이션 스케쥴링 정보를 상기 다수의 DEVS 기반 모의기와 상기 다수의 비-DEVS 기반 모의기에 제공하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
  10. 제8 항에 있어서,
    상기 글로벌 코디네이터는,
    제1 네트워크를 통해 상기 다수의 DEVS 기반 모의기와 연동하고, 상기 제1 네트워크와 다른 제2 네트워크를 통해 상기 다수의 비-DEVS 기반 모의기와 연동하는 것을 특징으로 하는 글로벌 코디네이터를 이용하는 DEVS 기반 분산 시뮬레이션 방법.
KR1020130101989A 2013-08-27 2013-08-27 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법 KR101362844B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130101989A KR101362844B1 (ko) 2013-08-27 2013-08-27 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130101989A KR101362844B1 (ko) 2013-08-27 2013-08-27 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법

Publications (1)

Publication Number Publication Date
KR101362844B1 true KR101362844B1 (ko) 2014-02-17

Family

ID=50270906

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130101989A KR101362844B1 (ko) 2013-08-27 2013-08-27 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법

Country Status (1)

Country Link
KR (1) KR101362844B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099475A (ja) 1998-09-25 2000-04-07 Mitsubishi Electric Corp 分散模擬装置
JP2000132519A (ja) 1998-10-29 2000-05-12 Mitsubishi Electric Corp 分散シミュレーションシステム
KR101242325B1 (ko) 2011-03-17 2013-03-11 한국과학기술원 계층적 이산 사건 시스템 명세 모델의 이벤트 기반 시뮬레이션 방법, 시스템 및 이를 위한 기록 매체
KR101275172B1 (ko) 2012-12-17 2013-06-18 국방과학연구소 이산 사건 시뮬레이션 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099475A (ja) 1998-09-25 2000-04-07 Mitsubishi Electric Corp 分散模擬装置
JP2000132519A (ja) 1998-10-29 2000-05-12 Mitsubishi Electric Corp 分散シミュレーションシステム
KR101242325B1 (ko) 2011-03-17 2013-03-11 한국과학기술원 계층적 이산 사건 시스템 명세 모델의 이벤트 기반 시뮬레이션 방법, 시스템 및 이를 위한 기록 매체
KR101275172B1 (ko) 2012-12-17 2013-06-18 국방과학연구소 이산 사건 시뮬레이션 방법

Similar Documents

Publication Publication Date Title
CN106940428B (zh) 芯片验证方法、装置及系统
US20160352584A1 (en) Mixture model approach for network forecasting
US11669085B2 (en) Method and system for determining system settings for an industrial system
Stanovich et al. Development of a smart-grid cyber-physical systems testbed
CN109416639B (zh) 用于在虚拟机上拟真网络流量模式的方法、系统以及计算机可读介质
US20050204333A1 (en) Integrated system-of-systems modeling environment and related methods
US20150370593A1 (en) System construction device and system construction method
CN102750401A (zh) 用于生成基于cim的电力系统电路模型的系统和方法
CN101526915B (zh) 并行模拟中支持踪迹文件并行输入输出的方法
Tariq et al. Cyber-physical co-simulation of smart grid applications using ns-3
CN103631988A (zh) 面向电力系统仿真的多用户仿真数据管理平台
Song et al. Performance evaluation of integrated smart energy solutions through large-scale simulations
KR101362838B1 (ko) 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 시스템
Melo et al. Models for hyper-converged cloud computing infrastructures planning
KR101362844B1 (ko) 글로벌 코디네이터를 이용하는 devs 기반 분산 시뮬레이션 방법
CN114629767A (zh) 电力调度网络仿真方法、装置、计算机设备和存储介质
EP4187864A1 (en) Landscape model verification system
CN113348778B (zh) 基于dds体系的通用化卫星综合测试系统
de Almeida et al. Bigdatanetsim: A simulator for data and process placement in large big data platforms
CN115879409A (zh) 验证方法、验证装置、介质及电子设备
CN114661477A (zh) 一种低能耗的区块资源证明方法、装置和电子设备
CN110351104A (zh) 一种vim选择方法及装置
Benedikt et al. Virtualization platform for urban infrastructure
WO2019225420A1 (ja) 変換装置、および、変換プログラム
CN112579293A (zh) 一种分布计算系统的综合验证方法

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170112

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 5