計測自動制御学会 東北支部 第245回研究集会（2008．10．24）
資料番号 245−11

フラクタル・ベトリネットtシステムのアーキテクチャに関する研究

Architecture of FractalPetriNet System
O大橋 直子＊、渡部 慶二＊、村松 鋭一＊、有我 祐一＊、遠藤 茂＊
O Naoko Ohashi＊，KeijiWatanabe＊，EiichiMuramatu＊，
YuichiAriga＊，Shigeru Endo＊＊山形大学大学院理工学研究科＊Yamagata University
キーワード：ペトリネット（PetriNet）、フラクタル性（Fractal）
連絡先：山形県米沢市城南4−3−16・解決原理を実現する基本構造の構築

1．はじめに今日、離散事象システムの大規模化・複雑化に伴う問題として以下の7つが挙・実現可能性の検証

2．問題の解決原理
前述した7つの問題の解決原理として、げられる。

以下の4つを挙げる。

・効率が悪い・視覚性・脆弱である・最適性

・開発期間の長期化

・ロバスト性・開発コストの上昇・フラクタル性・動作把握が悪い

視覚性は『動作把握が悪い』『保守性が悪・保守性が悪いい』という問題の解決原理、最適性は『効・拡張、変更が困難率が悪い』という問題、ロバスト性は『脆本研究の目的は上記の問題を解決する弱である』という問題の解決原理である。

一方法を提案する。具体的には以下の方

そして、フラクタル性は7つ全ての問題法で進める。の解決原理である。

・解決原理の確立
・問題と解決原理の記述

フラクタル性とは自己相似性とも呼ばれ、ひとつの図形をそれ自身の中に含んでいる事、逆に言うとひとつの図形を組Cみ合わせた全体の図形が元の図形との相D d似である。離散事象に対しては基本要素の組み合わせがひとつの基本要素になること、あるいは基本要素の中に基本要素の中に入れることができることを言う。

x X

これにより、大規模システムを部分的にまとめ、把握しやすくできる。変更、図2 ペトリネットの例追加が容易にできる。
ペトリネットには図3に示す発火規則が3．解決原理を実現する基本構

離散事象システムと、問題の記述およびある。入力プレースにトークンがあるとき、そのトークンを取り去りトランジションが発火させる。発火とは指定された作業を行うことである。発火終了後、出解決原理をひとつのかたちで記述する必力プレースにトークンを入れる造の記述

要がある。その方法がペトリネットである（1）。

ベトリネットとは図1に示すようにプレース・トークン・アーク・トランジションの4つから構成されるネットである。
例を図2に示す○ プレース
●トークン
発火終了

アーク

トランジション

図3 ペトリネットの発火規則
ペトリネットにはプレースに複数のト

図1ペトリネットの要素ークンを許す場合やアークに重みをつける場合があるがここでは離散事象のみを扱うのでひとつのプレースに重みは1のセーフティネットとする。
ペトリネットは上記の事象の推移の他に

2

らDに推移する離散事象を図2のよ図4のA珊、図5のORの機能もある。

うに示すことができる。
また、仕事aの後で仕事bを行い、仕事c、仕事dと行くときも図2のように示すことができる。

（2）視覚性

トークンの位置によってシステムの図4 Am状態がわかる。

また、図7のように発火したトランジ＼ションをカラー表示することによっ）｝→トてどこの仕事が行われているかが確認できる。

」／
図5 0R

注意しなければならないのは図6のよBD 予十十ト≡

うにひとつのトークンに対して二つのトランジションが関わる場合である。一方Ⅹが発火するともう一方が発火できない。

図7 視覚性

これを競合という。競合がある場合、発火の優先順位や条件を考慮する必要があ（3）最適性

図2のようにAからEへ行くときり、事象の分岐に使用することもできる。に複数の経路がある場合、トランジションの少ない経路を選ぶのが最適性である。これは分岐を使ってできる。
（4）ロバスト性
スター トからゴールへの道が複数あり、最適状態で動かしている
ときに図8のように故障が生じた場合、別の経路があるため、A

図6 競合

からEの作業を継続することがで

4．実現可能性の検証

きる。

（1）離散事象の記述

たとえば、AからB、BからC、Cか3

1・1」＋→「十トト二f→、ノトーー】／／−し′￣川

ご・−「十−−【→（）−l′′▼ ／ ′Ⅹ

図8 ロバスト性⊂こ工］｛［Ⅰコ］（5）フラクタル性

プレース、トランジションの組み合わ

図10 置き換え・保守・拡張

せを水平・垂直につなぐことができる。

たとえば、図9のようにトランジション

6．フラクタル■ベトリネット・の中にネットを入れることができる。

システムの基本構造
ノ ーーーーー
ーーー

フラクタル・ペトリネットシステムの構ーーーー、築のために次の4つの構造を考える。
・木構造
システム全体の構造を示す
・データ構造プレース・トランジション・アーク

図9 フラクタル性の情報とそれぞれの関係を示す
・制御構造

5．フラクタル・ベトリネットシ

発火の流れを制御する
・通信構造

ステム

PC間のデータの流れを制御する

フラクタル・ペトリネット・システムと以下では木構造とデータ構造について詳

は、ペトリネットのフラクタル性を用い細を示す。

ることによって水平・垂直な構造を持つ（1）木構造システムである。たとえば、図10のよ図11のように全体の構成を表うに置き換えや保守、拡張が容易であり、すものである。

安全性が確認されたパーツを組み込んで効率の向上やトラブルの低減を図ることができる。

4

：新規にパネルを作成する：既存のパネルを開く：現在関し1ているパネルを上書き保存する；現在開いているノくネルを保存する：パネルを印刷する（現在週択不可）：N房ツールを終了します：描画ダイアログを表示させます：一般的な設定を行います：現在表示されているパネルを初期状矧こします：シミュレーションを行います；実際こ機械を利別させます：軌作を一時停止させます。
：案行orシミュレーションを綿了します。

図11 木構造（2）データ構造
表示画面と仮想画面

表示画面を24ピクセルごとに分割しNUJLたものを仮想画面とする。たとえば、水図12 プレースのデータ構造
トランジション

平方向をX、垂直方向をYとしてX＝20、Y＝10の点はⅩ＝0、y＝0として登録す

トランジションも構造体として登録し、る。

入力プレースの情報を持つinputと出力

0≦X≦23、0≦Y≦23の点（Ⅹ，Y）は仮想プレースの情報を持つOutPut と座標

画面で（Ⅹ，y）＝（0，0）となることを意（Ⅹ，y）のデータを入れる。構造体同士は味する。

fwrd，neXtでつなぐプレースやトランジションの表示は表示

NULL

画面の24＊24ピクセルの枠の中で描き、その位置（Ⅹ，y）をプレースやトランジションの登録に使う。
プレース

プレースは図12に示すように一つの構造体として登録し、その中に座標（Ⅹ，y）とトークンの有無のデータを入れる。構造体同士はfwrd，neXtでつなぐ。
X，yinput＝NULL
OutPUt＝NULL

NULL

5

図13 トランジションのデータ構造

インタppを記憶する構造体fpをつくり、トランジションの構造体tpのinputにアーク

fpのポインタを記憶する。これで入力プ

アークは図14に示すように二種類の構

レースとトランジションをつなぐことが造体を持ち、一つはアークの始点・中点・終点の座標（Ⅹ，y）を記憶する構造体apできる。（図15）
始点がトランジションで終点がプレースで始点から終点に向けて構造体同士はの場合にもプレースのポインタppを記nextでつなぐ。もう一つの構造体alは憶する構造体fpをつくり、トランジショ始点の座標（x，y）とポインタapを記憶ンの構造体tpのoutputにfpのポインタする構造体であり、構造体同士はを記憶する。これでトランジションと出fwrd，neXtでつなぐ。

力プレースがつながる。

NUL」

図14 アークのデータ構造
図15 入出力関数のデータ構造
この構造を元にフラクタル構造、制御入出力関数

入出力関数はトランジションの入力プ構造、通信構造を考えていく。

レースと出力プレースのつながりをあら7．スーパーバイザー

わす関数（構造体）である。
まず、アークの構造体al中の始点のポネットの動作部の解析・監視をするためにスーパーバイザー機能を置く。

インタapから始点の座標（x，y）を呼びスーパーバイザーには以下の機能を持出す。たとえば始点がプレースとしたとき、終点の座標（Ⅹ，y）がトランジションたせる。の座標であるか確認する。プレースのポ・可到達性

6

￣￣￣

￣二

1三テ1干三≡三⊥＼「図17のように複数の経路がある場

図18 デットロック

・実行時の故障検出

合に最短経路を選ぶことである。
・ロバスト性

トランジションが発火終了しない場合複数の経路がある場合に一つの経路 に故障とみなし、警告を鳴らす。にトラブルがあった場合に別の経路を選び、全体の動作を止めないことで8・おわりに経路ACBを選ぶことである。

大規模システムの問題の解決策の一方法〒 ＝−1I−＼

一＿築と実際のソフトクエ

イ

図17最適性・ロバスト性

9参考文献（1）椎塚久雄 実例ペトリネット コ

デッドロックでトークンが動かなくならないように調べる

ロナ社

たとえば、図18のように左下のトランジションが発火するとネットからトークンが無くなり、動作がとまってしまう。

このような構造になっていないかをスーパーバイザーで調べる。

7