# Engineering Self-Adaptive Systems through Feedback Loops
> [!abstract] 概要
> ソフトウェアシステムの複雑さの増大と、その環境の不確実性に対処するため、ソフトウェア技術者は自己適応性(self-adaptivity)に目を向けてきた。
> 自己適応システムは、絶えず変化する環境と、設計時には未知でありうる新たに生じる要求に対処できる。
> しかし、そのようなシステムを費用対効果よく、かつ予測可能な形で構築することは、工学上の大きな課題である。
> 本論文では、自己適応システムの工学の最新動向を調べ、設計プロセスにおける改善の余地を明らかにする。
> 最も重要な知見は、自己適応システムの設計において、自己適応を制御するフィードバックループを第一級の実体(first-class entities)にしなければならないということである。
> 我々は、フィードバックループを制御工学の観点から、また自然界と生物に存在する自己適応システムの中で調べる。
> 最後に、自己適応・自己管理ソフトウェアシステムの体系的で秩序だった工学を可能にするために、我々のコミュニティが取り組むべき重要な課題を明らかにする。
## 論文情報
- **著者**: [[Yuriy Brun]](University of Southern California)、[[Giovanna Di Marzo Serugendo]](Birkbeck, University of London)、[[Cristina Gacek]](University of Newcastle upon Tyne)、[[Holger Giese]](Hasso Plattner Institute at the University of Potsdam)、[[Holger Kienle]](University of Victoria)、[[Marin Litoiu]](York University and IBM Canada Ltd.)、[[Hausi Müller]](University of Victoria)、[[Mauro Pezzè]](University of Milano Bicocca / University of Lugano)、[[Mary Shaw]](Carnegie Mellon University)
- **媒体**: B.H.C. Cheng et al. (Eds.), *Software Engineering for Self-Adaptive Systems*, LNCS 5525, pp. 48–70, Springer, 2009
- **DOI**: 10.1007/978-3-642-02161-9_3
- **成立経緯**: 2008 年 1 月の Schloss Dagstuhl セミナー「Software Engineering for Self-Adaptive Systems」での議論の成果である。一部の考えは Müller・Pezzè・Shaw の ULSSIS 2008 ポジションペーパー、Müller らの自律コンピューティングの講義録、同書のロードマップ論文で先に示されている。
- **種別**: 実験を伴わないポジション・サーベイ論文
## 概要
自己適応システムを費用対効果よく予測可能に作るには、自己適応を駆動するフィードバックループを設計上の第一級の実体として可視化すべきだと主張する論文である。
汎用のフィードバックループ(収集・分析・決定・実行)、制御工学のフィードバック制御と適応制御(MIAC・MRAC)、自然界の正・負のフィードバックを整理し、IBM の自律要素と Rainbow が制御ループへ写像できることを示す。
最後に、モデリングから人間とコンピュータの相互作用までの 9 つの課題を挙げる。
## 問題設定
- ソフトウェアは、相互接続された部品が全体として部品単独からは自明でない性質を示す複雑系、とりわけ超大規模(ULS)システムの基盤になった。ULS システムの特徴は自己適応・自己組織化・創発であるが、技術者は要求と仕様に従って設計することに慣れており、要求を調整したり創発的性質を編成したりすることには慣れていない。
- 自己適応は要求工学・ソフトウェアアーキテクチャ・ミドルウェア・コンポーネントベース開発などで研究されてきたが、多くは孤立していた。制御理論、AI、ロボティクス、マルチエージェント、耐障害計算、自律コンピューティング、生物学など、ソフトウェア工学の外側でも多様な共同体が自己適応とフィードバックを扱ってきた。
- 自己適応システムは、集中か分散か、トップダウンかボトムアップか、フィードバック遅延(遅い対速い)、環境の不確実性(低い対高い)といった軸で特徴づけられる。
- **トップダウン型**は中央のコントローラやポリシーに導かれ、自身と大域目標の明示的な内部表現を持つことが多い。構成要素を分析すれば全体の振る舞いを合成・演繹できる。
- **協調型(自己組織化型)**は中央の権威を持たず、単純な規則で局所的に相互作用する多数の構成要素からボトムアップに組み上がる。大域的な振る舞いは局所相互作用から創発し、局所の性質だけから大域の性質を演繹するのは難しい。
- 実際の系は両極の中間にあり、例えば Web は大域的には分散だが局所的な部分 Web は高度に集中している。
- ソフトウェア工学はシステムの静的アーキテクチャを重視して動的側面を軽視し、制御工学は逆に動的なフィードバックループを重視して静的アーキテクチャを軽視してきた。Magee と Kramer の動的構造の研究を起点とする後続研究はフィードバック系を実現したが、実際のフィードバックループは隠蔽または抽象化されていた。
- 一方でソフトウェアプロセスでは、Royce のウォーターフォールの各段のフィードバック、Boehm のスパイラルモデルのリスクフィードバック、Lehman の「ソフトウェアプロセスは多層・多重ループのフィードバック系である」という指摘のように、フィードバックの重要性は認識されていた。
## 提案手法
本論文の提案は手法ではなく、フィードバックループを中心に据えて自己適応システムを捉える枠組みである。
### 汎用フィードバックループ
フィードバックループの本体は収集(collect)・分析(analyze)・決定(decide)・実行(act)の 4 活動である。センサやプローブが実行中のシステムと文脈からデータを集め、データは洗浄・フィルタ・剪定されたうえで過去と現在の状態のモデルとして保存される。診断が傾向と兆候を推定し、計画が未来を予測してアクチュエータやエフェクタを通じた働きかけを決める。
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/fig01-autonomic-control-loop.png]]
*Figure 1: 自律制御ループ(Dobson らのサーベイ [21] から引用)。収集・分析・決定・実行の 4 活動が環を成す。*
この自律制御ループは、1980 年代初頭に AI 分野が自律移動ロボットの制御に用いた sense-plan-act 方式を精緻化したものである。ただしこの図は活動に焦点を当て、ループを巡るデータと制御の流れを詳述しない。また図は単一ループを示すが、実用システムでは通常、複数の独立したループが関わる。
著者らは各活動で答えるべき工学上の問いを列挙し、開発中に明示的に特定・記録・解決すべきだとする。
- **収集**: 必要なサンプリングレート、センサデータの信頼性、センサ間で共通のイベント形式があるか、センサがシステム同定に十分な情報を与えるか。
- **分析**: 現在状態をどう推定するか、どれだけの過去状態が将来必要か、検証のために何を保存するか、モデルが現実にどれだけ忠実で時間的に安定か。
- **決定**: 将来状態をどう推定するか、オフラインシミュレーション・効用/目標関数・システム同定のどれで決定するか、複数ループ間と単一ループ内で自己適応の優先度をどう決めるか。
- **実行**: いつ安全に適応できるか、異なるループの調整が互いにどう干渉するか、集中型と分散型のどちらのフィードバックが大域目標の達成に役立つか、アクチュエータが系を望む方向へ動かすのに十分な指令権限(command authority)を持つか。
### 制御工学のフィードバックループ
制御理論は、性能・安定性・感度・正しさを解析する確立した数理モデルと道具を持つ。ソフトウェア工学、とりわけ SEAMS コミュニティは、フィードフォワード制御とフィードバック制御、可観測性、可制御性、安定性、ヒステリシス、個別の制御戦略が自己適応ソフトウェアの推論にどこまで適用できるかを探っている。著者らは、計算機の先駆者やプログラミング言語設計者が数学者ではなく制御技術者として訓練されていたなら、現代のプログラミングパラダイムはプロセス制御の要素を備えていたかもしれないと述べる。
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/fig02-feedback-control-loop.png]]
*Figure 2: 古典的なフィードバック制御ループ。参照入力 up と、センサ経由で戻された出力 yb の差からコントローラが補正 u を決め、外乱 d を受けるプロセスの出力 yp を up に近づける。*
フィードバックを使う主な理由は、外乱、変数のノイズ、コントローラ設計に使う環境モデルの不完全さとして現れる不確実性の影響を減らすことである。例として、予測困難なインターネット負荷を主要変数とする Web サーバファームの QoS 管理が挙げられる。
適応制御(adaptive control)は、制御対象のゆっくりした変化に対応するため、コントローラのモデルや制御則を変更する。主コントローラの上に 2 つ目の制御ループを置き、このループは下位のフィードバックループよりずっと遅く動く。Web サーバファームでは、主ループが負荷の急増に素早く反応して QoS を管理し、遅いループが時間とともに現れる異常に合わせて制御則を調整する。
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/fig03-miac-mrac.png]]
*Figure 3: 適応フィードバック制御ループの 2 つの標準方式。(a) モデル同定適応制御(MIAC)、(b) モデル規範適応制御(MRAC)。*
- **MIAC(Model Identification Adaptive Control)**: 参照入力を考慮せずプロセスを観測するだけで動的な参照モデルを構築する。システム同定要素が制御入力 u とプロセス出力 yp から現在のプロセスのモデル(観測できない状態を含む)を推定し、調整機構がコントローラのパラメータを設定する。外乱 d の影響があるため、通常は複数の制御周期にわたって観測してから調整する。確立した参照モデルは無いが、関連する特性を同定できるだけのプロセス知識がある場合に向き、コントローラモデルのより大きな変動にも対応しうる。
- **MRAC(Model Reference Adaptive Control)**: 参照入力を含む事前定義の参照モデル(方程式やシミュレーションモデル)に依存する。もとは飛行制御問題のために提案された。プロセス出力 yp を参照モデルの望ましい応答 ym と比較し、将来の適合が改善するようにコントローラのパラメータを調整する。信頼できる参照モデルがあり、コントローラモデルが時間とともに大きく変わらない場合に頑健な制御を実現する。
Kokar らが指摘するように、パラメータだけでなく構造の変更まで扱う再構成可能制御(reconfigurable control)など、古典制御や適応制御を超える形態の制御ループも自己適応ソフトウェアには使いうる。
### 自然界のフィードバックループ
自然界の自己適応系は、単一の明瞭な制御ループを持たないことが多い。コントローラ・プロセス・その他の要素の分離が不明瞭で、高度に分散しており、個体は大域目標を知らず、局所的な振る舞いの相互作用が大域目標を創発的性質としてもたらす。
- 生物系は分散構造のおかげで誤り訂正・耐障害性・スケーラビリティを備える。侵入者に遭遇しても、資源を侵入者対応へ回して性能を落としながら動き続ける(インフルエンザ感染中も免疫系がウイルスを攻撃しつつ人間は機能し続ける)。ミミズやヒトデは半分に切られても欠けた部分を再生するが、半分潰れたラップトップや半分だけ OS を入れた機械が動くことは想定できない。
- **正のフィードバック**は摂動を強めて増幅する。アリが餌への経路に残すフェロモンは、経路を使うアリが増えるほど強化される。
- **負のフィードバック**は摂動を打ち消す。血糖値が上がるとインスリンが放出され、血糖値が正常に戻る。
- 正と負のフィードバックは組み合わさって系の安定を保つ。正のフィードバックだけでは系は限界を超えて制御不能になり、負のフィードバックだけでは系が最適な振る舞いを探索できない。
- 分散型の自己組織化系は、局所情報だけに基づく内部規則に従う多数の単純な構成要素から成る。規則は個々の構成要素のレベルで正・負のフィードバックを支え、多数の相互作用が大域的な制御ループをもたらす。
### ソフトウェア工学におけるフィードバックループ
著者らの観察では、適応システムのアーキテクチャを文書化・提示するとき、フィードバックループはしばしば隠蔽・抽象化・分散・内部化される。UML などの一般的な設計記法は制御を記述・分析し不確実性を推論するためのビューを持たない。著者らは、記法の欠如が制御を文書化する明示的なタスクの欠如を招き、それがフィードバックループの明示的な設計・分析・検証の欠落につながると推測する。
そのため、制御ループを明示するだけでなく、ループの性質も明示すべきだとする。Garlan らも、システムの機能の関心事と自己適応の関心事を分離するため、自己適応を内部に埋め込まず外部化すべきだと主張している。
ループを見えなくすると、フィードバックに伴う証明責務(proof obligations)を見落とす。具体的には、センサから得た yp の推定 yb が十分に良いこと、制御戦略が問題に適切であること、必要な補正がすべて既存のアクチュエータで達成できること、補正が安定性などの大域的性質を保つこと、時間制約が満たされることである。ULS システムでは異なるチームが独立に開発した多数の自己適応機構を設計時に調整しきれず、予期しない相互作用が全体の振る舞いに悪影響を与えうる。ループの可視化は、競合する自己適応機構の相互作用による不安定や発散を防ぐ分散協調機構を設計するための必須の一歩であるとする。
先行する試みとして、Shaw はオブジェクト指向設計とプロセス制御に基づく設計法を比較し、離散的な状態を持つオブジェクトの同定ではなくフィードバックループとその分析が支配するアーキテクチャを提案した。Hellerstein らの書籍([[Feedback Control of Computing Systems]])は計算機システムのフィードバック制御の設計と応用を初めて実践的に扱った。Shaw・Müller・Pezzè は ULS システムの設計に明示的な制御ループに基づく設計パラダイムが有用だと主張し、これが本論文の議論のきっかけになった。
### 明示的な制御に着想を得た解
[[@2003__Computer__The Vision of Autonomic Computing|Kephart と Chess]] が導入し IBM のアーキテクチャ青写真で普及した自律要素(autonomic element)は、図2のフィードバック制御ループと図1の各段階を明示的に露出した最初の自己適応アーキテクチャであり、ループを分解・管理するための機能部品とインタフェースを定める。
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/fig04-ibm-autonomic-element.png]]
*Figure 4: IBM の自律要素。自律マネージャが Monitor・Analyze・Plan・Execute と共有の Knowledge Base から成り、センサとエフェクタで管理対象要素とつながる。*
- 自律要素は管理対象要素と、フィードバック制御ループを中核に持つ自律マネージャから成る。自律マネージャと管理対象要素は、汎用フィードバックループのコントローラとプロセスにそれぞれ対応する。
- モニタは管理対象と文脈を感知して関連イベントを知識ベースに保存し、アナライザは知識ベースのパターンとイベントを比較して兆候を診断し、プランナは兆候を解釈して変更計画を立て、エフェクタを通じて実行する。
- センサとエフェクタから成る管理インタフェースは管理対象要素と自律構成要素の間で標準化され、自律要素間の協調とデータ・制御の統合を容易にする。
- 自律要素自体が管理対象要素にもなりうる。その場合は自律マネージャ上部のセンサとエフェクタで測定値を出し、規則やポリシーを制御入力として受け取る。上部にエフェクタが無ければ規則やポリシーはループに固定される。
- 著者らは、MAPE-K ループの各段階は図1の汎用自律制御ループにそのまま対応し、両図とも主活動を強調する一方でループを巡る制御とデータの流れを抽象化していると指摘する。そのうえで、自律要素は概念上、古典制御理論のフィードバック制御ループそのものだと結論する。
Garlan らの Rainbow は、外部コントローラを適切なアクチュエータで拡張した下位システムに付け加えて自己修復を行う。著者らは Shaw の精緻化したフィードバック制御アーキテクチャ(コントローラを比較・補正計画・補正実行の 3 部品に分け、センサが実行中のシステムと稼働環境の両方を感知し、観測をモデル値へ変換する部品を明示する)を Rainbow の図に重ねて配置した。
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/fig05-rainbow-shaw.png]]
*Figure 5: (a) Rainbow システムのアーキテクチャと (b) Shaw の精緻化したフィードバック制御アーキテクチャ。*
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/table1-rainbow-mapping.png]]
*Table 1: Rainbow の構成要素と Shaw のアーキテクチャの対応。Rainbow は予測を持たない。*
表1 の対応では、Rainbow の監視機構がプローブに、アーキテクチャモデルが目標と現在状態のモデルに、アナライザが比較に、修復ハンドラが補正計画に、トランスレータとランタイムマネージャが補正実行とコマンドに当たり、予測(Predictions)だけが Rainbow に欠ける。
MIAC 方式をソフトウェアに適用した例が 2 つ示される。
![[_attachments/Engineering-Self-Adaptive-Systems-through-Feedback-Loops/fig06-adaptive-control-applications.png]]
*Figure 6: 自己適応システムへの適応制御方式の応用。(a) フィードバックループによる自己最適化、(b) 複数の MIAC 方式の絡み合い。*
- **性能調整と資源プロビジョニングの自己最適化(図6(a))**: 頑健なフィードバック制御は系モデルの不完全な知識を許容し、モデルを頻繁に再構築する前提に立つ。Estimator が直接観測できない状態変数 x を推定し、x で待ち行列ネットワークの性能モデルをオンラインで調整する。性能モデルは動作点まわりの性能出力と入力の量的な依存関係 yu を与え、この依存は摂動 w やソフトウェアエージング・キャッシュ・最適化によるパラメータの時間変化を反映して動的に変わる。Controller は yu を使い、オンライン最適化で最小の資源消費で性能目標を満たすパラメータだけを変更する。
- **自律シャトルのメカトロニクスシステム(図6(b))**: 無線ネットワーク上でオンデマンドかつ分散的に動く自律シャトル群である。各シャトルは区間制御から線路の特性データを受け取り、自身の特性と合わせてその区間の制御動作を最適化し、得た経験を区間制御へ戻して他のシャトルのモデル改善に使わせる。各シャトルは Adjustment Mechanism と Controller だけを実装し、System Identification は過去に報告したシャトル群と区間制御が集合的に担う。複数の要素が単一の適応制御ループに関わる協調的な自己適応の一形態である。
### 自然界に着想を得た解
自然に着想を得た工学は制御理論より若い分野で、自己適応ソフトウェア向けの解はまだ分類・比較されていない。
- **結晶成長とタイル・アーキテクチャスタイル**: 結晶はゆっくり育つと付着の弱い分子が離れて誤りの少ない結晶になり、速く育つと誤った付着が固定されて誤りが多くなる。この帰還を利用したタイル・アーキテクチャスタイルは、NP 完全問題の計算を大規模ネットワークに安全・高信頼・スケーラブルに分散し、障害と敵対者に耐える。制御ループは正負に分類しにくいが図2のループに収まる。不正な部品が付着すると以後の付着が進まず局所的に「行き詰まり」、周囲の部品は直近に付いた近傍をいくつか外して付着を再開する。部品の選択が無作為なため、不正な主体が組み立てに 2 回以上入り込むことは起きにくい。
- **魚群と鳥の群れ**: 他の物体と最小距離を保つ、近傍と速度を合わせる、近傍の重心へ向かうという引力と斥力の規則で直接通信し、反応の波が群れ全体へ伝わる。プロセススケジューラやネットワークルーティングプロトコルも似た機構を使う。
- **スティグマジー(stigmergy)**: アリやハチは環境に手がかりを残す間接通信を使う。群ロボット研究は静的・動的最適化問題にスティグマジーを多用し、無人輸送機の協調にも使われている。
- **哺乳類の免疫系**: 抗原を検知し、集団的な分散応答で破壊する。悪性主体の検知・除去と正常な細胞過程への干渉を釣り合わせ、学習を用いる。ソフトウェアの侵入検知は既に免疫系の考えを一部利用している。
## 新規性
- ソフトウェア工学が軽視してきたフィードバックループを、自己適応システムの設計・分析・検証の第一級の実体に格上げすべきだという主張を、制御工学・自然界・既存のソフトウェア工学の 3 方向から論証した。
- IBM の自律要素と Rainbow という、制御理論の語彙で設計されていない代表的なアーキテクチャを古典制御ループへ明示的に写像し、ループの可視化が可能であることを示した。
- フィードバックに伴う証明責務と、各活動段階で答えるべき工学上の問いを列挙し、ループの可視化が単なる記法の問題でなく保証の問題であることを示した。
## 実験設定
実験は無い。論証は既存システムの事例(Web サーバファームの QoS 管理、IBM の自律要素、Rainbow、性能モデルに基づく自己最適化、自律シャトル、タイル・アーキテクチャスタイル)の再解釈による。
## 実験結果
定量的な結果は無い。成果物は次の 9 つの課題の一覧である。
- **モデリング**: 制御ループを明示し自己適応の性質を露出するモデリング支援。何を観測でき何に影響を与えられるかを捉え、ドメイン固有記法を伴う参照モデルのような合意された標準が望ましい。群れのような高度に分散した自己組織化系にも、現在は暗黙にしか存在しない制御ループの適切なモデルが必要である。システム状態やポリシー・ビジネス目標のように本来暗黙に符号化される性質を実体化し、実行時に照会・変更できるようにする。
- **制御ループ**: 制御ループの型とループ間相互作用の機構の参照ライブラリを作る。既存システムを掘り起こして自己適応機構を分類・カタログ化する。自然系は独特で新しい制御ループの豊かな源である。
- **アーキテクチャと設計**: 単一ループの系は複数ループの系より推論しやすいが後者のほうがはるかに一般的である。ループ数を最小化するか、時間(異なる時間スケールで動かす)または空間(変数間の依存を弱める)でループを分離する。完全に分離できなければループ間の相互作用とその扱いを設計で明示する。制御ループの階層化は上位から下位へ影響し異なる時間スケールで動くので、階層間の予期しない干渉を避け設計の複雑さを減らす。参照アーキテクチャは、ループの数、構造的配置(直列・並列・階層・分散)、相互作用、データフロー、許容範囲、トレードオフ、サンプリングレート、安定性と収束の条件、ヒステリシスの仕様、文脈の不確実性を強調すべきである。制御ループ向けの Attribute-Based Architectural Styles を作れるかを問う。
- **意図しない相互作用の検知**: ULS システムのように階層化や分離が難しい系では、独立に開発されたループが予期しない相互作用を起こしうる。自然からは、望ましくない相互作用をしないループを持つ系を掘り起こすことと、そうした系に至った過程(進化)を理解して工学系のループの選択・分離を自動化することの 2 つの方向が示唆される。
- **保守**: 自己適応システムと従来システムの保守性の比較、動的可変性を持つ系が静的な系より保守しやすいか。反射層を持つ系ではメタレベルとベースレベルの両方が保守対象になる。
- **ミドルウェア支援**: 再利用可能なコード基盤が無いため構築が面倒である。標準化されたインタフェースとサービス、異種プラットフォーム、迅速なプロトタイピング、トップダウンとボトムアップや集中と分散を組み合わせるハイブリッドアーキテクチャを支える基盤が必要である。
- **検証**: 古典制御工学は連続的なフィードバック制御ループの解析に高度な解を持つが、アーキテクチャ変更のように離散的またはハイブリッドな現象もある。離散事象システム、切替系、ハイブリッド系の理論が役立ちうる。
- **再工学**: 多くの課題はグリーンフィールド開発の視点で扱われているが、レガシー応用にも自己適応機能が有益である。既存システムに制御ループをどう注入するか、センサとエフェクタを(半)自動で付加する技術、部分から事業基盤全体へ段階的に移行する方式(chicken little approach)が論点となる。
- **人間とコンピュータの相互作用**: 自律的に動く系でも利用者をループに留める必要がある。系の状態を利用者に返すことが信頼の確立と維持に不可欠で、負荷変化に応じて Web サーバを再構成したら管理者に適応の効果を(視覚的に)示す。利用者が自己適応機能を無効化でき、利用者の明示的な選択と矛盾しないようにし、センサが集めた情報とその使われ方を示す。個人データなら法的義務もありうる。
## 考察
- 結論では、トップダウン型のアーキテクチャでは明示的に設計されたフィードバック制御ループが自己適応部分の工学を導き、自然に着想を得た系ではループを同定してその影響を理解することが不可欠だとまとめる。
- 制御理論と自然系のループ概念は有益な洞察を与えるが、ソフトウェア工学は自らの問題領域に合った独自のフィードバックループの概念を発展させる必要があると述べる。
- 自律要素・Rainbow・性能モデルによる自己最適化・シャトル群という異なる出自の系が、いずれも図2またはその適応制御版へ写像できたことが、ループを共通の分析単位にできるという主張の根拠になっている。
## 強み / 弱点・課題
- **強み**: 制御理論・自然系・ソフトウェアアーキテクチャという別々の共同体の語彙を、フィードバックループという単一の単位で横断的に対応づけている。
- **強み**: 各活動段階の問いと証明責務を具体的に列挙しており、設計レビューの観点として再利用しやすい。
- **弱点・課題**: 主張は事例の再解釈による論証で、ループを可視化した設計が実際に品質や開発費用を改善するという実証は無い。
- **弱点・課題**: 自然系の制御ループについては比喩的な記述が中心で、分類や比較の枠組みは課題として残されている。
- **弱点・課題**: 図1について「データと制御の流れを詳述しない」と述べた直後に「構成要素間の制御の流れは一方向である」と続くなど、記述が粗い箇所がある。アーキテクチャと設計の課題では MIAC と MRAC を指して「Figures 3(b) and 3(b)」と誤記している。
## 関連
- 概念: [[自己適応システム]] / [[フィードバックループ]] / [[MAPE-Kループ]] / [[自律コンピューティング]] / [[適応制御]] / [[自己組織化]]
- 実体: [[Yuriy Brun]] / [[Giovanna Di Marzo Serugendo]] / [[Cristina Gacek]] / [[Holger Giese]] / [[Holger Kienle]] / [[Marin Litoiu]] / [[Hausi Müller]] / [[Mauro Pezzè]] / [[Mary Shaw]] / [[IBM]] / [[Jeffrey O. Kephart]] / [[Joseph L. Hellerstein]]
- 関連ソース: [[@2003__Computer__The Vision of Autonomic Computing]] / [[Feedback Control of Computing Systems]]
## 出典
- [[.raw/papers/Engineering-Self-Adaptive-Systems-through-Feedback-Loops.pdf]]
- Brun, Y., Di Marzo Serugendo, G., Gacek, C., Giese, H., Kienle, H., Litoiu, M., Müller, H., Pezzè, M., and Shaw, M., "Engineering Self-Adaptive Systems through Feedback Loops," in B.H.C. Cheng et al. (Eds.), *Software Engineering for Self-Adaptive Systems*, LNCS 5525, pp. 48–70, Springer, 2009. https://doi.org/10.1007/978-3-642-02161-9_3