エレベータの制御シミュレータによる
協調オブジェクト機構の評価
酒井 貴規 関口 靖規
1. 目的
オブジェクト指向は世の中の事象をシミュレートし、モデリングするのに適している。しかし、現在のオブジェクト指向概念は、人間社会において経験する協調動作を実現するための仕組みが充実していない。例えば、オブジェクト指向ではメッセージの到着によってオブジェクトのメソッドが起動されるが、現実にはオブジェクトの状態を監視して、その状態変化を他者に通知するような協調に必要な動作も頻繁に見られる。しかし、このような動作機構は現在のオブジェクト指向は持たない。
本研究はエレベータの制御モデルを基盤にして、協調オブジェクト機構を備えたエレベータシミュレータを試作し、協調機構の有効性を評価する。
2. 研究内容
エレベータシミュレータを試作するために、実世界のエレベータをモデリングした。エレベータシミュレータが行うべき仕事は、客を目的のフロアに運ぶことである。
2.1 エレベータシミュレータのモデル化
モデル化として、次の作業を行った。
(1) クラスの抽出
(2) クラスの属性と動作の決定
(3) クラス間の相互作用の決定
(2)と(3)の工程で、クラスの責務が決定される。
2.2 制御モデルの考案
次の役割を持つ制御モデルを考案した。
(1)
集中監視型(モデル1)
コントローラ(監視者)がエレベータ(被監視者)の状態を常に監視し、コントローラが動作を決定する。
(2) 協調動作型(モデル2)
コントローラは監視を行わず、エレベータ同士が協調して動作を決定する。
(1)と(2)では抽出されたクラスは同じであるが、責務の割り当て方が異なっている。
3. 評価
協調動作機構を備えたエレベータシミュレータについて評価し、次の結論を得た。
@ モデル1はエレベータの追加が容易である。
A モデル2は多数決による判断結果の確認が行なえるので、動作の保証(確実性)に優れている。
B モデル2は障害の発生がシステムに与える影響(処理効率の低下)が小さい。
C 運んだ客数に対するコミュニケーションの回数については、エレベータ数が少ない場合はモデル2の方が優れ、エレベータ数が多い場合はモデル1の方が優れている。
D 故障に対する処理効率については、故障がない場合は差が生じなかったが、故障がある場合はモデル1の方が優れている。
4. まとめ
クラス抽出の結果が同じでも、各クラスの責務を変更させることにより、作成されるシミュレータの性能に差が生じることが分かった。また、確実性や処理効率の面において、協調オブジェクト機構の有効性が確認できた。
参考文献
[1]
クレーグ・ラーマン著、依田智夫、今野陸監訳、依田光江訳:実践UML、プレンティスホール出版、1998
[2]
ハ―ベイ・M.ダイテル、ポ―ル・J.ダイテル著、小嶋隆一訳:Javaプログラミング(Vol.1)、プレンティスホ―ル出版、1999