JPH09245014A - Discrete event simulator - Google Patents
Discrete event simulatorInfo
- Publication number
- JPH09245014A JPH09245014A JP4919596A JP4919596A JPH09245014A JP H09245014 A JPH09245014 A JP H09245014A JP 4919596 A JP4919596 A JP 4919596A JP 4919596 A JP4919596 A JP 4919596A JP H09245014 A JPH09245014 A JP H09245014A
- Authority
- JP
- Japan
- Prior art keywords
- event
- data
- simulator
- occurrence
- interrupt
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 76
- 238000004088 simulation Methods 0.000 claims abstract description 66
- 238000000034 method Methods 0.000 claims description 24
- 238000010586 diagram Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 2
- 230000001629 suppression Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 14
- 239000011111 cardboard Substances 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 238000007796 conventional method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、プラントの設計お
よび評価を行うシミュレーション方法及びその装置に係
り、特に、離散的な物を扱う物流システムやFAシステ
ムなどのシミュレーションを行う離散事象シミュレータ
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a simulation method and apparatus for designing and evaluating a plant, and more particularly to a discrete event simulator for simulating a physical distribution system handling discrete objects or an FA system.
【0002】[0002]
【従来の技術】離散事象をシミュレーションするための
モデルには、事象中心のモデル、プロセス中心のモデ
ル、アクティビティ中心のモデルがある。事象中心のモ
デルは事象の発生時点における状態の変化を記述するモ
デルであり、例えば、状態遷移図で表される。プロセス
中心のモデルはシステムの中を物がどのように動くかを
記述するモデルであり、データフロー図で表される。ア
クティビティ中心のモデルは事象によって生じるプラン
トの様々な状態の発生、終了などを記述するモデルであ
り、これに直接対応する図式表現はない。2. Description of the Related Art Models for simulating discrete events include event-centric models, process-centric models, and activity-centric models. The event-centric model is a model that describes a change in state at the time of occurrence of an event, and is represented by, for example, a state transition diagram. A process-centric model is a model that describes how things move in a system and is represented by a dataflow diagram. The activity-centric model is a model that describes the occurrence and termination of various states of the plant caused by an event, and there is no graphical representation that directly corresponds to this.
【0003】離散事象シミュレータは、このようなモデ
ル化方法を背景に構築されている場合が多いが、多くは
事象中心のモデルまたはアクティビティ中心のモデル
と、プロセス中心のモデルとを融合した形で実現されて
いる。すなわち、モデルの表現上はデータフロー図的に
モデル構築を行い、内部処理では事象中心の処理が行わ
れる場合が多い。Discrete event simulators are often constructed against the background of such modeling methods, but in many cases they are realized by fusing event-centric models or activity-centric models with process-centric models. Has been done. That is, in terms of model representation, a model is often constructed by a data flow diagram, and internal processing often involves event-centric processing.
【0004】以下、本発明の対象となる事象駆動型の離
散事象シミュレータの従来技術について、図1〜図6を
参照して、より具体的に説明する。ここでは、対象とす
るシステムは、プロセス中心のモデルにより、時間遅れ
ブロックなどの特別な記号を用いたブロックダイアグラ
ムによって記述される。なお、ここでいうブロックは、
本明細書の他の部分では、場所あるいは要素と記述して
いるものに相当する。The prior art of the event driven type discrete event simulator which is the subject of the present invention will be described in more detail below with reference to FIGS. Here, the system of interest is described by a process-centric model, with a block diagram using special symbols such as time-delayed blocks. The block here is
In other parts of the specification, this corresponds to what is described as a place or an element.
【0005】図1は、従来技術によるシミュレーション
対象システムモデル1201とその定義データ108の
一例を示すものであり、「停止する事象」も発生し得る
ように定義したベルトコンベアのモデルを示したもので
ある。FIG. 1 shows an example of a simulation target system model 1201 and its definition data 108 according to the prior art, and shows a model of a belt conveyor defined so that a "stop event" may occur. is there.
【0006】モデル1201は、モデルがどのような場
所1211〜1217(要素あるいはブロックと同義)
から構成され、それらがどのような接続関係を持つかを
定義した情報である。これはシミュレーション開始以前
に、ユーザにより、例えば、ビジュアルプログラミング
言語のようなモデル作成手段により、システムの挙動を
表すデータフローダイアグラムを記述すること等で定義
される。こうして得られた情報は、シミュレータのプリ
プロセッサ等によって、シミュレーション実行時に用い
るモデルの定義データ108に変換される(変換処理1
202)。The model 1201 is a place where the model is 1211-1217 (synonymous with an element or a block).
It is information that is defined from the following and defines what kind of connection they have. This is defined by the user before starting the simulation, for example, by describing a data flow diagram representing the behavior of the system by a model creating means such as a visual programming language. The information thus obtained is converted by the preprocessor of the simulator into the definition data 108 of the model used during the simulation execution (conversion process 1
202).
【0007】また、画面を構成する場所(ブロック要
素)については、どの入口に対して、どのような処理を
行なうかということを予め別途定義しておく。また、場
所の名前も通常、その処理を反映するように、その場所
(ブロック要素)に付与しておく。Further, regarding a place (block element) forming a screen, what kind of processing is to be performed for which entrance is previously defined separately. Also, the name of the place is usually given to the place (block element) so as to reflect the processing.
【0008】図2は事象テーブル106の構成の一例を
示す図である。従来の事象テーブル106は、カレント
イベントチェーン310とフューチャーイベントチェー
ン320より構成される。事象テーブル106には、事
象データを構成するパラメータとして、事象の発生時刻
321、事象に関わる処理の識別子322(事象を表す
処理のサブルーチンのアドレスなど)、事象の起きる場
所323、及び、事象に関連する物に関する情報(ある
いはその識別ID)等が記録できる領域324がある。FIG. 2 is a diagram showing an example of the structure of the event table 106. The conventional event table 106 includes a current event chain 310 and a future event chain 320. In the event table 106, as parameters constituting event data, the occurrence time 321 of the event, the identifier 322 of the process related to the event (such as the address of a subroutine of the process representing the event), the place 323 where the event occurs, and the event-related There is an area 324 in which information (or its identification ID) relating to things to be recorded can be recorded.
【0009】なお、カレントイベントチェーン310に
おいては、事象の発生時刻321は必須ではない。ま
た、物に関する情報を、その識別IDなどで記憶してい
る場合は、物の情報を格納するテーブル330が別に必
要となる。ここでは、そのような実現方式の場合を例に
示している。In the current event chain 310, the event occurrence time 321 is not essential. Further, when the information about the object is stored by its identification ID or the like, the table 330 for storing the information of the object is separately required. Here, the case of such an implementation method is shown as an example.
【0010】さらに、幾つかの点について説明を補足す
る。「事象に関連する物」というのは、例えば、コンベ
アに段ボールが「入る事象」が生起した場合の、「段ボ
ール」のことであり、それに関する情報とは、例えば、
シミュレーションによって、コンベアを通った段ボール
の数を種類やサイズ毎に集計したい場合においては、個
々の段ボールの種別やサイズを表す情報のことである。Furthermore, the description will be supplemented with respect to some points. The "thing related to the phenomenon" is, for example, "corrugated board" in the case where "the phenomenon that the corrugated board enters the conveyor" occurs, and the information about it is, for example,
When it is desired to collect the number of corrugated cardboards that have passed through the conveyor for each type and size by simulation, it is information indicating the type and size of each corrugated cardboard.
【0011】次に、上述したような構成を備える従来の
離散事象シミュレータの概要を説明する。Next, an outline of a conventional discrete event simulator having the above-mentioned configuration will be described.
【0012】従来の離散事象シミュレータは、例えば図
3に示すように、事象選択手段101、シミュレーショ
ン時刻更新手段102、及び、事象処理手段103を備
え、上述したシミュレーション対象システムモデルデー
タ(以下定義データと略称する)108と事象テーブル
106に格納されている事象データを用いて、シミュレ
ーションを行う。なお、定義データ108は、モデルの
画面上の情報1201を計算機が処理できる形に変換し
た物であり、ここでは、モデルの画面上の構成(図1参
照)を、モデルの定義データ108とみなして説明す
る。As shown in FIG. 3, for example, a conventional discrete event simulator includes an event selecting means 101, a simulation time updating means 102, and an event processing means 103, and the above-mentioned simulation target system model data (hereinafter referred to as definition data). (Abbreviated) 108 and the event data stored in the event table 106 are used to perform a simulation. The definition data 108 is information obtained by converting the information 1201 on the model screen into a form that can be processed by a computer. Here, the configuration on the model screen (see FIG. 1) is regarded as the model definition data 108. Explain.
【0013】モデルに示されている各場所には、入口や
出口がある。例えば図1のDelay要素1211にお
いては、入口1221と出口1222がある。どのよう
な場所であっても、少なくともいずれか一つは備えてい
る。入口あるいは出口は、事象処理手段1101にとっ
ては、関数のアドレスに対応する。従って、画面上のあ
る場所の入口に物が入る事象が発生した場合には、その
入口に対応する関数を、入った物の属性値を引数として
コールする。Each location shown in the model has an entrance and an exit. For example, in the Delay element 1211 of FIG. 1, there is an inlet 1221 and an outlet 1222. Any place has at least one. For the event processing means 1101, the entrance or exit corresponds to the address of the function. Therefore, when an event occurs that an object enters the entrance of a certain place on the screen, the function corresponding to the entrance is called with the attribute value of the entered object as an argument.
【0014】例えば、図1のDelay要素1211に
ついては、入口1221に「物の到着という事象」が発
生すると、時間遅れの計算処理を実施し、この計算結果
に基づいて「物が出るという事象」が起きる時刻を決
め、この新しい事象をフューチャーイベントチェーン3
20に格納する。また、例えばSwitch要素121
2であれば、スイッチの条件判定演算を行う関数をコー
ルし、2つの出口のいずれかへの「出る事象」をカレン
トイベントチェーン310へ格納する。For example, for the Delay element 1211 of FIG. 1, when an "event of arrival of an object" occurs at the entrance 1221, a time delay calculation process is performed, and based on the result of this calculation, an "event of an object exit". Decides the time when will occur, and this new event will be the future event chain 3
20. Also, for example, the Switch element 121
If it is 2, a function for performing a conditional judgment operation of the switch is called, and an “outgoing event” to either of two exits is stored in the current event chain 310.
【0015】このような様々な事象の処理結果に基づい
て事象テーブル106に登録された事象の中から、事象
選択手段101は最も発生時刻が早い事象を選択し、こ
れを次の事象として実施する。カレントイベントチェー
ン302に選択できる事象がない場合には、シミュレー
ション時刻更新手段102が、フューチャーイベントチ
ェーン320の中から、次に生じるべき事象の時刻を読
み込み、シミュレーション時刻として設定する。また、
その時刻に生じる全ての事象をフューチャーイベントチ
ェーン320からカレントイベントチェーンへ310へ
移動する。From the events registered in the event table 106 based on the processing results of such various events, the event selecting means 101 selects the event with the earliest occurrence time and implements this as the next event. . If there is no selectable event in the current event chain 302, the simulation time updating means 102 reads the time of the event that should occur next from the future event chain 320 and sets it as the simulation time. Also,
All events that occur at that time are moved from the future event chain 320 to the current event chain 310.
【0016】従来の離散事象シミュレータでは、こうし
た処理の繰り返しにより、先ほど入った「物が出る事
象」も処理され、出口に接続された別の場所の入口に対
する「物が入る事象」が新たに登録され、シミュレーシ
ョン上の時間が、進展して行く。In the conventional discrete event simulator, by repeating such processing, the "event that an object comes out" that has just entered is also processed, and the "event that an object comes in" is newly registered for the entrance of another place connected to the exit. And the time on the simulation goes on.
【0017】なお、演算などの処理の結果の大部分は、
データフローダイアグラム上のアークを流れる物の情報
に関するテーブル330に格納されるが、事象の発生時
刻に関わる計算結果だけは、事象テーブル106上に格
納される。また、事象は大別すると次の4つのタイプに
分かれる。すなわち、入る事象と出る事象が時間遅れな
く生起するタイプ、何らかの時間遅れを伴って生起する
タイプ、入ったきり出てこないタイプ、および、出るだ
けのタイプである。Most of the results of processing such as calculation are
Although it is stored in the table 330 regarding the information of the object flowing through the arc on the data flow diagram, only the calculation result regarding the occurrence time of the event is stored in the event table 106. In addition, events are roughly classified into the following four types. That is, there are a type in which an incoming event and an outgoing event occur without a time delay, a type that occurs with a certain time delay, a type that does not come in and out, and a type that only comes out.
【0018】上述した従来の離散事象シミュレータのブ
ロックダイアグラムに沿って流れる物は、トランザクシ
ョンと呼ばれる。トランザクションは、(1)フューチ
ャーイベントチェーンと(2)カレントイベントチェー
ンという二つのリストのいずれかに格納される。(1)
のリストには、現在入っているブロックから出て行く予
定時刻が、現在のシミュレーション時刻よりも後となる
トランザクションが、出て行く時刻が早い順に格納され
ている。(2)のリストには、現在入っているブロック
から出て行く予定時刻が、現在の時刻と等しいトランザ
クションが優先度などの順に並んでいる。The objects that flow along the block diagram of the conventional discrete event simulator described above are called transactions. Transactions are stored in one of two lists: (1) Future Event Chain and (2) Current Event Chain. (1)
In this list, transactions whose scheduled time to go out from the currently entered block is later than the current simulation time are stored in order from the earliest time to go out. In the list of (2), the transactions whose scheduled time to go out from the currently entered block are equal to the current time are arranged in order of priority and the like.
【0019】従来の離散事象シミュレータは、(2)の
リストに並んでいるトランザクションの処理が全て終了
すると、(1)のリストの先頭の事象を選び出して、そ
の時刻にシミュレーション時刻を合わせる。さらに、
(1)のリストから発生時刻がシミュレーション時刻と
等しい事象を全て選択し、(2)のリストへ移動する。
こうしてできた新しいカレントイベントチェーンの先頭
から、接続されたブロックに従って、滞留時間が0でな
いブロックまでシミュレーションを進める。このとき、
滞留時間が0でないブロックでは、その時刻に滞留時間
を加えた時間を出て行く時刻として、(1)のリストに
事象を登録する。In the conventional discrete event simulator, when the processing of all transactions arranged in the list of (2) is completed, the event at the head of the list of (1) is selected and the simulation time is adjusted to that time. further,
All the events whose occurrence time is equal to the simulation time are selected from the list of (1) and moved to the list of (2).
From the head of the new current event chain created in this way, the simulation is advanced to the block whose dwell time is not 0 according to the connected block. At this time,
In the block where the residence time is not 0, the event is registered in the list of (1) as the time to go out by adding the residence time to the time.
【0020】このように、離散事象シミュレータは、主
に、新規に発生する事象をリストやテーブルに登録する
処理と、登録された事象の検索、実行を行う処理によっ
て実現される。As described above, the discrete event simulator is mainly realized by a process of registering a newly occurring event in a list or a table and a process of searching and executing the registered event.
【0021】次に、上述の事象選択手段101、シミュ
レーション時刻更新手段102、事象処理手段1101
をそれぞれ実現する処理の一例について説明する。Next, the above-mentioned event selecting means 101, simulation time updating means 102, and event processing means 1101.
An example of processing for realizing each of the above will be described.
【0022】最初、図4のフローチャートを用いて、事
象選択手段101を実現する処理のプログラム例を説明
する。First, a program example of processing for realizing the event selecting means 101 will be described with reference to the flowchart of FIG.
【0023】事象選択手段101の起動時には、シミュ
レーション未終了で、シミュレーション時刻更新要求有
りの状態とし、次にシミュレーションが終了したか否か
を確認する(ステップ401)。未終了で有ればシミュ
レーション時刻更新が完了しているかどうかを確認し
(ステップ402)、更新完了の場合には、カレントイ
ベントチェーン301の先頭の事象を検索・選択する
(ステップ403)。When the event selecting means 101 is activated, the simulation is not completed and the simulation time update request is made, and then it is confirmed whether or not the simulation is completed (step 401). If it is not finished, it is confirmed whether or not the simulation time update is completed (step 402), and if the update is completed, the event at the head of the current event chain 301 is searched and selected (step 403).
【0024】カレントイベントチェーン301に選択可
能な事象が有れば(ステップ404でY)、選択した事
象をカレントイベントチェーン310から削除する(ス
テップ406)。ステップ404でNの場合には、シミ
ュレーション時刻更新手段102にシミュレーション時
刻更新要求を出し(ステップ405)、ステップ401
からの処理を繰り返す。If there is a selectable event in the current event chain 301 (Y in step 404), the selected event is deleted from the current event chain 310 (step 406). In the case of N in step 404, a simulation time update request is issued to the simulation time update means 102 (step 405), and step 401
Is repeated.
【0025】次に、図5のフローチャートを用いて、事
象処理手段1101を実現する処理のプログラム例を説
明する。Next, a program example of processing for realizing the event processing means 1101 will be described with reference to the flowchart of FIG.
【0026】事象処理手段1101の起動時には、シミ
ュレーション未終了で、シミュレーション時刻更新要求
無しの状態とし、次にシミュレーションが終了したか否
かを確認する(ステップ601)。未終了で有れば事象
処理要求が有るかどうかを確認し(ステップ602)、
有る場合には、前述のように関数をコールして処理を行
う(ステップ603)。When the event processing means 1101 is started, the simulation is not completed and the simulation time update request is not made, and it is confirmed whether or not the simulation is completed (step 601). If it is not completed, it is confirmed whether there is an event processing request (step 602),
If there is, the function is called and the processing is performed as described above (step 603).
【0027】その結果、新たな事象(派生事象)が発生
するかどうかを判定し(ステップ604)、派生事象が
ある場合には、その派生事象の登録要求を出し(ステッ
プ605)、図1のデータフローダイアグラムに対応す
るモデルの定義データ108より、その場所の次にある
場所への「入る事象」をカレントイベントチェーン31
0へ登録する。As a result, it is determined whether or not a new event (derivative event) occurs (step 604). If there is a derivative event, a registration request for the derivative event is issued (step 605), and the process shown in FIG. From the definition data 108 of the model corresponding to the data flow diagram, the "event to be entered" to the place next to that place is indicated by the current event chain 31.
Register to 0.
【0028】例えば、Delay要素1211からの
「出る事象」に対しては、Switch要素1212へ
の「入る事象」が対応する。この際、時刻や関連する情
報(例えば乗算結果)も併せて登録する。なお、新たに
発生する事象が時間遅れなく生じる場合は、カレントイ
ベントチェーン310へ、時間遅れがある場合はフュー
チャーイベントチェーン320へ登録する。For example, an "entering event" from the Delay element 1211 corresponds to an "entering event" into the Switch element 1212. At this time, time and related information (for example, multiplication result) are also registered. When a newly occurring event occurs without time delay, it is registered in the current event chain 310, and when there is a time delay, it is registered in the future event chain 320.
【0029】その後、再びステップ601からの処理を
繰り返す。また、モデルの定義データ108によって
は、派生する事象がない場合も有る(ステップ604で
N)が、その場合には、直ぐに再びステップ601から
の処理を繰り返す。After that, the processing from step 601 is repeated again. Further, depending on the model definition data 108, there may be no event to be derived (N in step 604), but in that case, the processing from step 601 is immediately repeated again.
【0030】次に、図6のフローチャートを用いて、シ
ミュレーション時刻更新手段102を実現する処理のプ
ログラム例を説明する。Next, a program example of processing for realizing the simulation time updating means 102 will be described with reference to the flowchart of FIG.
【0031】シミュレーション時刻更新手段102の起
動時には、シミュレーション未終了で、シミュレーショ
ン時刻更新要求有りの状態とし、次にフューチャーイベ
ントチェーン320の先頭の事象の生起時刻をシミュレ
ーション時刻とする(ステップ1002)。シミュレー
ション時刻がシミュレーションの終了時刻以上である
か、選択すべき事象が無い場合には(ステップ1003
でY)、シミュレーション終了とする。それ以外の場合
には、シミュレーション時刻と同じ生起時刻を持つ事象
を、フューチャーイベントチェーン320の中から全て
選別し、これらをカレントイベントチェーンへ移動し
(ステップ1004)、シミュレーション時刻更新完了
とする。When the simulation time updating means 102 is activated, the simulation time is not completed and the simulation time update request is made. Next, the occurrence time of the first event of the future event chain 320 is set as the simulation time (step 1002). If the simulation time is equal to or longer than the simulation end time or there is no event to be selected (step 1003
Then Y), and the simulation ends. In other cases, all the events having the same occurrence time as the simulation time are selected from the future event chain 320 and moved to the current event chain (step 1004), and the simulation time update is completed.
【0032】以上説明したように、従来の離散事象シミ
ュレータにおいて、事象選択手段101、事象処理手段
1101、シミュレーション時刻更新手段102は、モ
デルの定義データ108と事象テーブル106に順次ア
クセスしながらシミュレーションを進める。As described above, in the conventional discrete event simulator, the event selecting means 101, the event processing means 1101, and the simulation time updating means 102 proceed with the simulation while sequentially accessing the model definition data 108 and the event table 106. .
【0033】[0033]
【発明が解決しようとする課題】先ず、例えを通して解
決しようとする課題を説明する。ここでは、ベルトコン
ベアにより、段ボールが運ばれる様子をシミュレートす
る場合を考える。First, the problem to be solved will be described through an example. Here, consider the case where a cardboard is conveyed by a belt conveyor.
【0034】ベルトコンベアは、入ってから出て行くま
で時間遅れを伴う場所(図1のDelay要素121
1)である。従来の離散事象シミュレータでは、段ボー
ルが入るという事象が発生した時点で、輸送時間を考慮
し、出るという事象を登録する。しかし、その段ボール
を運んでいる最中に、コンベアが停止することをシミュ
レートしようとすると、従来の離散事象シミュレータで
は、なかなか難しいことになる。The belt conveyor is a place with a time delay from entering to leaving (Delay element 121 in FIG. 1).
1). In the conventional discrete event simulator, when an event of entering a cardboard occurs, the transportation time is considered and the event of exiting is registered. However, if it is attempted to simulate the stoppage of the conveyor while the corrugated board is being carried, it becomes quite difficult with the conventional discrete event simulator.
【0035】なぜならば、新しい事象は事象テーブル
(以下ではリストも含むものとする)に格納するだけ
で、その事象が起きるまでは、事象テーブルから削除で
きない。従って、コンベア故障が起きても段ボールが出
るという事象は発生してしまう。このため、故障してい
る場合には、出てきた段ボールをもう一度、もとのコン
ベア上に戻すループ(図1の要素1211〜1215)
を加える必要が生じる。This is because the new event is stored only in the event table (hereinafter also including a list) and cannot be deleted from the event table until the event occurs. Therefore, even if the conveyor fails, the cardboard will be ejected. Therefore, in the case of a failure, the loop for returning the cardboard that has come out to the original conveyor again (elements 1211 to 1215 in FIG. 1)
Will need to be added.
【0036】このようなループを加えることは、モデル
化の不自然さによるモデル化ミスの原因となるばかりで
なく、計算時間を増大させることにもなる。The addition of such a loop not only causes a modeling error due to the unnaturalness of modeling, but also increases the calculation time.
【0037】本発明の解決しようとしている主な課題
は、上記したような、従来の離散事象シミュレータにお
いておこりうる問題点を解決しようというものである。The main problem to be solved by the present invention is to solve the problems that may occur in the conventional discrete event simulator as described above.
【0038】より一般的に、この問題点を説明すると次
のようになる。すなわち、事象によっては、それより以
前に登録されているが、まだ発生していない事象に対し
て影響を与えるものがある。このような事象をモデル化
するには、影響を受けた場合と、影響を受けなかった場
合の両方を満たすように、この事象の処理をモデル化し
ておく必要がある。ところが、従来技術のように、これ
らをそのままモデル化しようとすると、データフロー図
として見ても煩雑であるし、実際のプラントイメージと
のずれも大きくなるという問題点がある。また、フロー
が長くなるため、計算に要する時間も増大するという問
題点がある。More generally, this problem will be described as follows. That is, some events may affect events that have been registered earlier but have not yet occurred. In order to model such an event, it is necessary to model the processing of this event so as to satisfy both the case of being affected and the case of not being affected. However, if they are to be modeled as they are, as in the prior art, there is a problem that the data flow diagram is complicated and the deviation from the actual plant image becomes large. Further, since the flow becomes long, the time required for calculation also increases.
【0039】よって、本発明の目的は、上記従来技術の
問題点を克服し、モデル化を容易にすると共に、演算処
理の負担を軽減することが出来る、離散事象シミュレー
タを提供することにある。Therefore, it is an object of the present invention to provide a discrete event simulator which can overcome the problems of the prior art described above, facilitate modeling, and reduce the load of arithmetic processing.
【0040】[0040]
【課題を解決するための手段】上記目的を達成するため
に、本発明は、離散的な事象を模擬する事象駆動型の離
散事象シミュレータにおいて、事象を特徴づける複数の
データ要素からなる事象データに加えて、その発生が他
の事象に影響すると定義付けられた、ある特定種類の事
象の事象データを格納する第1の記憶手段と、前記第1
の記憶手段にデータが格納されている事象のうち、次に
行うべき事象を選択する選択手段と、前記選択手段によ
り選択された事象が、前記ある特定種類の事象であるか
を識別する選別手段と、前記選択された事象が前記ある
特定種類の事象であると識別された場合、当該事象が行
うべき操作として予め設定されている操作に対応する処
理を、前記第1の記憶手段内の未選択の事象データに対
して行う操作手段と、前記選択された事象が前記ある特
定種類の事象以外の通常の事象であると識別された場
合、その事象のデータに応じて処理を実行する処理手段
とを有する。In order to achieve the above object, the present invention provides an event-driven discrete event simulator for simulating a discrete event with event data composed of a plurality of data elements characterizing an event. In addition, first storage means for storing event data of a certain type of event, the occurrence of which is defined to affect another event, and the first storage means.
Selecting means for selecting an event to be performed next among the events whose data is stored in the storing means, and selecting means for identifying whether the event selected by the selecting means is the certain kind of event. When the selected event is identified as the certain type of event, the process corresponding to the operation preset as the operation to be performed by the event is not performed in the first storage unit. Operation means for the selected event data and processing means for executing processing according to the data of the event when the selected event is identified as a normal event other than the certain type of event Have and.
【0041】また、上記発明において、前記ある特定種
類の事象とは、当該事象の発生場所で起きる事象の発生
を一時的に抑制させる割り込み実施事象が少なくとも含
まれるものであり、前記操作手段は、事象データを格納
する第2の記憶手段を備え、前記割り込み実施事象が選
択された場合には、前記第1の記憶手段内の事象データ
のうち、未選択で、かつ、当該割り込み実施事象の発生
場所と同じ場所で起こる事象に対応する事象データを、
前記第2の記憶手段へ移動するものでもよい。Further, in the above invention, the certain type of event includes at least an interrupt execution event for temporarily suppressing the occurrence of an event occurring at a place where the event occurs, and the operation means includes: A second storage unit for storing event data is provided, and when the interrupt execution event is selected, it is unselected from among the event data in the first storage unit and the occurrence of the interrupt execution event. Event data corresponding to events that occur at the same place as
It may be moved to the second storage means.
【0042】また、上記発明において、前記ある特定種
類の事象とは、当該事象との関連が規定されている事象
の発生時刻を変更させる発生時刻変更事象が少なくとも
含まれるものであり、前記操作手段は、前記発生時刻変
更事象が選択された場合には、前記第1の記憶手段内の
事象データのうち、未選択で、かつ、当該発生時刻変更
事象に関連する事象の発生時刻を変更するものでもよ
い。Further, in the above-mentioned invention, the certain type of event includes at least an occurrence time change event for changing an occurrence time of an event whose relation to the event is defined, and the operation means. When the occurrence time change event is selected, the occurrence time of the event that is not selected and is related to the occurrence time change event is selected from the event data in the first storage means. But it's okay.
【0043】また、上記発明において、前記ある特定種
類の事象とは、当該事象の発生場所で起きる事象を削除
するクリア事象が少なくとも含まれるものであり、前記
操作手段は、前記クリア事象が選択された場合には、前
記第1の記憶手段内の事象データのうち、未選択で、か
つ、当該クリア事象の発生場所で起きる事象の事象デー
タを削除するものでもよい。Further, in the above invention, the certain type of event includes at least a clear event for deleting an event occurring at a place where the event occurs, and the operation means selects the clear event. In this case, of the event data in the first storage means, the event data of an event which has not been selected and which occurs at the place where the clear event has occurred may be deleted.
【0044】また、上記発明において、当該シミュレー
タは、データフローダイアグラムによってシミュレーシ
ョン対象システムモデルを記述するものであり、前記記
述されたモデルに含まれている、事象の発生場所に対応
するモデル要素のうち、少なくとも1つのモデル要素
は、前記第1の記憶手段への事象の登録を指示するため
の入力点及び出力点の少なくとも一方に加え、前記ある
特定種類の事象の発生に対応して、当該モデル要素で発
生するその他の事象の事象データに対して行われるべき
操作を指示するための入力点をさらに有するものでもよ
い。Further, in the above-mentioned invention, the simulator describes a system model to be simulated by a data flow diagram, and among the model elements corresponding to the place where the event occurs, which is included in the model described above. , At least one model element, in addition to at least one of an input point and an output point for instructing registration of an event in the first storage means, in addition to the occurrence of the certain type of event, the model It may further have an input point for instructing an operation to be performed on the event data of other events occurring in the element.
【0045】また、上記発明において、前記ある特定種
類の事象とは、当該事象の発生が他の事象の発生に影響
するものであり、前記操作手段は、前記第1の記憶手段
内の未選択の事象データのうち、前記識別手段により識
別された前記ある特定種類の事象により影響される事象
データを特定し、当該特定された事象データを他の事象
データと識別するための識別子データを、当該特定され
た事象データに付加するものでもよい。Further, in the above-mentioned invention, the certain type of event means that the occurrence of the event affects the occurrence of another event, and the operation means is unselected in the first storage means. Identifier data for identifying the event data affected by the certain type of event identified by the identifying means, and identifying the identified event data from other event data. It may be added to the identified event data.
【0046】[0046]
【発明の実施の形態】本発明は、事象テーブルに既に登
録されてる他の事象に影響を与える、ある特定種類の事
象を新たに考慮すると共に、当該事象が発生した場合に
は、主にその事象が発生した場所(要素)で、発生する
予定の事象にだけ影響を及ぼすということに着目してな
されたものである。BEST MODE FOR CARRYING OUT THE INVENTION The present invention newly considers an event of a specific type that affects other events already registered in the event table, and mainly when the event occurs, This was done by paying attention to the fact that the place (element) where the event occurred affects only the event that is scheduled to occur.
【0047】本発明は、事象テーブルにより事象を管理
することでシミュレーションを行う離散事象シミュレー
タで、事象データを事象テーブルに登録する処理方法に
おいて、例えば、シミュレーションモデルを構成する場
所の1つに、そこで起きる事象の発生を一時的に抑制す
るか、あるいは、発生を遅延するための入力を設けると
共に、この入力へのトリガーが発生した時点で、その場
所で生起する予定の事象を本来の事象テーブルから全て
選択し、これを新たに設けた別のテーブルへ移動させ
る。The present invention is a discrete event simulator for performing simulation by managing events by an event table, and in a processing method for registering event data in the event table, for example, one of the places forming a simulation model An input is provided to temporarily suppress the occurrence of an event that occurs or to delay the occurrence of the event, and when a trigger for this input occurs, the event that will occur at that location is recorded from the original event table. Select all and move it to another newly created table.
【0048】さらに、本発明による離散事象シミュレー
タでは、例えば、復帰のための入力も上記場所に設けて
おき、その入力へのトリガーが発生した時点で、上記別
のテーブルからもう一度、そこで生起するはずであった
事象を、本来の事象テーブルへ戻す。Further, in the discrete event simulator according to the present invention, for example, an input for returning is also provided at the above-mentioned place, and when a trigger for the input occurs, it should occur again from the above-mentioned another table there. The event that was was returned to the original event table.
【0049】さらに、本発明による離散事象シミュレー
タでは、例えば、消去のための入力も同様に、上記場所
に設けておき、その入力へのトリガーが発生した時点
で、そこで生起するはずであった事象を、事象テーブル
から選択し、消去する。Further, in the discrete event simulator according to the present invention, for example, an input for erasing is also provided in the same place, and an event that should have occurred at the time when the input is triggered. Is deleted from the event table and deleted.
【0050】以上の構成によれば、モデルをデータフロ
ーモデルで素直に表現できるようになり、モデル化が容
易になる。すなわち、従来では、ある特殊な事象が発生
した場合、本来生起しなくなる事象も事象テーブル上に
既に登録されているために生起してしまう、という問題
の発生を予め想定して、再び同じ場所で生起できるよう
に、その事象に伴う情報や物(関連する情報)を再度同
じ場所に戻すフローをつけ加える必要があったが、これ
が不要となる。According to the above configuration, the model can be represented obediently by the data flow model, and the modeling becomes easy. That is, in the past, when a certain special event occurred, an event that would not originally occur will occur because it is already registered in the event table, and the problem will occur again in advance at the same place. It was necessary to add a flow to return the information and objects (related information) associated with the event to the same place again so that they could occur, but this is not necessary.
【0051】本発明を、段ボールをコンベアで搬送する
という処理に関するシミュレーションを例に挙げて、よ
り具体的に説明する。The present invention will be described more concretely by taking as an example a simulation relating to the process of carrying a corrugated board on a conveyor.
【0052】例えば、コンベア停止という事象が発生す
ると、本来、その上に乗っていた段ボールは、その位置
で停止しているべきである。しかし、従来の事象テーブ
ルを用いた離散事象シミュレータにおいて、コンベアを
単に時間遅れを表す場所としてモデル化していると、停
止したことに関わりなく、段ボールが出る事象が発生し
てしまう。For example, when an event of conveyor stop occurs, the corrugated cardboard originally placed on it should be stopped at that position. However, in the conventional discrete event simulator using the event table, if the conveyor is modeled as a place that simply represents a time delay, the event that the cardboard comes out will occur regardless of the stop.
【0053】そのため、故障の発生と同時に、上記時間
遅れを表す場所から出して、それまでの経過時間から残
りの搬送時間を計算し、その結果を物(段ボール)を表
す情報に追加して、一旦バッファに格納しておく。次
に、コンベア復帰の事象が発生した段階で、バッファに
入った物(段ボール)の情報を取り出し、コンベア復帰
事象の発生時刻をオフセットとして、残りの搬送時間を
足しあわせ、改めて、コンベアを表す、上記時間遅れを
表す場所にコンベアから出るという事象を格納する必要
がある。Therefore, at the same time as the occurrence of the failure, it is taken out of the place showing the above-mentioned time delay, the remaining transport time is calculated from the elapsed time until then, and the result is added to the information showing the object (cardboard), Store it in the buffer once. Next, when an event of conveyor return occurs, the information of the object (cardboard) in the buffer is taken out, the occurrence time of the conveyor return event is used as an offset, the remaining transfer time is added, and the conveyor is represented again, It is necessary to store the event of exiting the conveyor at the place indicating the time delay.
【0054】従来技術では、例えば図1に示すように、
上述した一連の機能をもつ要素一式をコンベアとして定
義しており、この場合、コンベアの主要な特性を表す時
間遅れ要素の他に、バッファや分岐、計算といった新た
なブロックを追加する必要が生じる。このため、例えモ
デルの特性上必要な、例えば残りの搬送時間の計算など
の計算処理が同じであっても、付随する処理のために、
シミュレーション全体での処理負荷が大きくなる。In the prior art, for example, as shown in FIG.
A set of elements having the above-described series of functions is defined as a conveyor. In this case, it is necessary to add new blocks such as a buffer, a branch, and a calculation in addition to a time delay element that represents the main characteristics of the conveyor. Therefore, even if the calculation process such as the calculation of the remaining transport time, which is necessary for the characteristics of the model, is the same, for the accompanying process,
The processing load on the entire simulation increases.
【0055】一方、本発明では、時間遅れ要素の機能と
して、そこで時間経過を待っている物(情報)に関わる
情報を別のテーブルに移動するなどの機能を、シミュレ
ーションの実行手段側に持たせているため、扱う場所の
数が増加せず、処理負荷が軽減される。さらに、本発明
で行われるテーブル操作は定型的であるため、処理をよ
り最適化し高速化を図ることができる。On the other hand, in the present invention, as the function of the time delay element, the simulation executing means has a function of moving information relating to an object (information) waiting for the passage of time to another table. Therefore, the number of locations handled does not increase and the processing load is reduced. Furthermore, since the table operation performed in the present invention is routine, it is possible to further optimize the processing and speed it up.
【0056】以下、本発明による離散事象シミュレータ
の一実施形態を説明する。なお、上述した従来技術と同
一の構成あるいは本発明において機能的に同等とみなす
構成については、同一の符号を付し詳細な説明を省略し
ている。An embodiment of the discrete event simulator according to the present invention will be described below. It should be noted that the same configurations as those of the above-described conventional technique or configurations that are considered to be functionally equivalent in the present invention are denoted by the same reference numerals and detailed description thereof is omitted.
【0057】最初、本実施形態のシミュレータの概要
を、図7〜図9を参照して説明する。ここで、図7は本
実施形態の構成を示すブロック図、図8は本実施形態に
おけるモデルの定義データ108の要部を示した説明
図、図9は本実施形態における事象テーブル106と被
割り込み事象テーブル107との説明図である。First, the outline of the simulator of this embodiment will be described with reference to FIGS. Here, FIG. 7 is a block diagram showing the configuration of the present embodiment, FIG. 8 is an explanatory view showing the main part of the model definition data 108 in the present embodiment, and FIG. 9 is the event table 106 and interrupted in the present embodiment. It is explanatory drawing with the event table 107.
【0058】本実施形態における離散事象シミュレータ
は、図7に示すように、従来技術と同様に、モデルの定
義データ108、事象テーブル106、事象選択手段1
01、割り込み外事象処理手段104、及び、シミュレ
ーション時刻更新手段102を有している。As shown in FIG. 7, the discrete event simulator in this embodiment has the model definition data 108, the event table 106, and the event selecting means 1 as in the conventional technique.
01, non-interruption event processing means 104, and simulation time updating means 102.
【0059】なお、割り込み外事象処理手段104は、
上記従来技術で事象処理手段1101(図3参照)と呼
んでいるものと、その処理内容は同じである。また、本
実施形態のモデルの定義データ108は、モデルを構成
する場所個々の特性が従来技術とは異なる。このため、
全体の機能としては同一でも、場所の接続関係を表す情
報は、上記従来技術とは異なるものである。The non-interruption event processing means 104 is
The content of the processing is the same as what is called the event processing means 1101 (see FIG. 3) in the above-mentioned conventional technology. Further, the model definition data 108 of the present embodiment is different from the related art in the characteristics of each of the places forming the model. For this reason,
Even though the entire function is the same, the information indicating the connection relation of places is different from the above-mentioned conventional technology.
【0060】本実施形態では、上述したある特定種類の
事象として、割り込み事象というものを設け、これに関
わる手段として、上記従来技術と共通の構成に加えて、
割り込み事象選別手段103、割り込み事象処理手段1
05、および、被割り込み事象テーブル107をさらに
有している。In the present embodiment, an interrupt event is provided as the above-mentioned specific type of event, and means related thereto is provided in addition to the configuration common to the above-mentioned prior art.
Interrupt event selection means 103, interrupt event processing means 1
05 and an interrupted event table 107 are further included.
【0061】上記従来技術の離散事象シミュレータで
は、カレントイベントチェーン310あるいはフューチ
ャーイベントチェーン320に対し、生起した事象の削
除と、新たな事象の登録しか行えない。一方、本実施形
態では、登録されている事象がまだ生起していない事象
を、カレントイベントチェーン310あるいはフューチ
ャーイベントチェーン320から除外する機能や、一旦
除外した事象を再登録できる機能を付加したことに特徴
がある。The above-mentioned conventional discrete event simulator can only delete the occurring event and register a new event with respect to the current event chain 310 or the future event chain 320. On the other hand, in the present embodiment, a function of excluding an event in which a registered event has not occurred yet from the current event chain 310 or the future event chain 320, and a function of re-registering an event once excluded are added. There are features.
【0062】上述したような機能を実現するための、本
実施形態の各手段の働きについて説明する。The operation of each means of this embodiment for realizing the above-mentioned functions will be described.
【0063】本実施形態では、新たに追加された割り込
み事象選別手段103が、事象選択手段101によって
選択された事象をチェックし、割り込み事象か否かを識
別する。割り込み事象でない場合には、従来と同様に処
理すればよく、割り込み外事象処理手段104へ選択さ
れた事象のデータを引き渡し、割り込み外事象処理手段
104により従来例通りに処理する。一方、割り込み事
象の場合には、割り込み事象処理手段105へ事象のデ
ータを引き渡して処理する。In the present embodiment, the newly added interrupt event selection means 103 checks the event selected by the event selection means 101 and identifies whether or not it is an interrupt event. If the event is not an interrupt event, the processing may be performed in the same manner as in the prior art, and the data of the selected event is delivered to the non-interruption event processing means 104, and the non-interruption event processing means 104 processes as in the conventional example. On the other hand, in the case of an interrupt event, the event data is delivered to the interrupt event processing means 105 for processing.
【0064】割り込み事象処理手段105における処理
には、大きく分けて、割り込み実施と割り込み解除との
2種類がある。割り込み実施事象の場合には、割り込み
の対象となる被割り込み事象を事象テーブル106から
全て選択し、これらを被割り込み事象テーブル107
(図9参照)に退避させる。これにより被割り込み事象
は、事象選択手段101により選択されることがなくな
る。また、割り込み解除事象の場合には、割り込み解除
の対象となる被割り込み解除事象を、被割り込み事象テ
ーブル107から全て選択し、これらを事象テーブル1
06に復帰させる。これにより被割り込み解除事象は、
再び、事象選択手段101により選択されることが可能
となる。The processing in the interrupt event processing means 105 is roughly divided into two types: interrupt execution and interrupt cancellation. In the case of an interrupt execution event, all interrupted events to be interrupted are selected from the event table 106, and these are selected.
(See FIG. 9). This prevents the event to be interrupted from being selected by the event selection means 101. Further, in the case of an interrupt release event, all interrupted release target events for interrupt release are selected from the interrupted event table 107, and these are selected in the event table 1.
Return to 06. As a result, the interrupted event is
Again, it becomes possible to be selected by the event selection means 101.
【0065】本実施形態においては、例えば図8に示す
ように、「停止する事象」も発生し得るように定義した
ベルトコンベアのモデルを定義する。このモデルは、上
記図1に示す従来技術のベルトコンベアのモデルに対応
するものである。In this embodiment, for example, as shown in FIG. 8, a model of the belt conveyor is defined so that a "stop event" can occur. This model corresponds to the model of the conventional belt conveyor shown in FIG.
【0066】本実施形態では、割り込み実施事象あるい
は割り込み解除事象を、上述したところのある特定種類
の事象として設定し、これらの事象に対応する入口を、
割り込み事象を発生させる場所に追加している。In this embodiment, an interrupt execution event or an interrupt release event is set as an event of a certain specific type as described above, and the entrances corresponding to these events are
It is added at the place where an interrupt event is generated.
【0067】例えば、従来技術でのDelay要素12
11(図1参照)に対して、本実施形態では、入口23
1、232が付加されているDelay要素211を設
けている。入口231は、Fail要素212によりト
リガーされるもので、割り込み実施事象に対応する。ま
た、入口232は、Repair要素213により取り
がーされるもので、割り込み解除事象に対応する。For example, the Delay element 12 in the prior art.
11 (see FIG. 1), in the present embodiment, the inlet 23
A Delay element 211 to which 1 and 232 are added is provided. The entrance 231 is triggered by the Fail element 212 and corresponds to an interrupt execution event. Further, the entrance 232 is removed by the Repair element 213 and corresponds to an interrupt release event.
【0068】本実施形態によれば、ユーザは、上記入口
231、232へのトリガーを設定することにより、割
り込み実施事象あるいは割り込み解除事象を発生させ、
登録済みの事象の発生を取りやめたり、再び発生できる
ようにしたりする事が可能になる。According to this embodiment, the user sets the trigger to the entrances 231 and 232 to generate the interrupt execution event or the interrupt cancellation event,
It is possible to cancel the occurrence of a registered event or to allow it to occur again.
【0069】したがって、例えば停止機能を持つコンベ
アのモデルを構築する場合に、図1のようなフィードバ
ックループ(1211〜1215)を構築せずに、上述
の入口231、232を持つディレイ要素211を用い
ることで、図8のように簡便にモデルを構築することが
可能となる。Therefore, for example, when constructing a model of a conveyor having a stop function, the delay element 211 having the above-mentioned inlets 231 and 232 is used without constructing the feedback loop (1211 to 1215) as shown in FIG. As a result, the model can be easily constructed as shown in FIG.
【0070】次に、上述の機能を実現するための、本実
施形態のシミュレータの各手段101〜105の処理フ
ローの一例について説明する。Next, an example of the processing flow of each means 101 to 105 of the simulator of this embodiment for realizing the above-mentioned functions will be described.
【0071】事象選択手段101は、上記図4で説明し
たような処理を実行するものであり、カレントイベント
チェーン310から生起すべき事象を選択し(ステップ
403)、その事象の削除を行う(ステップ406)。
この場合は、従来技術と同じ処理となる。The event selecting means 101 executes the processing described in FIG. 4, selects an event to occur from the current event chain 310 (step 403), and deletes the event (step 403). 406).
In this case, the processing is the same as in the prior art.
【0072】割り込み事象選別手段103は、その起動
時にシミュレーション未終了で、選択が完了した状態と
し、例えば図10に示すような処理を実行する。最初、
シミュレーションが終了したかの判定(ステップ50
1)、さらに、選択処理が完了しているかの判定(ステ
ップ502)を行う。シミュレーションが完了しておら
ず、選択処理が完了している場合には、ステップ503
へ進み、選択された事象が、通常の事象(割り込み外事
象)の発生に対応する入口・出口における事象である
か、割り込み事象に対応する入口おける事象であるかを
判定する。次に、この判定結果に応じた処理要求を、該
当する各手段へ送る(ステップ504、505)。The interrupt event selection means 103 sets the state in which the simulation is not completed and the selection is completed at the time of its activation, and executes the processing as shown in FIG. 10, for example. the first,
Determining whether the simulation has ended (step 50
1) Further, it is judged whether the selection process is completed (step 502). If the simulation is not completed and the selection process is completed, step 503.
Then, it is determined whether the selected event is an event at the entrance / exit corresponding to the occurrence of a normal event (non-interrupt event) or an event at the entrance corresponding to the interrupt event. Next, a processing request corresponding to this determination result is sent to each corresponding means (steps 504 and 505).
【0073】通常の事象の処理要求が出された場合に
は、割り込み外事象処理手段104が、例えば上記図5
に示すような処理を実行する。すなわち、その事象に関
わる処理を行って(ステップ603)、派生事象が有る
場合には(ステップ604)、その事象をカレントイベ
ントチェーン310あるいはフューチャーイベントチェ
ーン320へ登録する(ステップ605)。この場合
も、従来技術と同じ処理となる。When a normal event processing request is issued, the non-interruption event processing means 104, for example, as shown in FIG.
The following processing is executed. That is, the process related to the event is performed (step 603), and if there is a derived event (step 604), the event is registered in the current event chain 310 or the future event chain 320 (step 605). In this case as well, the processing is the same as in the prior art.
【0074】一方、割り込み(実施・解除)事象の処理
要求の場合には、割り込み事象処理手段105は、その
起動時に、シミュレーション未終了で、割り込み事象処
理要求ありの状態として、図11に示すような処理を実
行する。最初に、シミュレーションが終了しているかの
判定(ステップ701)、割り込み事象処理要求が有る
かの判定(ステップ702)を行った後、ステップ70
3へ進む。ステップ703では、要求の有った事象が、
割り込み実施に対応する入口における事象であるか、割
り込み解除に対応する入口における事象であるかを識別
する。最後に、この識別結果に応じて、割り込み実施処
理(ステップ704)あるいは割り込み解除処理(ステ
ップ705)を実行する。On the other hand, in the case of an interrupt (implementation / cancellation) event processing request, the interrupt event processing means 105, as shown in FIG. Performs a process. First, it is determined whether the simulation is completed (step 701) and whether there is an interrupt event processing request (step 702), and then step 70 is performed.
Proceed to 3. At step 703, the requested event is
The event at the entrance corresponding to the execution of the interrupt or the event at the entrance corresponding to the cancellation of the interrupt is identified. Finally, depending on the identification result, an interrupt execution process (step 704) or an interrupt release process (step 705) is executed.
【0075】次に、上記ステップ704の割り込み実施
処理の詳細例を、図12を用いて説明する。Next, a detailed example of the interrupt execution processing of step 704 will be described with reference to FIG.
【0076】割り込み事象に対応する入口231(図8
参照)にトリガーが発生した場合、すなわち、故障が生
じた場合には、これを契機に、まず、カレントイベント
チェーン310(図9参照)から、同じ場所で生起する
事象を選択する(ステップ801)。次に、これら選択
した事象を、割り込みイベントチェーン340へ移動さ
せる(ステップ802、803)。このとき、次に割り
込み解除事象が発生した段階で、前記選択した事象をす
ぐにカレントイベントチェーン310へ戻せるよう、割
り込み解除後の待ち時間を0にする(ステップ80
4)。The entrance 231 (FIG. 8) corresponding to the interrupt event
If a trigger occurs in (see), that is, if a failure occurs, first, an event that occurs at the same place is selected from the current event chain 310 (see FIG. 9) (step 801). . Next, these selected events are moved to the interrupt event chain 340 (steps 802 and 803). At this time, when the next interrupt release event occurs, the waiting time after the interrupt release is set to 0 so that the selected event can be immediately returned to the current event chain 310 (step 80).
4).
【0077】次に、フューチャーイベントチェーン32
0からも、同様にその場所で生起する事象を選択し(ス
テップ805)、これら選択した事象を、割り込みイベ
ントチェーン104へ移動する(ステップ806、80
7)。このとき、割り込み解除後の待ち時間341は、
以下の数1にしたがって決定する。Next, the future event chain 32
From 0 as well, events that similarly occur at that location are selected (step 805), and these selected events are moved to the interrupt event chain 104 (steps 806, 80).
7). At this time, the waiting time 341 after releasing the interrupt is
It is determined according to the following formula 1.
【0078】[0078]
【数1】割り込み解除後の待ち時間 =(遅延時間)+
(入った時刻)−(割り込み開始時刻) ここで、右辺第一項は「入る事象」が生起してから「出
る事象」が生起するまでの時間、すなわち事象に対応す
る処理の遅れ時間である。また、右辺第二項は、各々の
「出る事象」が登録された時刻、すなわち各々の「出る
事象」に対応する「入る事象」が発生した時刻である。
また、右辺第三項は、割り込み事象の生起した時刻であ
る。[Equation 1] Wait time after interrupt release = (delay time) +
(Entered time)-(Interruption start time) Here, the first term on the right side is the time from the occurrence of the "entered event" to the occurrence of the "exited event", that is, the delay time of the processing corresponding to the event. . The second term on the right side is the time at which each "exit event" is registered, that is, the time at which the "enter event" corresponding to each "exit event" occurs.
The third term on the right side is the time when the interrupt event occurred.
【0079】割り込み解除後の待ち時間341は、割り
込みイベントチェーン340の情報の一つとして、割り
込みイベントチェーン340へ事象を登録する時点で、
事象データに追加する(ステップ808)。The waiting time 341 after the interruption is released is one of the information of the interruption event chain 340, at the time of registering the event in the interruption event chain 340,
Add to the event data (step 808).
【0080】次に、上記ステップ705の割り込み解除
処理の詳細例を、図13を用いて説明する。Next, a detailed example of the interrupt canceling process in step 705 will be described with reference to FIG.
【0081】割り込み解除事象に対応する入口232に
トリガーが発生した時、これを契機に、まず、割り込み
イベントチェーン340から、同じ場所で生起する事象
を選択し(ステップ901)、割り込み解除後の待ち時
間が0の事象については、カレントイベントチェーン3
10に移動する(ステップ902)。When a trigger is generated at the entrance 232 corresponding to an interrupt release event, an event that occurs at the same place is first selected from the interrupt event chain 340 (step 901) with the trigger, and a wait after the interrupt is released. For events with time 0, the current event chain 3
Move to 10 (step 902).
【0082】次に、割り込み解除後の待ち時間が0でな
い事象については、その事象の発生する時刻を、割り込
み解除事象が生起した時刻と割り込み解除後待ち時間を
合計した時刻に設定し(ステップ904)、フューチャ
ーイベントチェーン320に移動する(ステップ90
3、905)。Next, for an event in which the wait time after the interrupt is released is not 0, the time at which the event occurs is set to the time when the interrupt release event occurs and the time after the interrupt is released (step 904). ), Move to the future event chain 320 (step 90)
3, 905).
【0083】以上の処理によれば、事象選択手段101
は、一時的に選択の対象外となっていた事象を、カレン
トイベントチェーン310またはフューチャーイベント
チェーン320から再度選択できるようになる。According to the above processing, the event selecting means 101
Allows the event that was temporarily out of the selection to be selected again from the current event chain 310 or the future event chain 320.
【0084】次に、上述した本実施形態の離散事象シミ
ュレータの各手段の処理をまとめた、全体処理の一例
を、図14のフローチャートに示す。Next, an example of the overall processing in which the processing of each means of the discrete event simulator of this embodiment described above is summarized is shown in the flowchart of FIG.
【0085】最初、本シミュレータの各手段の初期化を
行う(ステップ1401)。より具体的には、シミュレ
ーション対象システムモデルデータの決定、事象テーブ
ルへの初期事象の登録、シミュレーション終了時刻の設
定等を行う。First, each means of this simulator is initialized (step 1401). More specifically, it determines the simulation target system model data, registers the initial event in the event table, and sets the simulation end time.
【0086】次に、事象選択手段101が、事象テーブ
ルに登録された事象をサーチし、選択可能な事象を選択
する(ステップ1403)。選択が可能な場合には(ス
テップ1403でNo)、割り込み事象選別手段103
が、選択された事象が割り込み実施事象及び割り込み解
除事象のいずれかであるか、または、割り込み事象以外
の、通常の事象であるかを判定する(ステップ140
5、1407、1411)。Next, the event selecting means 101 searches the events registered in the event table and selects selectable events (step 1403). If the selection is possible (No in step 1403), the interrupt event selection means 103
Determines whether the selected event is an interrupt execution event or an interrupt release event or a normal event other than the interrupt event (step 140).
5, 1407, 1411).
【0087】割り込み実施事象である場合には(ステッ
プ1407でYes)、割り込み事象処理手段105
が、割り込みの発生した場所で発生する事象を、事象テ
ーブル106から取り出し、被割り込み事象テーブル1
07へ移動する(ステップ1409)。割り込み解除事
象である場合には(ステップ1411でYes)、割り
込み事象処理手段105が、被割り込み事象テーブル1
07から、割り込みの発生した場所で発生するはずであ
った事象を取り出し、事象テーブル106へ移動する
(ステップ1413)。通常の事象であった場合には、
割り込み外事象処理手段104が、シミュレーション対
象システムモデルに基づき、選択された事象に対応する
処理を実施する(ステップ1415)。If the event is an interrupt execution event (Yes in step 1407), the interrupt event processing means 105
, An event occurring at the place where the interrupt occurs, is extracted from the event table 106, and the interrupted event table 1
Move to 07 (step 1409). If it is an interrupt release event (Yes in step 1411), the interrupt event processing means 105 causes the interrupted event table 1
The event that should have occurred at the place where the interrupt occurred is taken out from 07 and moved to the event table 106 (step 1413). If it was a normal event,
The non-interruption event processing means 104 executes a process corresponding to the selected event based on the simulation target system model (step 1415).
【0088】さらに、派生事象があるかを判定し(ステ
ップ1417)、派生事象が有る場合には、割り込み外
事象処理手段104が、シミュレーション対象システム
モデルに基づき、派生事象を事象テーブル106に登録
する(ステップ1419)。Further, it is judged whether or not there is a derivative event (step 1417), and if there is a derivative event, the non-interruption event processing means 104 registers the derivative event in the event table 106 based on the simulation target system model. (Step 1419).
【0089】ステップ1403でYesの場合には、事
象選択手段101がシミュレーション時刻更新手段10
2にシミュレーション時刻更新を要求する(ステップ1
404)。この要求を受けて、シミュレーション時刻更
新手段102が、事象テーブル106に登録された事象
をサーチして、未選択で、かつ、最も早い時刻に発生す
る事象を選択可能とする(ステップ1406)。In the case of Yes at step 1403, the event selecting means 101 causes the simulation time updating means 10 to operate.
2 request simulation time update (step 1
404). In response to this request, the simulation time updating means 102 searches the events registered in the event table 106, and makes it possible to select an event that has not been selected and occurs at the earliest time (step 1406).
【0090】さらに、上記選択が不可能であるか、ある
いは、選択された事象の発生時刻がシミュレーション終
了時刻よりも後であるかを判定し(ステップ140
8)、そうである場合には、シミュレーションを終了す
る。それ以外の場合には(ステップ1408でNo)、
シミュレーション時刻更新手段102がシミュレーショ
ン時刻を更新し(ステップ1410)、その更新処理の
完了を事象選択手段101へ通知する(ステップ141
2)。Further, it is judged whether the above selection is impossible or the occurrence time of the selected event is after the simulation end time (step 140).
8) If yes, end the simulation. Otherwise (No in step 1408),
The simulation time updating means 102 updates the simulation time (step 1410) and notifies the event selecting means 101 of the completion of the updating processing (step 141).
2).
【0091】本実施形態によれば、ある特殊な事象の発
生により、元々生起する予定であった事象が、一時的に
生起しなくなるような場合に、再び同じ場所(要素)で
生起できるように、その事象に伴う情報や物(関連する
情報)を、再度同じ場所(要素)に戻すフローをつけ加
える必要がなくなる。このため、モデルをデータフロー
モデルでより素直に表現できるようになり、モデル化が
容易になるという効果がある。According to the present embodiment, when an event originally scheduled to occur due to the occurrence of a special event does not occur temporarily, it can be generated again at the same place (element). , It becomes unnecessary to add a flow for returning the information or the object (related information) associated with the event to the same place (element) again. For this reason, the model can be more straightforwardly expressed by the data flow model, and there is an effect that the modeling becomes easy.
【0092】さらに、本実施形態によれば、シミュレー
タを構成する各手段は、従来技術で用いたようなフロー
を構成する場所や、そこでの事象の発生を扱わなくてす
むため、シミュレーション処理の負荷が少なくて済み、
シミュレーション処理を高速化できるという効果があ
る。Further, according to the present embodiment, each means constituting the simulator does not have to deal with the place forming the flow and the occurrence of the event there, which is used in the conventional technique. Is less,
This has the effect of speeding up the simulation process.
【0093】次に、本発明による離散事象シミュレータ
の他の実施形態について、図15を参照して説明する。Next, another embodiment of the discrete event simulator according to the present invention will be described with reference to FIG.
【0094】本実施形態では、他の事象に影響を与え
る、ある特定種類の事象として、「クリアする事象」を
新たに設け、モデルを定義する上では、図15に示すよ
うに、この事象に対応する入口1504を、クリア機能
を持つべき場所(要素A)1501に加える。さらに、
モデル定義情報では、その入口1504とCLEAR要
素1505等の他の場所との接続関係も設定しておく。In the present embodiment, as an event of a certain specific type that affects other events, an "event to be cleared" is newly provided, and in defining the model, this event is defined as shown in FIG. A corresponding entrance 1504 is added to the place (element A) 1501 that should have the clear function. further,
In the model definition information, the connection relationship between the entrance 1504 and other places such as the CLEAR element 1505 is also set.
【0095】本実施形態において、クリアという事象が
生起した場合は、カレントイベントチェーン310ある
いはフューチャーイベントチェーン320から、その場
所で生起するはずの事象を全て選択し、これを削除す
る。In the present embodiment, when a clear event occurs, all the events that should occur at that location are selected from the current event chain 310 or the future event chain 320 and are deleted.
【0096】本実施形態によれば、事象選択手段101
が、新たな事象をカレントイベントチェーン310また
はフューチャーイベントチェーン320から選択する場
合、割り込みが起きた場所で、生起するべく登録された
事象は、選択されなくなる。上述したような「クリアす
る事象」を用いることで、例えば、所定のパラメータを
記憶し、これに応じて動作するような機械要素のリセッ
ト動作を模擬することができる。より具体的には、情報
通信システムの場合に、事象に関わるデータ、例えばプ
リンタサーバへスプールされたデータを、一時記憶装置
に蓄えるシステムの電源故障等の動作を模擬することが
出来る。According to this embodiment, the event selection means 101
However, when selecting a new event from the current event chain 310 or the future event chain 320, the event registered to occur at the place where the interrupt occurred will no longer be selected. By using the "clearing event" as described above, for example, it is possible to store a predetermined parameter and simulate a reset operation of a mechanical element that operates according to this. More specifically, in the case of an information communication system, it is possible to simulate an operation such as a power failure of a system that stores data related to an event, for example, data spooled to a printer server in a temporary storage device.
【0097】次に、本発明による離散事象シミュレータ
のさらに他の実施形態について、図16を参照して説明
する。Next, still another embodiment of the discrete event simulator according to the present invention will be described with reference to FIG.
【0098】本実施形態では、上記図7に示す実施形態
において、割り込みイベントチェーン340を設けず、
その代わりに、図16に示すように、カレントイベント
チェーン310とフューチャーイベントチェーン320
に、割り込み事象かどうかを識別するためのフラッグ領
域311、325をそれぞれ設ける。In this embodiment, the interrupt event chain 340 is not provided in the embodiment shown in FIG.
Instead, as shown in FIG. 16, a current event chain 310 and a future event chain 320
Are provided with flag areas 311 and 325 for identifying whether the event is an interrupt event.
【0099】本実施形態では、割り込み実施事象が選択
された場合には、それに対応する被割り込み事象を割り
込みイベントチェーン340へ移動する代わりに、当該
被割り込み事象のフラッグ領域に、割り込み事象フラッ
グを立てる。また、同様に、割り込み解除事象が選択さ
れた場合には、割り込みイベントチェーン340から、
カレントイベントチェーン310またはフューチャーイ
ベントチェーン320に戻す代わりに、上記割り込み事
象フラッグを下ろす。In the present embodiment, when an interrupt execution event is selected, an interrupt event flag is set in the flag area of the interrupted event, instead of moving the interrupted event corresponding to it to the interrupt event chain 340. . Similarly, when the interrupt release event is selected, from the interrupt event chain 340,
Instead of returning to the current event chain 310 or future event chain 320, the interrupt event flag is cleared.
【0100】本実施形態によれば、事象選択手段101
は、カレントイベントチェーン310またはフューチャ
ーイベントチェーン320から新しく実行する事象を選
択する際に、このフラッグを見て、フラッグが立ってい
れば、選択しないようにする。さらに、割り込み事象フ
ラッグを下ろす場合は、カレントイベントチェーン31
0上の事象であれば、その発生時刻を、その時点の時刻
とし、また、フューチャーイベントチェーン320上の
事象であれば、上記数1に従って得た値を、その時点の
時刻に足した値に設定する。According to this embodiment, the event selection means 101
Sees this flag when selecting an event to be newly executed from the current event chain 310 or the future event chain 320, and if the flag is set, does not select it. Furthermore, when the interrupt event flag is cleared, the current event chain 31
If it is an event on 0, the occurrence time is the time at that time, and if it is an event on the future event chain 320, the value obtained according to the above equation 1 is added to the time at that time. Set.
【0101】本実施形態によれば、割り込みイベントチ
ェーン340を用いずに、上記図1の実施形態により得
られる効果と同様な効果を得ることができる。According to this embodiment, the same effect as that obtained by the embodiment of FIG. 1 can be obtained without using the interrupt event chain 340.
【0102】[0102]
【発明の効果】本発明によれば、モデル化を容易にする
と共に、演算処理の負担を軽減することが出来る、離散
事象シミュレータを提供することが可能となる。According to the present invention, it is possible to provide a discrete event simulator which can facilitate modeling and reduce the load of arithmetic processing.
【図1】従来のシミュレータのモデル定義の一例を示す
説明図。FIG. 1 is an explanatory diagram showing an example of a model definition of a conventional simulator.
【図2】従来の事象テーブルの構成例を示す説明図。FIG. 2 is an explanatory diagram showing a configuration example of a conventional event table.
【図3】従来のシミュレータの構成の一例を示すブロッ
ク図。FIG. 3 is a block diagram showing an example of the configuration of a conventional simulator.
【図4】事象選択手段を実現するプログラムの一例を示
すフローチャート。FIG. 4 is a flowchart showing an example of a program that realizes an event selection unit.
【図5】事象処理手段を実現するプログラムの一例を示
すフローチャート。FIG. 5 is a flowchart showing an example of a program that realizes an event processing unit.
【図6】シミュレーション時刻更新手段を実現するプロ
グラムの一例を示すフローチャート。FIG. 6 is a flowchart showing an example of a program that realizes a simulation time updating unit.
【図7】本発明の一実施形態におけるシミュレータの基
本構成及び処理を示すブロック図。FIG. 7 is a block diagram showing a basic configuration and processing of a simulator according to an embodiment of the present invention.
【図8】図7の実施形態におけるモデルの定義を示す説
明図。FIG. 8 is an explanatory diagram showing the definition of a model in the embodiment of FIG.
【図9】図7の実施形態における事象テーブルと被割り
込み事象テーブルの構成例を示す説明図。9 is an explanatory diagram showing a configuration example of an event table and an interrupted event table in the embodiment of FIG.
【図10】割り込み事象選別手段を実現するプログラム
の一例を示すフローチャート。FIG. 10 is a flowchart showing an example of a program that realizes interrupt event selection means.
【図11】割り込み事象処理手段を実現するプログラム
の一例を示すフローチャート。FIG. 11 is a flowchart showing an example of a program that realizes an interrupt event processing unit.
【図12】割り込み実施処理の一例を示すフローチャー
ト。FIG. 12 is a flowchart showing an example of interrupt execution processing.
【図13】割り込み解除処理の一例を示すフローチャー
ト。FIG. 13 is a flowchart showing an example of interrupt release processing.
【図14】図7の実施形態の全体処理の概要を示すフロ
ーチャート。FIG. 14 is a flowchart showing an overview of overall processing of the embodiment of FIG.
【図15】本発明の他の実施形態におけるモデルの定義
を示す説明図。FIG. 15 is an explanatory diagram showing the definition of a model according to another embodiment of the present invention.
【図16】本発明の他の実施形態における事象テーブル
と被割り込み事象テーブルの構成例を示す説明図。FIG. 16 is an explanatory diagram showing a configuration example of an event table and an interrupted event table in another embodiment of the present invention.
101…事象選択手段、102…シミュレーション時刻
更新手段、103…割り込み事象選別手段、104…割
り込み外事象処理手段、105…割り込み事象処理手
段、106…事象テーブル、107…被割り込み事象テ
ーブル、310…カレントイベントチェーン、320…
フューチャーイベントチェーン、340…割り込みイベ
ントチェーン。101 ... Event selection means, 102 ... Simulation time updating means, 103 ... Interruption event selection means, 104 ... Out-of-interruption event processing means, 105 ... Interruption event processing means, 106 ... Event table, 107 ... Interrupted event table, 310 ... Current Event chain, 320 ...
Future event chain, 340 ... Interrupt event chain.
Claims (10)
事象シミュレータにおいて、 事象を特徴づける複数のデータ要素からなる事象データ
に加えて、その発生が他の事象に影響すると定義付けら
れた、ある特定種類の事象の事象データを格納する第1
の記憶手段と、 前記第1の記憶手段にデータが格納されている事象のう
ち、次に行うべき事象を選択する選択手段と、 前記選択手段により選択された事象が、前記ある特定種
類の事象であるかを識別する選別手段と、 前記選択された事象が前記ある特定種類の事象であると
識別された場合、当該事象が行うべき操作として予め設
定されている操作に対応する処理を、前記第1の記憶手
段内の未選択の事象データに対して行う操作手段と、 前記選択された事象が前記ある特定種類の事象以外の通
常の事象であると識別された場合、その事象のデータに
応じて処理を実行する処理手段とを有することを特徴と
する事象駆動型の離散事象シミュレータ。1. An event-driven discrete event simulator for simulating a discrete event, in addition to event data consisting of a plurality of data elements characterizing an event, its occurrence is defined to affect other events. First to store event data for a particular type of event
Storage means, selecting means for selecting an event to be performed next among the events in which data is stored in the first storage means, and the event selected by the selecting means is the certain type of event. If the selected event is identified as the certain type of event, a process corresponding to an operation preset as an operation to be performed by the event, Operation means for performing unselected event data in the first storage means, and when the selected event is identified as a normal event other than the certain type of event, the event data is An event-driven discrete event simulator, comprising: a processing unit that executes processing according to the event.
きる他の事象の発生を制限する割り込み実施事象が少な
くとも含まれるものであり、 前記操作手段は、事象データを格納する第2の記憶手段
を備え、前記割り込み実施事象が選択された場合には、
前記第1の記憶手段内の事象データのうち、未選択で、
かつ、当該割り込み実施事象の発生場所と同じ場所で起
こる事象に対応する事象データを、前記第2の記憶手段
へ移動することを特徴とする事象駆動型の離散事象シミ
ュレータ。2. The event according to claim 1, wherein the certain type of event includes at least an interrupt execution event that restricts the occurrence of another event that occurs at the place where the event occurs, and the operation unit includes: A second storage unit for storing event data is provided, and when the interrupt execution event is selected,
Of the event data in the first storage means, unselected,
An event-driven discrete event simulator, wherein event data corresponding to an event that occurs at the same place as the occurrence place of the interrupt execution event is moved to the second storage means.
よる抑制を解除させる割り込み解除事象がさらに含まれ
るものであり、 前記操作手段は、前記割り込み解除事象が選択された場
合には、前記第2の記憶手段に移動された事象データ
を、前記第1の記憶手段上に移動することを特徴とする
事象駆動型の離散事象シミュレータ。3. The interrupt according to claim 2, wherein the certain type of event further includes an interrupt release event for releasing suppression by the interrupt execution event, and the operation unit selects the interrupt release event. The event driven discrete event simulator is characterized in that, in the case of being performed, the event data moved to the second storage means is moved to the first storage means.
前記第2の記憶手段へ移動する際には、前記割り込み実
施事象が生起した時刻に応じて、当該移動する事象デー
タの示す発生時刻を変更することを特徴とする事象駆動
型の離散事象シミュレータ。4. The operation means according to claim 3, wherein the operation means moves the event data in the first storage means to the second storage means in accordance with a time at which the interrupt execution event occurs. An event-driven discrete event simulator characterized by changing an occurrence time indicated by the moving event data.
されている事象の発生時刻を変更させる発生時刻変更事
象が少なくとも含まれるものであり、 前記操作手段は、前記発生時刻変更事象が選択された場
合には、前記第1の記憶手段内の事象データのうち、未
選択で、かつ、当該発生時刻変更事象に関連する事象の
発生時刻を変更することを特徴とする事象駆動型の離散
事象シミュレータ。5. The operation according to claim 1, wherein the certain type of event includes at least an occurrence time change event that changes an occurrence time of an event whose relationship with the event is defined. The means, when the occurrence time change event is selected, changes the occurrence time of an event that is not selected from the event data in the first storage means and is associated with the occurrence time change event. An event-driven discrete event simulator characterized by the following.
きる事象を削除するクリア事象が少なくとも含まれるも
のであり、 前記操作手段は、前記クリア事象が選択された場合に
は、前記第1の記憶手段内の事象データのうち、未選択
で、かつ、当該クリア事象の発生場所で起きる事象の事
象データを削除することを特徴とする事象駆動型の離散
事象シミュレータ。6. The event according to claim 1, wherein the certain type of event includes at least a clear event that deletes an event occurring at a place where the event occurs, and the operation unit selects the clear event. In the event that the event occurs, the event data of the event which has not been selected and which occurs at the place where the clear event occurs is deleted from the event data in the first storage means. Event simulator.
てシミュレーション対象システムモデルを記述するもの
であり、 前記記述されたモデルに含まれている、事象の発生場所
に対応するモデル要素のうち、少なくとも1つのモデル
要素は、前記第1の記憶手段への事象の登録を指示する
ための入力点及び出力点の少なくとも一方に加え、前記
ある特定種類の事象の発生に対応して、当該モデル要素
で発生するその他の事象の事象データに対して行われる
べき操作を指示するための入力点をさらに有することを
特徴とする事象駆動型の離散事象シミュレータ。7. The simulator according to claim 1, wherein the simulation target system model is described by a data flow diagram, and a model element corresponding to an occurrence location of an event included in the described model is included. Among them, at least one model element corresponds to at least one of an input point and an output point for instructing registration of an event in the first storage means, and corresponds to the occurrence of the certain type of event. An event-driven discrete event simulator, further comprising an input point for instructing an operation to be performed on event data of other events occurring in model elements.
れを模擬するモデル要素が少なくとも含まれているもの
であり、 前記時間遅れを模擬するモデル要素は、当該モデル要素
で発生する事象データに対する操作として、当該モデル
要素の機能の停止及びその解除を指示するための入力点
が付加されているものであることを特徴とする事象駆動
型の離散事象シミュレータ。8. The simulation target system model according to claim 7, wherein the simulation target system model includes at least a model element that simulates a time delay, and the model element that simulates the time delay occurs in the model element. An event-driven discrete event simulator characterized in that an input point for instructing stop and release of the function of the model element is added as an operation to the event data to be performed.
象の発生に影響するものであり、 前記操作手段は、前記第1の記憶手段内の未選択の事象
データのうち、前記識別手段により識別された前記ある
特定種類の事象により影響される事象データを特定し、
当該特定された事象データを他の事象データと識別する
ための識別子データを、当該特定された事象データに付
加することを特徴とする事象駆動型の離散事象シミュレ
ータ。9. The event according to claim 1, wherein the certain type of event means that the occurrence of the event affects the occurrence of another event, and the operation unit is not yet stored in the first storage unit. Of the selected event data, the event data affected by the certain type of event identified by the identifying means is specified,
An event-driven discrete event simulator characterized by adding identifier data for distinguishing the specified event data from other event data to the specified event data.
されたシミュレーション対象システムモデルを用いる事
象駆動型の離散事象シミュレータにおいて、 事象を特徴づける複数のデータ要素からなる事象データ
に加えて、その発生が他の事象に影響すると定義付けら
れた、ある特定種類の事象の事象データを格納する記憶
手段を備え、 前記記述されたモデルには、事象の発生場所に対応する
モデル要素を含むものであり、 前記モデル要素のうちの少なくとも1つは、前記記憶手
段への事象の登録を指示するための入力点及び出力点の
少なくとも一方に加え、前記ある特定種類の事象の発生
に対応して、当該モデル要素で発生するその他の事象の
事象データに対して行われるべき操作を指示するための
入力点をさらに有することを特徴とする事象駆動型の離
散事象シミュレータ。10. In an event-driven discrete event simulator using a simulation target system model described by a data flow diagram, in addition to event data consisting of a plurality of data elements that characterize an event, its occurrence to another event. A storage unit for storing event data of an event of a certain specific type, which is defined as an effect, is included, and the described model includes a model element corresponding to the occurrence location of the event. At least one of them, in addition to at least one of an input point and an output point for instructing the registration of an event in the storage means, occurs in the model element in response to the occurrence of the certain type of event. Characterized by further having an input point for instructing an operation to be performed on the event data of other event Discrete event simulator of event-driven.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4919596A JPH09245014A (en) | 1996-03-06 | 1996-03-06 | Discrete event simulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4919596A JPH09245014A (en) | 1996-03-06 | 1996-03-06 | Discrete event simulator |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09245014A true JPH09245014A (en) | 1997-09-19 |
Family
ID=12824235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4919596A Pending JPH09245014A (en) | 1996-03-06 | 1996-03-06 | Discrete event simulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09245014A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002001342A1 (en) * | 2000-06-29 | 2002-01-03 | Inus Technology Inc. | Modeling method for discrete event system using event flow chart |
-
1996
- 1996-03-06 JP JP4919596A patent/JPH09245014A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002001342A1 (en) * | 2000-06-29 | 2002-01-03 | Inus Technology Inc. | Modeling method for discrete event system using event flow chart |
US7124406B2 (en) | 2000-06-29 | 2006-10-17 | Inus Technology Inc. | Modeling method for discrete event system using event flow chart |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Schriber et al. | Inside simulation software: how it works and why it matters | |
US6876894B1 (en) | Forecast test-out of probed fabrication by using dispatching simulation method | |
US6097885A (en) | Digital system simulation | |
US5467462A (en) | Event driven logic simulator for partial simulation | |
JP2550063B2 (en) | Distributed processing system simulation method | |
CN106611084B (en) | Design method and device of integrated circuit | |
CN109901818B (en) | System and method for software architecture design | |
Gabrel et al. | Optimal and automatic transactional web service composition with dependency graph and 0-1 linear programming | |
JP2002334194A (en) | Method, system and program for providing selective command control in workflow management system | |
Petriu et al. | Analysing software requirements specifications for performance | |
Uyeno et al. | PASSIM: a discrete-event simulation package for PASCAL | |
Schriber et al. | How discrete-event simulation software works | |
JPH05233590A (en) | Production system simulator device using petri net | |
JP5160773B2 (en) | Information processing apparatus and method | |
JPH09245014A (en) | Discrete event simulator | |
Schriber et al. | Inside discrete-event simulation software: how it works and why it matters | |
JP2003044526A (en) | Method and program for design analysis | |
JP2003208323A (en) | Method, system and program for executing batch job | |
JP2002055717A (en) | Failure diagnostic system | |
Schriber et al. | Inside discrete-event simulation software: How it works and why it matters | |
JPH07160537A (en) | Simulator | |
JP2715647B2 (en) | Train operation prediction simulation device | |
Schriber et al. | Inside simulation software: how it works and why it matters (1994) | |
Nakamura et al. | An iterative linear relaxation and tabu search approach to minimum initial marking problems of timed marked graphs | |
Greenberger et al. | On-line simulation in the OPS system |