Skip to main content
QUICK REVIEW

[論文レビュー] ACME vs PDDL: support for dynamic reconfiguration of software architectures

Jean-Eudes Méhus, Thaı́s Batista|arXiv (Cornell University)|Jun 1, 2012
AI-based Problem Solving and Planning参考文献 23被引用数 5
ひとこと要約

この論文は、PDDLベースの動的ソフトウェアアーキテクチャ再構成のための計画法を、ACMEの構造的制約と型を直接計画モデルに統合することで向上させている。静的検証によるアーキテクチャ的不変条件の確認と、PDDLの事前条件および導出述語への制約のエンコードにより、計画者が常に有効で整合性のある再構成シーケンスを生成することを保証している。クライアント・サーバーの例を用いた実証と、65の計画者における検証により、限られたPDDL機能サポートにもかかわらず17の計画者が4アクションの計画を正しく生成したことが示された。

ABSTRACT

On the one hand, ACME is a language designed in the late 90s as an interchange format for software architectures. The need for recon guration at runtime has led to extend the language with speci c support in Plastik. On the other hand, PDDL is a predicative language for the description of planning problems. It has been designed in the AI community for the International Planning Competition of the ICAPS conferences. Several related works have already proposed to encode software architectures into PDDL. Existing planning algorithms can then be used in order to generate automatically a plan that updates an architecture to another one, i.e., the program of a recon guration. In this paper, we improve the encoding in PDDL. Noticeably we propose how to encode ADL types and constraints in the PDDL representation. That way, we can statically check our design and express PDDL constraints in order to ensure that the generated plan never goes through any bad or inconsistent architecture, not even temporarily.

研究の動機と目的

  • 既存のPDDLベースの再構成計画法には制約サポートが不足しており、計画者が無効または整合性のない再構成シーケンスを生成する可能性があるという問題に対処すること。
  • PDDLによるソフトウェアアーキテクチャのエンコードを拡張し、ACMEの型システム、アーキテクチャスタイル、およびコンポーネントのバインディングやコネクタ制約などのアーキテクチャ的不変条件を含めること。
  • 静的検証により制約を事前に検証し、計画の事前条件にそれらを埋め込むことで、一時的な状態を含め、再構成の全過程で再構成計画がアーキテクチャ的不変条件を満たし続けることを保証すること。
  • 限られたPDDL標準サポートを持つ現在のツールを考慮して、実際の計画者を用いて拡張PDDLエンコーディングの実現可能性と正しさを評価すること。

提案手法

  • 著者らは、ACMEのコンポーネント・アンド・コネクタアーキテクチャモデル(型、ポート、ロール、バインディングを含む)をPDDLの述語とフラジェントにマッピングする。
  • 制約の効果を明示的に記述しないでアーキテクチャ状態を表現するために、量化論理式を用いて導出述語(例:unbound-port、unbound-role)を定義する。
  • ACMEの制約(例:型安全性、クライアント・サーバースタイル)およびアーキテクチャ的不変条件をPDDLアクションの事前条件としてエンコードし、静的検証を実施する。
  • 導出述語の使用を避け、明示的なエンコーディングを拡張することで、特に導出述語をサポートしない計画者との互換性を最大化する。
  • 制限付きの計画者(否定事前条件をサポートしないもの)との互換性を維持するため、量化子の展開と否定の処理を追加の述語を用いて行う。
  • 著者らは、クライアント・サーバー再構成の例を用いてエンコーディングを評価し、2011年国際計画コンペティションの65の計画者を用いて、計画の正しさとパフォーマンスを測定した。

実験結果

リサーチクエスチョン

  • RQ1PDDLを拡張して、ACMEのアーキテクチャ制約(型やアーキテクチャスタイルを含む)をネイティブにエンコードできるか。これにより、有効な再構成計画が保証されるか?
  • RQ2再構成プロセスの全過程(一時的状態を含む)でアーキテクチャ的不変条件をどのように強制できるか?無効または整合性のない構成を防げるか?
  • RQ3現在の計画ツールが、制約対応の再構成計画に必要な拡張PDDL機能をどの程度サポートしているか?
  • RQ4静的制約検証をPDDL計画と効果的に組み合わせ、コンパイル時に無効な計画を完全に排除できるか?

主な発見

  • 評価対象の65の計画者の中から、制約なしのクライアント・サーバー例に対して正しく4アクションの再構成計画を生成したのは17機であった。これはエンコーディングの実現可能性を示している。
  • 導出述語(例:unbound-port)をサポートしているのはたった1つの計画者にとどまり、このPDDL機能の採用は限定的であることが示された。
  • 事前条件による制約エンコードをサポートしている計画者は存在しなかった。これは、機能が意味的に妥当であるにもかかわらず、PDDL標準の実装にギャップがあることを示している。
  • 否定事前条件は6つの計画者でサポートされていなかったが、著者らは追加の述語と効果を用いてそれを模倣可能であることを示した。
  • 正しく動作する計画者のパフォーマンスは妥当であり、標準PC上でほとんどの計画者が300ms未満で問題を解消した。唯一の例外は2.5秒を要した。
  • 現在の計画者がPDDLの機能を完全にサポートしていないものの、提案されたエンコーディングは大多数の計画者と互換性があり、標準的な変換(量化子および否定の展開)を用いて適応可能であることが示唆された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。