JPH1165637A - Simulation device and method therefor and record medium for program for simulation - Google Patents
Simulation device and method therefor and record medium for program for simulationInfo
- Publication number
- JPH1165637A JPH1165637A JP23027197A JP23027197A JPH1165637A JP H1165637 A JPH1165637 A JP H1165637A JP 23027197 A JP23027197 A JP 23027197A JP 23027197 A JP23027197 A JP 23027197A JP H1165637 A JPH1165637 A JP H1165637A
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- event
- activity
- extracted
- time
- 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.)
- Withdrawn
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 title claims description 40
- 230000000694 effects Effects 0.000 description 90
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000036962 time dependent Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- NLZUEZXRPGMBCV-UHFFFAOYSA-N Butylhydroxytoluene Chemical compound CC1=CC(C(C)(C)C)=C(O)C(C(C)(C)C)=C1 NLZUEZXRPGMBCV-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Testing And Monitoring For Control Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、シミュレーション
装置およびその方法、並びにシミュレーションを行うた
めのプログラムを記録したコンピュータで読み取り可能
な記録媒体に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a simulation apparatus and method, and a computer-readable recording medium on which a program for performing a simulation is recorded.
【0002】[0002]
【従来の技術】工場やプラントなどの挙動を模擬するた
めにシミュレーションが行われることがある。シミュレ
ーションを行うことにより、例えば工場等の稼動効率を
予測して、その結果を工程等に反映することで効率の向
上を図ることができる。従来、このようなシミュレーシ
ョンの手法として様々な手法が提案されている。これを
大きく分けると、時間的に連続的な挙動を模擬する連続
系モデルと、時間的に離散的な挙動を模擬する離散系モ
デルとがある。連続系モデルは、一定の時間間隔で系の
時刻を進めるモデルで系の振舞いをとらえようとするも
のである。2. Description of the Related Art Simulations are sometimes performed to simulate the behavior of factories and plants. By performing a simulation, for example, the operating efficiency of a factory or the like is predicted, and the result is reflected in a process or the like, so that the efficiency can be improved. Conventionally, various methods have been proposed as such a simulation method. When roughly divided, there are a continuous system model that simulates a temporally continuous behavior and a discrete system model that simulates a temporally discrete behavior. The continuous system model attempts to capture the behavior of the system by a model that advances the time of the system at regular time intervals.
【0003】これに対して離散系モデルは、非定期的に
発生する事象を中心に見ることによって系の振舞いをと
らえようとするものである。この離散系モデルには、例
えば、スリーフェーズアプローチ、イベントアプローチ
など様々なシミュレーション手法が存在し、それらの手
法に応じて、上記事象はアクティビティ或いはイベント
と呼ばれる。[0003] On the other hand, the discrete system model attempts to capture the behavior of the system by focusing on events that occur irregularly. In this discrete model, for example, there are various simulation techniques such as a three-phase approach and an event approach, and the above-mentioned event is called an activity or an event depending on the technique.
【0004】上記スリーフェーズアプローチは、時刻の
変化によって起こる時間依存のアクティビティ(Bounda
ry Activity )を実施するフェーズ(以下、Bフェーズ
と呼ぶ)と、系の状況変化によって起こる系依存のアク
ティビティ(Conditional Activity)を実施するフェー
ズ(以下、Cフェーズと呼ぶ)と、系の時刻を進めるフ
ェーズ(以下、Aフェーズと呼ぶ)とを有し、B→C→
Aの順に各フェーズを繰り返し実施することにより、離
散事象のシミュレーションを実行する。[0004] The three-phase approach is based on a time-dependent activity (Bounda) caused by a change in time.
ry Activity) (hereinafter referred to as B phase), a phase for performing a system dependent activity (Conditional Activity) caused by a change in the system status (hereinafter referred to as C phase), and the system time is advanced. (Hereinafter referred to as A phase), and B → C →
By repeating each phase in the order of A, a discrete event simulation is executed.
【0005】例えば、洗車場で車を洗うという作業を考
えた場合、洗車が10分で終わるとすると、「洗車を開
始してから10分経ったときに洗車場から車を出す」と
いう事象は系の時刻変化に応じて行うことであるので、
Boundary Activity (Bフェーズ)と考えることができ
る。通常、Bフェーズは、事象リストにあらかじめ登録
されている事象を抽出(実行)することによって行われ
る。[0005] For example, in the case where a car is washed in a car wash, if the car wash is completed in 10 minutes, the phenomenon of "taking the car out of the car wash 10 minutes after the start of the car wash" is as follows. Since it is performed according to the time change of the system,
It can be considered a Boundary Activity (B phase). Normally, the B phase is performed by extracting (executing) events registered in the event list in advance.
【0006】Bフェーズを実行すると、それによって系
の状況に変化が生じることがあるので、次にCフェーズ
を実行する。例えば、「洗車場が空いていれば車を入れ
る」という事象は系の状況に応じて行うことであるの
で、Conditional Activity(Cフェーズ)と考えること
ができる。次に、Aフェーズでは、事象リストに登録さ
れている全事象の中で現時点から一番早く起こる事象ま
で時刻を進める処理を行う。[0006] When the B phase is executed, the state of the system may be changed thereby, so that the C phase is executed next. For example, since the event of “enter a car if the car wash is free” is performed according to the status of the system, it can be considered as a conditional activity (C phase). Next, in the A phase, a process is performed to advance the time from the present time to the earliest event among all the events registered in the event list.
【0007】また、上記イベントアプローチは、時間依
存のイベントが多く含まれた系のシミュレーションに有
効な手法である。例えば、電車の発着時刻問題を考える
場合は、各駅間における電車の走行時間はあらかじめ分
かっており、その走行時間のみをトリガーとして系全て
の状態が決まるので、イベントアプローチを用いたシミ
ュレーションを行うことが可能である。The above-described event approach is an effective technique for simulating a system including many time-dependent events. For example, when considering the problem of the arrival and departure time of a train, the travel time of the train between stations is known in advance, and only the travel time is used as a trigger to determine the state of the entire system, so that simulation using the event approach can be performed. It is possible.
【0008】このように、シミュレーションの手法とし
て連続系モデルや離散系モデルなどの様々な手法が存在
するが、これらの手法は、どういう系を扱うかによって
何れかが選択される。例えば、物の細かい温度変化を追
うシミュレーションなら連続系モデル、電車の発着時刻
のシミュレーションのように状況依存のイベントが少な
い系にはイベントアプローチの離散系モデル、状況依存
のイベントが多くより複雑な系にはスリーフェーズアプ
ローチの離散系モデルといった具合である。As described above, there are various techniques such as a continuous system model and a discrete system model as simulation methods, and one of these methods is selected depending on what kind of system is handled. For example, a continuous system model for simulations that follow minute temperature changes of objects, a discrete system model of the event approach for systems with few situation-dependent events such as simulation of train departure and arrival times, and a more complex system with many situation-dependent events Is a discrete system model of the three-phase approach.
【0009】[0009]
【発明が解決しようとする課題】しかしながら、上述し
た連続系モデルでは、シミュレーションの対象とする系
内の全ての構成要素について、シミュレーションのため
に定められた条件を満たすかどうかを1つ1つ調べ、満
たすものの状態変数を変化させるという処理をモデル上
の一定の時間間隔で必ず行っていくようになっていた。
そのため、特に大きなモデル系を扱う場合には、条件を
満たす要素の探索や状態変数の変更のための計算時間が
膨大となり、シミュレーションに多くの処理時間がかか
ってしまっていた。However, in the above-described continuous system model, it is checked whether all the components in the system to be simulated satisfy the conditions set for the simulation one by one. However, the process of changing the state variable of the satisfying condition is always performed at regular time intervals on the model.
Therefore, especially when dealing with a large model system, the calculation time for searching for an element that satisfies the condition and changing the state variable becomes enormous, and a large amount of processing time is required for the simulation.
【0010】一方、離散系モデルの場合は、対象とする
系が完全に離散的事象だけで表現できる系であれば特に
問題なくシミュレーションを行うことができる。ところ
が、例えば製鉄処理で、スラブの圧延工程を考えてみる
と、スラブを複数の移動テーブルなどで運んでいる時
に、工場内の状況によって、スラブがある移動テーブル
上で長く滞留する場合がある。この場合、滞留はある時
点から始まり、ある時間持続する。つまり、この滞留し
ているときだけ連続系となる。そして、ある一定の滞留
時間が経過した場合には、他のスラブを優先して処理す
るために、その移動テーブルから滞留していたスラブを
クレーンで下ろすことがある。つまり、事前に予定して
いたスラブの運搬ルートを移動テーブル上での滞留時間
によって変更する作業が行われている。On the other hand, in the case of a discrete system model, simulation can be performed without any particular problem as long as the target system can be completely represented by only discrete events. However, considering a slab rolling process in, for example, an iron making process, when a slab is carried on a plurality of moving tables or the like, the slab may stay for a long time on a certain moving table depending on the situation in a factory. In this case, the dwell starts at a certain point and lasts for a certain time. That is, a continuous system is obtained only during the stay. Then, when a certain residence time has elapsed, the slab that has been retained from the moving table may be lowered by a crane in order to preferentially treat another slab. In other words, the work of changing the slab transport route scheduled in advance based on the residence time on the moving table is being performed.
【0011】このような離散的な事象が多く発生するな
かで部分的に連続的な事象が発生するような系を離散系
モデルだけでシミュレートすることは困難である。逆に
連続系モデルだけでシミュレートすると処理に時間がか
かり過ぎるという問題があった。何らかの系のシミュレ
ータを構築しようとする場合、その系は連続的に状態が
変化する部分と、離散的に状態が変化する部分とが混在
したものであることが大半であることに鑑みると、上述
のような連続系モデルおよび離散系モデルの何れも、処
理時間やシミュレーションの正確性からみて必ずしも最
適なものとは言えなかった。[0011] It is difficult to simulate a system in which a continuous event occurs partially among a large number of such discrete events using only a discrete system model. Conversely, if the simulation is performed only with the continuous system model, there is a problem that the processing takes too much time. When trying to build a simulator for some system, the above-mentioned system is often considered to be a mixture of a part where the state changes continuously and a part where the state changes discretely. Neither the continuous system model nor the discrete system model described above is necessarily necessarily optimal in terms of processing time and simulation accuracy.
【0012】本発明はこのような実情に鑑みて成された
ものであり、連続的に状態が変化する部分と離散的に状
態が変化する部分とが混在したどのような系でもシミュ
レーションを正確かつ高速に行えるようにすることを目
的とする。つまり、本発明は、高速で汎用性の高いシミ
ュレーションの仕組みを提供することを目的としてい
る。The present invention has been made in view of such circumstances, and it is possible to accurately and accurately simulate any system in which a part where the state continuously changes and a part where the state changes discretely coexist. The purpose is to enable high-speed operation. That is, an object of the present invention is to provide a high-speed and highly versatile simulation mechanism.
【0013】[0013]
【課題を解決するための手段】本発明によるシミュレー
ション装置は、事象リストに登録された事象を順次抽出
していくことによってシミュレーションを実行する実行
手段と、上記事象リストから抽出された事象の実行結果
が、シミュレーションのために定められた所定の条件を
満たすかどうかを判断する判断手段と、上記判断手段に
より上記所定の条件を満たすと判断された場合には、上
記事象リスト上の所定時間後の部分に上記抽出された事
象に基づいて新たな事象を登録し、上記所定の条件を満
たさないと判断された場合には、上記新たな事象の登録
は行わないように制御する登録制御手段とを備えたこと
を特徴とする。According to the present invention, there is provided a simulation apparatus for executing a simulation by sequentially extracting events registered in an event list, and an execution result of the events extracted from the event list. Is a determining means for determining whether or not a predetermined condition determined for the simulation is satisfied. If the determining means determines that the predetermined condition is satisfied, a predetermined time after the predetermined time on the event list is satisfied. Registering a new event in the portion based on the extracted event and, if it is determined that the predetermined condition is not satisfied, registration control means for controlling not to register the new event. It is characterized by having.
【0014】本発明によるシミュレーション装置の他の
特徴とするところは、請求項1に記載の各手段の機能を
実現するためのプログラムはオブジェクト指向プログラ
ミングに基づいて作成されており、上記判断手段により
行われる判断のための事象を含む上記事象リストから抽
出される事象は全て、同じ親クラスから継承されたクラ
スに属することを特徴とする。Another feature of the simulation apparatus according to the present invention is that a program for realizing the function of each means described in claim 1 is created based on object-oriented programming, and is executed by the determination means. All the events extracted from the event list including the event for the judgment to be performed belong to the class inherited from the same parent class.
【0015】また、本発明によるシミュレーション方法
は、事象リストに登録された事象を順次抽出していくこ
とによってシミュレーションを実行するシミュレーショ
ン方法において、上記事象リストから抽出された事象の
実行結果が、シミュレーションのために定められた所定
の条件を満たすかどうかを判断し、満たすと判断した場
合に上記事象リスト上の所定時間後の部分に上記抽出さ
れた事象に基づいて新たな事象を登録するようにしたこ
とを特徴とする。Further, the simulation method according to the present invention is a simulation method for executing a simulation by sequentially extracting events registered in an event list, wherein an execution result of the events extracted from the event list is used for simulation. It is determined whether or not a predetermined condition set for the event is satisfied, and when it is determined that the condition is satisfied, a new event is registered in a portion after a predetermined time on the event list based on the extracted event. It is characterized by the following.
【0016】また、本発明によるシミュレーション用プ
ログラムの記録媒体は、請求項1に記載された各手段の
機能を実現させるためのプログラムを記録したことを特
徴とする。Further, a simulation program recording medium according to the present invention is characterized in that a program for realizing the function of each means described in claim 1 is recorded.
【0017】本発明によるシミュレーション用プログラ
ムの記録媒体の他の特徴とするところは、上記シミュレ
ーション用プログラムはオブジェクト指向プログラミン
グに基づいて作成されており、上記判断手段により行わ
れる判断のための事象を含む上記事象リストから抽出さ
れる事象は全て、同じ親クラスから継承されたクラスに
属するようにしたことを特徴とする。Another feature of the recording medium of the simulation program according to the present invention is that the simulation program is created based on object-oriented programming, and includes an event for the judgment performed by the judgment means. All the events extracted from the event list belong to a class inherited from the same parent class.
【0018】上記のように構成した本発明によれば、事
象リストから抽出された事象の実行結果が所定の条件を
満たすと判断されて、事象リスト上の所定時間後の部分
に上記抽出された事象に基づいて新たな事象が登録され
ると、上記所定時間を短く設定しておけば次にはその新
たに登録された事象が抽出されて実行される。これが繰
り返されると、その部分では連続系モデルのシミュレー
ションが行われているのと同様のこととなる。ただし、
新たに登録された事象より先に別の事象が存在すれば、
その時はその先に実行されるべき事象を実行した後に新
たに登録された事象が実行される。一方、事象リストか
ら抽出された事象の実行結果が所定の条件を満たさない
と判断されると、新たな事象の登録は行われず、その部
分では通常の離散系モデルと同様のシミュレーションが
行われる。このように、本発明によれば、離散系モデル
と連続系モデルとを混在させたシミュレーションの仕組
みを提供できる。According to the present invention configured as described above, it is determined that the execution result of the event extracted from the event list satisfies a predetermined condition, and the extracted result is added to a portion after a predetermined time on the event list. When a new event is registered based on the event, if the predetermined time is set short, then the newly registered event is extracted and executed. When this is repeated, the result is the same as the simulation of the continuous system model. However,
If another event exists before the newly registered event,
At that time, the newly registered event is executed after executing the event to be executed first. On the other hand, if it is determined that the execution result of the event extracted from the event list does not satisfy the predetermined condition, no new event is registered, and a simulation similar to that of a normal discrete system model is performed in that part. Thus, according to the present invention, it is possible to provide a simulation mechanism in which a discrete system model and a continuous system model are mixed.
【0019】本発明の他の特徴によれば、判断手段によ
り行われる判断のための事象を含む事象リスト上の事象
は全て同じ親クラスの性質や機能を継承している。事象
リストより抽出された事象が、所定の条件を判断するた
めの事象であるときは、継承元の親クラスに基づく限ら
れた範囲内で条件判断を行えばよく、系全体について条
件判断をする必要はなくなる。さらに、条件判断の結
果、事象リストに新たに事象を登録する場合は、上記親
クラスから性質や機能を継承した事象を容易に登録する
ことが可能となる。According to another feature of the present invention, all the events on the event list including the events for the judgment made by the judging means inherit the properties and functions of the same parent class. When the event extracted from the event list is an event for determining a predetermined condition, the condition determination may be performed within a limited range based on the parent class of the inheritance source, and the condition determination is performed for the entire system. There is no need. Furthermore, as a result of the condition determination, when a new event is registered in the event list, it is possible to easily register an event that inherits properties and functions from the parent class.
【0020】[0020]
【発明の実施の形態】以下、本発明の一実施形態を図面
に基づいて説明する。図1は、本発明の一実施形態であ
るシミュレーション装置の主要な機能構成を示すブロッ
ク図である。本実施形態のシミュレーション装置は、以
下の説明から明らかになる通り、離散モデル系の1つの
手法であるスリーフェーズアプローチを連続系モデル対
応に拡張したものである。DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a main functional configuration of a simulation device according to one embodiment of the present invention. As will be apparent from the following description, the simulation apparatus according to the present embodiment is an extension of the three-phase approach, which is one method of the discrete model system, for the continuous system model.
【0021】図1において、1は事象リストであり、シ
ミュレーションを行う際に実施する時間依存の離散事象
(アクティビティあるいはイベント)をリストとして登
録しておくものである。リスト上における事象の並べら
れ方は、事象を起こすタイミングの早い順である。な
お、本実施形態では、スリーフェーズアプローチの拡張
を考えているので、対象となる事象はアクティビティで
ある。In FIG. 1, reference numeral 1 denotes an event list, in which discrete time-dependent events (activities or events) to be performed when performing a simulation are registered as a list. The order of the events on the list is the order in which the events occur at the earliest timing. In this embodiment, since the expansion of the three-phase approach is considered, the target event is an activity.
【0022】2はシミュレーション実行部であり、上記
事象リスト1に対するアクティビティの登録と抽出とに
よってBoundary Activity を実行するとともに、Condit
ional Activityや、上記事象リスト1に登録されている
全アクティビティの中で一番早く起こるアクティビティ
まで系の時刻を進める処理を実行することによって、シ
ミュレーションを実施する。Reference numeral 2 denotes a simulation execution unit that executes a Boundary Activity by registering and extracting an activity with respect to the event list 1 and performs a Condit
The simulation is performed by executing a process for advancing the system time to the ional activity or the activity that occurs first among all the activities registered in the event list 1.
【0023】3はクロック部であり、シミュレーション
における時刻の経過を表現するために使用される。4は
ファイル管理部であり、一連のシミュレーションで使用
する複数のオブジェクト(オブジェクト指向プログラミ
ングにおける、自分自身の内部状態を表す1組のデータ
とそれらを処理する固有のメソッド群とから成るモジュ
ールを言う)のロード、セーブなどを行う。例えば、シ
ミュレーションのためのエンティティや、シミュレーシ
ョンの最終的な処理結果データなどである。Reference numeral 3 denotes a clock unit, which is used to represent the passage of time in a simulation. Reference numeral 4 denotes a file management unit, which is a plurality of objects used in a series of simulations (in the object-oriented programming, a module consisting of a set of data representing its own internal state and a unique method group for processing them). Load, save, etc. For example, it is an entity for simulation or final processing result data of simulation.
【0024】5は判断手段であり、上記シミュレーショ
ン実行部2により事象リスト1から抽出された事象の実
行結果が、シミュレーションのために定められた所定の
条件を満たすかどうかを判断する。6は登録制御手段で
あり、上記判断手段5により上記所定の条件を満たすと
判断された場合に、上記事象リスト1上の所定時間後の
部分に上記抽出された事象に関連する新たな事象を登録
し、所定の条件を満たさないと判断された場合には新た
な事象の登録は行わないように制御する。Numeral 5 denotes a judging means for judging whether or not the execution result of the event extracted from the event list 1 by the simulation executing section 2 satisfies a predetermined condition set for the simulation. Reference numeral 6 denotes a registration control unit. When the determination unit 5 determines that the predetermined condition is satisfied, a new event related to the extracted event is added to a portion of the event list 1 after a predetermined time. The registration is performed, and if it is determined that the predetermined condition is not satisfied, control is performed so that a new event is not registered.
【0025】以上に述べた各機能ブロック1〜6は、実
際にはCPU、ROMおよびRAM等からなるマイクロ
コンピュータシステムにより構成され、そのようなシミ
ュレーションを行うためのプログラムは、上記ROMに
格納される。また、これ以外にも、本実施形態のシミュ
レーション装置に上記プログラムを外部から供給するよ
うにすることも可能である。この場合、上記プログラム
を供給するための手段、例えば上記プログラムを格納し
た記録媒体は本発明を構成する。Each of the functional blocks 1 to 6 described above is actually constituted by a microcomputer system comprising a CPU, a ROM, a RAM, and the like, and a program for performing such a simulation is stored in the ROM. . In addition, it is also possible to externally supply the program to the simulation apparatus of the present embodiment. In this case, a means for supplying the program, for example, a recording medium storing the program constitutes the present invention.
【0026】なお、上記プログラムを記憶する記録媒体
としては、ROMの他に、例えばフロッピーディスク、
ハードディスク、光ディスク、光磁気ディスク、CD−
ROM、磁気テープ、不揮発性のメモリカード等を用い
ることができる。As a recording medium for storing the above-mentioned program, in addition to the ROM, for example, a floppy disk,
Hard disk, optical disk, magneto-optical disk, CD-
A ROM, a magnetic tape, a nonvolatile memory card, or the like can be used.
【0027】図2および図3は、上記のように構成した
本実施形態によるシミュレーション装置の動作を説明す
るための図である。この図2および図3は、事象リスト
1に対するアクティビティの登録と抽出とによってシミ
ュレーションが実行されることを示している。すなわ
ち、事象リスト1内には、図2に示すように事象を起こ
すタイミングの早い順にアクティビティが登録されてお
り、その順に図1のシミュレーション実行部2によりア
クティビティが抽出されてシミュレーションが実行され
る。FIGS. 2 and 3 are diagrams for explaining the operation of the simulation apparatus according to the present embodiment configured as described above. FIGS. 2 and 3 show that a simulation is executed by registering and extracting an activity from the event list 1. FIG. That is, as shown in FIG. 2, activities are registered in the event list 1 in ascending order of occurrence of an event, and activities are extracted by the simulation execution unit 2 in FIG. 1 and simulation is executed in that order.
【0028】図2および図3において、事象リスト1内
で仕切られている1つのブロックが1つのアクティビテ
ィであり、各アクティビティは、いつ何を実行するかを
自分自身で情報として保持している。例えば、従来例で
述べたスラブを移動テーブルで運搬する場合のシミュレ
ーションでは、滞留時間などの情報も保持する。In FIG. 2 and FIG. 3, one block partitioned in the event list 1 is one activity, and each activity has its own information as to when and what to execute. For example, in the simulation of transporting a slab with a moving table as described in the conventional example, information such as the residence time is also held.
【0029】従来のスリーフェーズアプローチでは、事
象リスト1に登録されたアクティビティは、モデル系の
時刻変化に従って単に抽出されるだけであった。これに
対して本実施形態では、抽出された事象に何らかの判断
が必要な場合、その事象の実行結果を見て、実行結果が
所定の条件を満たすかどうかを判断する。そして、所定
の条件を満たすと判断した場合には、事象リスト1上の
所定時間Δt後の部分に上記抽出された事象に関連する
新たな事象を登録するようにしている。In the conventional three-phase approach, the activities registered in the event list 1 are simply extracted according to the time change of the model system. On the other hand, in the present embodiment, when some judgment is necessary for the extracted event, the execution result of the event is checked to determine whether the execution result satisfies a predetermined condition. If it is determined that the predetermined condition is satisfied, a new event related to the extracted event is registered in a portion after a predetermined time Δt on the event list 1.
【0030】先の例で、現在、移動テーブル上でスラブ
が移動せずに滞留している場合を考える。図2の事象リ
スト1には幾つかのアクティビティが登録され、それぞ
れ、10:00 、10:01 、10:05 、10:18 、……と実行時刻
が設定されている。10:00 に実行されるアクティビティ
は、スラブの滞留時間を測定するというアクティビティ
である。このアクティビティは、移動テーブル上にスラ
ブが滞留していればその滞留時間の情報も保持してい
て、現在の滞留時間は10分である。この滞留時間は、
図1のクロック部3をもとに何時から滞留しているかを
示すもので、実際には滞留の開始時刻の情報が保持され
ているものと考えればよい。In the above example, consider the case where the slab is currently staying on the moving table without moving. Several activities are registered in the event list 1 of FIG. 2, and execution times are set to 10:00, 10:01, 10:05, 10:18,... Respectively. The activity executed at 10:00 is to measure the dwell time of the slab. If the slab is staying on the moving table, this activity also holds information on the staying time, and the current staying time is 10 minutes. This residence time is
It indicates from what time it has been staying on the basis of the clock unit 3 in FIG. 1, and it may be considered that information on the start time of staying is actually held.
【0031】したがって、シミュレーション実行部2に
より10:00 に実行されたアクティビティでは、実行の結
果、移動テーブル上でスラブが10分間滞留しているこ
とが判明する。このとき、例えば30分を越えて移動テ
ーブル上にスラブが滞留したときに移動テーブルからス
ラブを降ろすように決まっていれば、判断手段5でスラ
ブの滞留時間が30分を越えていないかどうかを判断
し、越えていなければ登録制御手段6によって事象リス
ト1に再度アクティビティを登録する。Therefore, in the activity executed at 10:00 by the simulation execution unit 2, it is found that the slab is staying on the moving table for 10 minutes as a result of the execution. At this time, for example, if it is determined that the slab should be dropped from the moving table when the slab stays on the moving table for more than 30 minutes, the determination means 5 determines whether the slab staying time has not exceeded 30 minutes. Judgment is made, and if not exceeded, the activity is registered in the event list 1 again by the registration control means 6.
【0032】この新規に登録されるアクティビティは、
10:00 に実行されたアクティビティと同じものである
が、実行時刻の情報が更新されている。この例において
は、10分刻みで滞留時間を監視しているので、新規に
登録されるアクティビティは、10:05 と10:18 とに実行
されるアクティビティの間の10:10 に実行されるアクテ
ィビティとして登録される。The newly registered activity is
It is the same as the activity executed at 10:00, but the execution time information has been updated. In this example, since the residence time is monitored at intervals of 10 minutes, the newly registered activity is the activity executed at 10:10 between the activities executed at 10:05 and 10:18. Registered as
【0033】図3(a)は、10:00 のアクティビティが
実行された直後の事象リスト1を示している。10:00 に
実行されたアクティビティは、抽出されたので事象リス
ト1からは外され、次に実行されるのは10:01 のアクテ
ィビティである。また、新規のアクティビティが10:10
に登録されている。FIG. 3A shows the event list 1 immediately after the activity at 10:00 is executed. The activity executed at 10:00 is extracted from the event list 1 because it is extracted, and the next executed activity is 10:01. Also, new activities at 10:10
Registered in.
【0034】同様に、10:10 に実行されるべきアクティ
ビティが実行された直後の事象リスト1は、図3(b)
に示すものであり、このときは新たに新規のアクティビ
ティが10:20 に登録されている。さらに、その10:20 に
実行されるべきアクティビティが実行された直後の事象
リスト1は、図3(c)に示すものであり、このときは
新たに新規のアクティビティが10:30 に登録されてい
る。10:30 に実行されるべきアクティビティが実行され
ると、スラブの滞留時間は40分となる。したがって、
判断手段5でスラブの滞留時間が30分を越えていると
判断され、この場合、事象リスト1への新規のアクティ
ビティ登録は行われない。Similarly, the event list 1 immediately after the activity to be executed at 10:10 is executed is shown in FIG.
At this time, a new activity is newly registered at 10:20. Further, the event list 1 immediately after the activity to be executed at 10:20 is executed is as shown in FIG. 3C. At this time, a new activity is newly registered at 10:30. I have. If the activity to be performed at 10:30 is performed, the dwell time of the slab will be 40 minutes. Therefore,
The determination unit 5 determines that the slab residence time exceeds 30 minutes. In this case, no new activity is registered in the event list 1.
【0035】本実施形態のシミュレーション装置では、
図1に示した各機能ブロック1〜6を実現するためのプ
ログラムは、オブジェクト指向プログラミングに基づい
て作成される。そして、事象リスト1から抽出される事
象は、すべて同じ親クラスから継承されたクラスであ
り、条件判断を行った結果新たに登録される事象が属す
るクラスも同じ親クラスから継承されたものである。In the simulation device of the present embodiment,
A program for implementing each of the functional blocks 1 to 6 shown in FIG. 1 is created based on object-oriented programming. The events extracted from the event list 1 are all classes inherited from the same parent class, and the class to which the newly registered event belongs as a result of the condition determination is also inherited from the same parent class. .
【0036】これを図4の例を用いて詳しく説明する。
図4は、ユーザによるシミュレーション実行コマンドの
入力に応じて行われるメンバ関数discrete_approach()
の動作を説明するための図である。なお、この図4は、
シミュレーションを実行するスケジューラ41がスリー
フェーズアプローチで実装されている場合の例を示した
ものである。This will be described in detail with reference to the example shown in FIG.
FIG. 4 shows a member function discrete_approach () performed in response to a simulation execution command input by a user.
It is a figure for explaining operation of. Note that FIG.
This shows an example in which a scheduler 41 for executing a simulation is implemented by a three-phase approach.
【0037】図4において、スケジューラ41に対して
メンバ関数discrete_approach()の実行命令が与えられ
ると、スケジューラ41では、まず時間依存のBoundary
Activity を実行する。すなわち、まず事象リスト(ア
クティビティリスト)1から、シミュレーションにおけ
る現在の時刻と事象を起こすべき時刻とが一致したアク
ティビティ42を全て抽出することによりBoundary Act
ivity を実行する。In FIG. 4, when the execution instruction of the member function discrete_approach () is given to the scheduler 41, the scheduler 41 first executes the time-dependent Boundary
Execute Activity. That is, the Boundary Act is first extracted from the event list (activity list) 1 by extracting all the activities 42 in which the current time in the simulation and the time at which the event should occur are coincident.
Run ivity.
【0038】次に、上述のようにしてアクティビティ4
2を抽出してBoundary Activity を実行したら、アクテ
ィビティ42の終了をそれに関連するエンティティ43
に知らせる。そして、そのアクティビティ42を起こし
たエンティティ43がアクティビティ42の終了時に行
うべきことを実行する。ここで、アクティビティ42の
終了時に行うべきことは、アクティビティ42の発生時
にそれに関連するエンティティ43のメンバ変数 end_
process _にセットされた動作、メンバ関数のdo_ end
_process() である。Next, activity 4 is performed as described above.
After extracting Boundary Activity 2 and executing Boundary Activity, the end of activity 42 is
Inform Then, the entity 43 that has caused the activity 42 executes what should be performed when the activity 42 ends. Here, what to do when the activity 42 ends is that when the activity 42 occurs, the member variable end_end_
Action set in process_, do_end of member function
_Process ().
【0039】本実施形態では、このメンバ関数do_ end
_process() をオブジェクト指向プログラミングの仮想
関数(あるクラスで定義した機能をその子クラスで再定
義し、異なる機能に置き換えてしまうための特別な性質
を持った関数であり、オブジェクト指向プログラミング
の多相性を利用したもの)で定義する。これにより、こ
のdo_ end_process() の機能を継承する下のクラスで
様々な動作をするように再定義することによって、いろ
んな事象を柔軟に表現することができる。In this embodiment, the member function do_end
_Process () is a virtual function of object-oriented programming (a function with the special property of redefining a function defined in a certain class in its child class and replacing it with a different function. Used). As a result, various events can be flexibly expressed by redefining the lower class inheriting the function of do_end_process () so as to perform various operations.
【0040】例えば、従来例で述べたスラブを複数の移
動テーブルを介して運搬する工程のシミュレーションを
考える場合、アクティビティリスト1より抽出されたア
クティビティ42から、条件判断を行い、新たにΔt時
間後にアクティビティ42を登録するが、その際そのア
クティビティ42に関連するエンティティ43をセット
する。このエンティティ43は、条件判断のアクティビ
ティに関連したエンティティと同じである。For example, when considering the simulation of the process of transporting a slab through a plurality of moving tables as described in the conventional example, condition determination is performed from the activity 42 extracted from the activity list 1 and the activity is newly determined after Δt time. 42 is registered, at which time an entity 43 related to the activity 42 is set. This entity 43 is the same as the entity related to the condition determination activity.
【0041】上述のように、アクティビティはそれに関
連するエンティティによって起動される。したがって、
そのエンティティはどのアクティビティを起動したかを
把握しているし、逆にアクティビティの方もどのエンテ
ィティによって起動されたかを把握している。つまり、
本実施形態では、アクティビティの抽出が行われ、それ
が条件を判断するアクティビティであったとき、その条
件判断のアクティビティは、条件判断をする際にどのエ
ンティティ(複数可)まで判断すれば良いかを知ってい
て条件判断はその範囲内でのみ行う。As mentioned above, an activity is invoked by its associated entity. Therefore,
The entity knows which activity has been started, and the activity also knows which entity has started the activity. That is,
In the present embodiment, an activity is extracted, and when the activity is an activity for judging a condition, the activity of the condition judging indicates to which entity (s) to judge the condition. Know and make conditional decisions only within that range.
【0042】この場合において、上述の条件を満たすと
判断したときは、例えば「スラブの滞留時間を測る」と
いう新たなアクティビティを発生させ、発生と同時にそ
れをアクティビティリスト1上のΔt後の部分に登録す
る。これは、滞留時間を測定するためのアクティビティ
である。In this case, when it is determined that the above condition is satisfied, for example, a new activity of "measure the slab residence time" is generated, and at the same time, a new activity is added to the portion after Δt on the activity list 1. sign up. This is an activity for measuring residence time.
【0043】このような処理により、移動テーブル上に
スラブが残っている間は、スラブの滞留時間の測定に関
するアクティビティの登録と抽出とがΔt間隔で繰り返
し実行される。この滞留時間を測定するアクティビティ
は、滞留時間を測定するために、“どこの移動テーブル
上に”、“いつから”滞留しているかを情報として持っ
ている。したがって、次に条件判断をする前にスラブが
次の移動テーブルに移動してしまった場合には、条件判
断の対象となっている移動テーブル上にスラブが存在し
ないため、条件判断は行わない。この場合、最後に抽出
されたアクティビティの後は、事象リスト1に元々登録
されていたアクティビティの中で最も早く実行すべきア
クティビティの時刻まで系の時刻を進めて抽出が行われ
る。With such processing, while the slab remains on the moving table, the registration and extraction of the activity relating to the measurement of the slab residence time are repeatedly executed at intervals of Δt. The activity for measuring the residence time has information as to “where on the moving table” and “from when” to measure the residence time. Therefore, if the slab has moved to the next moving table before the next condition determination, the condition determination is not performed because the slab does not exist on the moving table subject to the condition determination. In this case, after the activity extracted last, extraction is performed by advancing the system time to the time of the activity to be executed earliest among the activities originally registered in the event list 1.
【0044】また、アクティビティの抽出と登録とがΔ
t間隔で繰り返し行われている過程で、スラブの滞留時
間がある所定値を越えた場合には、Conditional Activi
tyの実行により、その移動テーブルからスラブをクレー
ンによって降ろす事象が実行される。なお、Δtの値
は、シミュレーションの対象とする系によって決めれば
良い。In addition, the activity extraction and registration are Δ
If the dwell time of the slab exceeds a certain value in the process of repeating at t intervals, Conditional Activi
By executing ty, an event of lowering the slab from the moving table by the crane is executed. The value of Δt may be determined depending on the system to be simulated.
【0045】以上のように、本実施形態では離散系モデ
ルと連続系モデルとを混在させたシミュレーションの仕
組みを提供している。すなわち、離散系モデルであるス
リーフェーズアプローチを基調としつつも、スラブの滞
留時間を見る部分については、系の内容を考慮しつつΔ
tの時間間隔でアクティビティの抽出と登録をすること
によって連続系と同様にシミュレートすることができ
る。そのため、上述のような圧延工程の処理をシミュレ
ートするためには、クレーンのハンドリングは離散系モ
デルとして表現し、スラブの滞留時間は連続系モデルと
して表現することが好ましいが、両者にとって好ましい
形で一連のシミュレーションを行うことができる。As described above, the present embodiment provides a simulation mechanism in which a discrete system model and a continuous system model are mixed. In other words, while the three-phase approach, which is a discrete system model, is used as the basis, for the part that observes the slab residence time, Δ
By extracting and registering activities at time intervals of t, a simulation can be performed in the same manner as in a continuous system. Therefore, in order to simulate the processing of the rolling process as described above, the handling of the crane is preferably represented as a discrete system model, and the residence time of the slab is preferably represented as a continuous system model. A series of simulations can be performed.
【0046】このように、本実施形態では、全てを連続
系モデルで構成する場合と異なり、必要な部分でのみ連
続系とし、その他の部分については離散系とすることが
できる。しかも、連続的なシミュレーションを行う際
も、条件判断はそのアクティビティを起動したエンティ
ティの限られた範囲内で行えば良く、系全体について条
件判断する必要はない。したがって、本実施形態によれ
ば、連続的に状態が変化する部分と離散的に状態が変化
する部分とが混在した系の事象を、汎用的かつ高速にシ
ミュレーションすることができる。As described above, in the present embodiment, unlike the case where all are constituted by a continuous system model, only a necessary part can be a continuous system, and the other parts can be a discrete system. Moreover, even when performing a continuous simulation, the condition determination may be performed within a limited range of the entity that has started the activity, and it is not necessary to determine the condition for the entire system. Therefore, according to the present embodiment, it is possible to simulate a general-purpose and high-speed event of a system in which a part where the state changes continuously and a part where the state changes discretely coexist.
【0047】次に、上述のようなスラブ運搬のシミュレ
ーションを行う場合の本実施形態によるシミュレーショ
ン装置の動作を、図5のフローチャートに基づいて詳し
く説明する。スラブを複数の移動テーブルを介して運搬
しているとき、ある移動テーブル上にスラブが滞留する
と、その前段の移動テーブル上でも滞留が起こるはずで
ある。そこで、本実施形態では、上記前段に該当する移
動テーブル上でのスラブの滞留時間を測り、それが一定
値を越えたときにそこからスラブをクレーンで降ろすと
いう処理をシミュレーションする。Next, the operation of the simulation apparatus according to the present embodiment when carrying out the slab transport simulation as described above will be described in detail with reference to the flowchart of FIG. When the slab is transported through a plurality of moving tables, if the slab stays on a certain moving table, the slab should also stay on the preceding moving table. Therefore, in the present embodiment, a process of measuring the residence time of the slab on the moving table corresponding to the preceding stage, and, when the residence time exceeds a certain value, lowering the slab from there by a crane is simulated.
【0048】図5において、ユーザがシミュレーション
の実行コマンドを入力すると、ステップS1から処理が
開始される。ステップS1では、シミュレーション実行
部2が管理する事象リスト1の中で最も早い時刻に起こ
るアクティビティを抽出する。そして、ステップS2で
その抽出したアクティビティ(ここでは、「スラブの滞
留時間を測る」というアクティビティであるとする)を
実行する。In FIG. 5, when the user inputs a simulation execution command, the process is started from step S1. In step S1, activities occurring at the earliest time in the event list 1 managed by the simulation execution unit 2 are extracted. Then, in step S2, the extracted activity (here, it is assumed that the activity is "measure the slab residence time") is executed.
【0049】次のステップS3では、上記ステップS1
で抽出されたアクティビティの実行結果が所定の条件を
満たすかどうか、すなわち、該当する移動テーブル上に
同じスラブが残っているかどうかを判断する。ここで、
移動テーブル上にスラブが存在すれば、ステップS4に
進み、スラブの滞留時間にΔtの時間を加算する。一
方、該当する移動テーブル上にスラブが存在しないと判
断したときは、スラブの滞留はなくなったので、ステッ
プS7にジャンプして滞留時間を初期化する。In the next step S3, the above step S1
It is determined whether or not the execution result of the activity extracted in the step satisfies a predetermined condition, that is, whether or not the same slab remains on the corresponding moving table. here,
If there is a slab on the moving table, the process proceeds to step S4, and the time Δt is added to the slab residence time. On the other hand, when it is determined that the slab does not exist on the corresponding moving table, since the slab has not stayed, the process jumps to step S7 to initialize the stay time.
【0050】上記ステップS4の次に、ステップS5で
は、スラブの滞留時間が所定の閾値以内かどうかを判断
する。そして、滞留時間が所定の閾値を越えた場合には
ステップS6に進み、該当する移動テーブルからスラブ
をクレーンで降ろすというアクティビティを実行する。
この場合もスラブの滞留は一時的に解消されることとな
るので、次のステップS7で滞留時間を初期化する。そ
の後、ステップS9へと進む。Following step S4, in step S5, it is determined whether the slab residence time is within a predetermined threshold. If the staying time exceeds a predetermined threshold, the process proceeds to step S6, and an activity of lowering the slab from the corresponding moving table by a crane is executed.
Also in this case, the slab stay is temporarily eliminated, so that the stay time is initialized in the next step S7. Thereafter, the process proceeds to step S9.
【0051】なお、本実施形態では、滞留時間が所定の
閾値を越えた場合に発生するアクティビティを実行する
ためのメンバ関数do_ end_process() も上述の仮想関
数で定義する。これにより、クレーンがスラブを掴むた
めに移動するアクティビティでは、移動というアクティ
ビティが終了すると同時にスラブを掴むという現象を起
こすようにすることもできる。このように、従来はサブ
ルーチンなどを用いて手続きとして書いていた振る舞い
を1つのクラスで表現することができる。In this embodiment, a member function do_end_process () for executing an activity that occurs when the staying time exceeds a predetermined threshold is also defined by the above-described virtual function. Thus, in the activity in which the crane moves to grab the slab, the phenomenon that the movement is completed and the slab is grabbed at the same time can be caused. As described above, a behavior that has been conventionally written as a procedure using a subroutine or the like can be represented by one class.
【0052】一方、上記ステップS5で滞留時間がまだ
所定の閾値を越えていないと判断した場合は、ステップ
S8に進み、事象リスト1上の所定時間Δt後の部分に
上記ステップS1で抽出されたアクティビティに関連す
る新たなアクティビティ(例えば「スラブの滞留時間を
測る」というアクティビティ)を登録する。その後、ス
テップS9へと進む。On the other hand, if it is determined in step S5 that the staying time has not yet exceeded the predetermined threshold, the process proceeds to step S8, and the part extracted after the predetermined time Δt on the event list 1 in step S1. A new activity related to the activity (for example, an activity of “measuring the slab dwell time”) is registered. Thereafter, the process proceeds to step S9.
【0053】ステップS9では、その時点で事象リスト
1に登録されているアクティビティの中で、最も早く起
こるアクティビティの時刻にモデル系の時刻(クロック
部3の時刻)を更新する。このとき、上記ステップS8
で新たなアクティビティが登録されているときは、その
アクティビティも含めて最も早い時刻に更新する。そし
て、ステップS1に戻り、上述した各ステップの処理を
繰り返し行う。In step S9, the time of the model system (the time of the clock unit 3) is updated to the time of the earliest activity among the activities registered in the event list 1 at that time. At this time, step S8
When a new activity is registered in, the update is performed at the earliest time including that activity. Then, the process returns to step S1, and the processing of each step described above is repeatedly performed.
【0054】以上のような処理により、スラブの滞留時
間が所定の閾値を越えるまでは、ステップS8の処理を
行った後でステップS9へと進む流れによって連続系モ
デルとして表現することができ、スラブが移動テーブル
から移動した場合あるいは滞留時間が所定の閾値を越え
た場合は、ステップS8の処理は行わずにステップS9
へと進むことによって離散系モデルとすることができ
る。By the above-described processing, until the residence time of the slab exceeds the predetermined threshold value, the flow proceeds to step S9 after performing the processing of step S8, and can be represented as a continuous system model by the flow proceeding to step S9. Is moved from the moving table or when the staying time exceeds a predetermined threshold value, the process of step S8 is not performed and step S9 is performed.
By going to, a discrete system model can be obtained.
【0055】このように、本実施形態では、事象リスト
1上に一定時間間隔で新たな事象を順次登録しては抽出
するという処理によって連続系モデルを表現する部分
と、新たな事象の登録を行わずに通常通り離散系モデル
を表現する部分とを混在させたシミュレーションの仕組
みを提供しているため、全てを連続系モデルで構成する
場合に比べてシミュレーションを高速に行うことができ
るとともに、全てを連続モデルとした場合と同様に、よ
り現実に近いシミュレーションを行うことができるよう
になる。As described above, in the present embodiment, the process of registering and extracting new events on the event list 1 at regular time intervals and extracting the continuous system model and the registration of the new events are performed. Since it provides a simulation mechanism that mixes a part that expresses a discrete system model as usual without performing it, it is possible to perform simulations faster than when all are configured with a continuous system model, As in the case where is a continuous model, simulation closer to reality can be performed.
【0056】なお、以上の実施形態は、スリーフェーズ
アプローチの拡張型として説明したが、イベントアプロ
ーチの拡張型として構成することも可能である。また、
その他にも、事象リストに対する事象の登録と抽出とに
よってシミュレーションを行うものであれば、本発明を
適用することが可能である。また、以上の実施形態では
スラブの運搬のシミュレーションを例に挙げたが、その
他の事例に適用できることは言うまでもない。Although the above embodiment has been described as an extended type of the three-phase approach, it can be configured as an extended type of the event approach. Also,
In addition, the present invention can be applied as long as simulation is performed by registering and extracting an event from an event list. In the above embodiment, the simulation of slab conveyance is described as an example, but it is needless to say that the present invention can be applied to other cases.
【0057】[0057]
【発明の効果】本発明は上述したように、事象リストか
ら抽出された事象の実行結果が、シミュレーションのた
めに定められた所定の条件を満たすかどうかを判断し、
満たすと判断した場合に上記事象リスト上の所定時間後
の部分に上記抽出された事象に基づいて新たな事象を登
録し、満たさない場合には登録は行わないようにする制
御手段を設けたので、離散系モデルと連続系モデルとを
混在させたシミュレーションの仕組みを提供でき、全て
を離散系モデルで構築する場合や全てを連続系モデルで
構築する場合に比べて、様々な系のシミュレーションを
正確かつ高速に行うことができる。As described above, according to the present invention, it is determined whether or not the execution result of an event extracted from an event list satisfies a predetermined condition set for simulation.
A control means is provided for registering a new event based on the extracted event in a portion after a predetermined time on the event list when it is determined that the event is satisfied, and not performing registration when the event is not satisfied. Can provide a simulation mechanism that mixes discrete and continuous models, making simulation of various systems more accurate than when all are constructed with a discrete model or when all are constructed with a continuous model. It can be performed at high speed.
【0058】本発明の他の特徴によれば、判断手段によ
り行われる判断のための事象を含む事象リスト上の事象
は全て、同じ親クラスから継承されたクラスに属するよ
うにしたので、事象リストより抽出された事象が、所定
の条件を判断するための事象であるときは、継承元の親
クラスに基づく限られた範囲内で条件判断を行えばよ
く、系内の全ての構成要素を対象として条件判断を行っ
ていた従来例に比べて、探索範囲を格段に狭めることが
でき、シミュレーションの更なる高速化を図ることがで
きる。さらに、条件判断の結果、事象リストに新たに事
象を登録する場合は、上記親クラスから性質や機能を継
承した事象を容易に登録することが可能となる。According to another feature of the present invention, all the events on the event list including the events for the judgment made by the judging means belong to the class inherited from the same parent class. When the extracted event is an event for judging a predetermined condition, the condition judgment may be performed within a limited range based on the parent class of the inheritance source, and all components in the system are targeted. As compared with the conventional example in which the condition determination is performed as described above, the search range can be significantly narrowed, and the speed of the simulation can be further increased. Furthermore, as a result of the condition determination, when a new event is registered in the event list, it is possible to easily register an event that inherits properties and functions from the parent class.
【図1】本発明の一実施形態であるシミュレーション装
置の主要な機能構成を示すブロック図である。FIG. 1 is a block diagram showing a main functional configuration of a simulation device according to an embodiment of the present invention.
【図2】本実施形態によるシミュレーション装置の動作
を説明するための図である。FIG. 2 is a diagram for explaining the operation of the simulation device according to the present embodiment.
【図3】本実施形態によるシミュレーション装置の動作
を説明するための図である。FIG. 3 is a diagram for explaining the operation of the simulation device according to the present embodiment.
【図4】ユーザによるシミュレーション実行コマンドの
入力に応じて行われるdiscrete_approach()の動作を説
明するための図である。FIG. 4 is a diagram for explaining the operation of discrete_approach () performed in response to a simulation execution command input by a user.
【図5】本実施形態によるシミュレーション装置の動作
あるいは本実施形態によるシミュレーション方法を示す
フローチャートである。FIG. 5 is a flowchart showing the operation of the simulation apparatus according to the embodiment or the simulation method according to the embodiment;
1 事象リスト 2 シミュレーション実行部 3 クロック部 4 ファイル管理部 5 判断手段 6 登録制御手段 DESCRIPTION OF SYMBOLS 1 Event list 2 Simulation execution part 3 Clock part 4 File management part 5 Judgment means 6 Registration control means
Claims (5)
していくことによってシミュレーションを実行する実行
手段と、 上記事象リストから抽出された事象の実行結果が、シミ
ュレーションのために定められた所定の条件を満たすか
どうかを判断する判断手段と、 上記判断手段により上記所定の条件を満たすと判断され
た場合には、上記事象リスト上の所定時間後の部分に上
記抽出された事象に基づいて新たな事象を登録し、上記
所定の条件を満たさないと判断された場合には、上記新
たな事象の登録は行わないように制御する登録制御手段
とを備えたことを特徴とするシミュレーション装置。An execution means for executing a simulation by sequentially extracting events registered in an event list, and an execution result of the event extracted from the event list is a predetermined execution result determined for the simulation. Determining means for determining whether or not a condition is satisfied; and if the determining means determines that the predetermined condition is satisfied, a new part is provided in a portion after a predetermined time on the event list based on the extracted event. A registration control means for registering a new event and determining that the new event is not registered when it is determined that the predetermined condition is not satisfied.
るためのプログラムはオブジェクト指向プログラミング
に基づいて作成されており、 上記判断手段により行われる判断のための事象を含む上
記事象リストから抽出される事象は全て、同じ親クラス
から継承されたクラスに属することを特徴とするシミュ
レーション装置。2. A program for realizing the function of each means described in claim 1 is created on the basis of object-oriented programming, and includes a program from the event list including events for determination performed by the determination means. A simulation apparatus wherein all extracted events belong to a class inherited from the same parent class.
していくことによってシミュレーションを実行するシミ
ュレーション方法において、 上記事象リストから抽出された事象の実行結果が、シミ
ュレーションのために定められた所定の条件を満たすか
どうかを判断し、満たすと判断した場合に上記事象リス
ト上の所定時間後の部分に上記抽出された事象に基づい
て新たな事象を登録するようにしたことを特徴とするシ
ミュレーション方法。3. A simulation method for executing a simulation by sequentially extracting events registered in an event list, wherein an execution result of the event extracted from the event list is a predetermined result determined for the simulation. A simulation method for determining whether a condition is satisfied and, if determined to be satisfied, registering a new event based on the extracted event in a portion after a predetermined time on the event list. .
現させるためのプログラムを記録したことを特徴とする
コンピュータに読み取り可能なシミュレーション用プロ
グラムの記録媒体。4. A computer-readable recording medium for a simulation program, which stores a program for realizing the function of each means described in claim 1.
ブジェクト指向プログラミングに基づいて作成されてお
り、 上記判断手段により行われる判断のための事象を含む上
記事象リストから抽出される事象は全て、同じ親クラス
から継承されたクラスに属するようにしたことを特徴と
する請求項4に記載のシミュレーション用プログラムの
記録媒体。5. The simulation program is created based on object-oriented programming, and all events extracted from the event list including events for determination made by the determination means are inherited from the same parent class. The recording medium for a simulation program according to claim 4, wherein the recording medium belongs to a class that has been set.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23027197A JPH1165637A (en) | 1997-08-12 | 1997-08-12 | Simulation device and method therefor and record medium for program for simulation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23027197A JPH1165637A (en) | 1997-08-12 | 1997-08-12 | Simulation device and method therefor and record medium for program for simulation |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1165637A true JPH1165637A (en) | 1999-03-09 |
Family
ID=16905191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23027197A Withdrawn JPH1165637A (en) | 1997-08-12 | 1997-08-12 | Simulation device and method therefor and record medium for program for simulation |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1165637A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001027906A (en) * | 1999-07-14 | 2001-01-30 | Toshiba Corp | Monitor controller and recording medium recording program |
-
1997
- 1997-08-12 JP JP23027197A patent/JPH1165637A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001027906A (en) * | 1999-07-14 | 2001-01-30 | Toshiba Corp | Monitor controller and recording medium recording program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9176490B2 (en) | Control program generation device, control program generation program, and control program generation method | |
US8805555B2 (en) | Configuring a PID controller | |
Mejía et al. | Petri nets and deadlock-free scheduling of open shop manufacturing systems | |
CN113537584A (en) | Inspection task conflict processing method and device, electronic equipment and storage medium | |
Wang et al. | On-line distributed prediction of traffic flow in a large-scale road network | |
CN113570727B (en) | Scene file generation method and device, electronic equipment and storage medium | |
JPH1165637A (en) | Simulation device and method therefor and record medium for program for simulation | |
Yang et al. | Synthesis-guided adversarial scenario generation for gray-box feedback control systems with sensing imperfections | |
CN114462566A (en) | Method for realizing real-time determination of optimal decision action by intelligent real-time decision system | |
JPS6126112A (en) | System for diagnosing abnormality of system | |
US5917731A (en) | Process for detecting complete sequences and failed sequences in a situation recognition sequence | |
Nguyen et al. | Criticality of Schedule Constraints--Classification and Identification for Project Management. | |
Huang et al. | Dynamic task sequencing of manipulator by Monte Carlo tree search | |
JP3916727B2 (en) | Simulation apparatus and method, computer-readable recording medium | |
CN111739132A (en) | Whole body bone movement effect modification method based on local controller | |
JPS61138343A (en) | Event simulation system | |
CN117272699B (en) | Online simulation method and device for digital intersection, storage medium and electronic equipment | |
CN115985124B (en) | Vehicle running control method and device, storage medium and electronic device | |
Li et al. | Identifying achievable goals for adaptive replanning against runtime environment change | |
JPH11328259A (en) | Modeling method by petri net | |
Mah et al. | A plant-wide quality expert system for steel mills | |
JP2000202742A (en) | Simulation method and apparatus | |
Sadek | Hybrid Simulated Annealing and Case-Based Reasoning Approach for Computationally Intensive Transportation Problems: Rationale and Design Issues | |
Kolat et al. | Multi-Agent Reinforcement Learning for Traffic Signal Control: A Cooperative Approach. Sustainability 2023, 15, 3479 | |
JP2715647B2 (en) | Train operation prediction simulation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20041102 |