280 likes | 569 Views
自律分散型道路交通システムを対象としたゴール指向要求分析手法 C-KAOS. 九州工業大学大学院 ○ 野村潤 成瀬龍人 外村慶二 鵜林尚靖 株式会社デンソー 司代尊裕 岩井明史. 概要. 研究内容 ITS を用いた予防安全のための要求分析 ITS ( Intelligent Transport Systems ) 渋滞、事故、環境問題を情報通信により解決 ・ 車車間通信:車載システム同士の協調 ・ 路車間通信:路上インフラと車載システムの協調. 分割. 分析の難しさ ・自律性:交通状況に応じて振る舞いが変わる → 発生する状況が多い
E N D
自律分散型道路交通システムを対象としたゴール指向要求分析手法 C-KAOS自律分散型道路交通システムを対象としたゴール指向要求分析手法 C-KAOS 九州工業大学大学院 ○野村潤 成瀬龍人 外村慶二 鵜林尚靖 株式会社デンソー 司代尊裕 岩井明史
概要 • 研究内容 • ITSを用いた予防安全のための要求分析 • ITS(Intelligent Transport Systems) • 渋滞、事故、環境問題を情報通信により解決 • ・ 車車間通信:車載システム同士の協調 • ・ 路車間通信:路上インフラと車載システムの協調 分割 分析の難しさ ・自律性:交通状況に応じて振る舞いが変わる →発生する状況が多い ・分散性:様々なシステムが協調し合い事故を防止 →相互作用が多い ⇒網羅的な分析が難しい(複雑化、巨大化) ・・・ 提案手法C-KAOS(Component-based KAOS) ・ 構成要素ごとにゴールモデル構築 ・ シナリオベースに合成 ⇒分析の容易化 合成 信号無視防止 車線変更時衝突防止
目次 • 分析モデル構築の問題 • C-KAOS • 記述例 • まとめと今後の問題
KAOS KAOS(Knowledge Acquisition in autOmated Specification) ・ある要求を階層的に分解してゆき、要求を達成するための要件を抽出する ・機能要件の抽出、トレードオフの明確化、形式検証に主に役立つ Why ↓ What ↓ Who KAOSを用いた理由 機能要件、衝突、検証が狙い 理解し易い アクタを考えずに済む ・・・ ・・・ ゴール 要件 エージェント AND分解 OR分解
KAOSモデル構築の問題 ITS開発では以下を踏まえた分析が必要 自律性(自己適応) ・発生する状況 ・振る舞いの変化 分散性 ・相互作用 ・トレードオフ 事故が起こっていない 影響を与えるものが多い 対物距離を適度に保っている 交通規則を守っている 環境によって 依存関係が変化する 車間を適度に保っている 停止線を守っている 信号を守っている 車線に沿って走行している 夜間ヘッドライトを付けて 進行方向に 障害物がない 制限速度を守っている 表示色が伝わっている ランプを点灯している 信号機が設置してある 前方車両との車間が適切 左右の車との車間が適切 後方車両との車間が適切 網羅的に表現することが困難 環境によって 振る舞いが変化する 運転手がよそ見をしてない 信号機が物に隠れていない 信号機を運転手が見ている 切替規則が定義してある 前方車両の速度に合わせて走行している ランプが壊れていない 距離が狭いときに速度を上げない 距離が広いときに速度を落とさない 距離が適切なときに速度を上げ下げしない
C-KAOS ドライバーのゴール 目的地に着く アプローチ 分割統治の考え方をKAOSに適用 ・ステークホルダー毎にモデル作成 ・シナリオベースにモデルを合成 ⇒大きな問題領域をゴールモデルの組み合わせで表現 KAOSを拡張 ・属性の付加 ・合成規則の定義 事故を起こさない その他 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う 車のゴール 道路上の情報を得る 情報をドライバーへ伝える information information 分析ステップ シナリオの作成 ステークホルダーの抽出 ステークホルダー毎のモデル作成 モデルの合成 停止線の ゴール 信号の ゴール 表示色を車に伝える 停止線の存在を知らせる 車の存在を知る 停止線の存在を送信する 表示中の色を知る 車の存在を知る 情報を送信する
分析ステップ • シナリオの作成 • ステークホルダーの抽出 • ステークホルダー毎のモデル作成 • モデルの合成 ステークホルダーの定義 「問題領域内で振る舞いを起こすもの また、振る舞いに制約を与えるもの」 ※依存関係は組み合わせで表現する ⇒関係を含まないように切り分ける 1.シナリオの作成 シナリオ)赤信号時に車両を交差点内に進入させない 2.ステークホルダーの抽出
分析ステップ • シナリオの作成 • ステークホルダーの抽出 • ステークホルダー毎のモデル作成 • モデルの合成 信号の色を守らせる 表示色を車に伝える 表示に従わない車に操作支援を行う ステークホルダー毎のモデル作成 ・他のステークホルダーの要求を含まない 例)車両はゴール「信号を守る」を持たない信号機の「信号を守らせる」というゴール ⇒複数の視点を含まないようにモデルを作成 表示に沿わない行動をとろうとしている車に警告する 事故を起こさない 道路上の情報をドライバーへ伝える 操作命令に従う ドライバーの意思を他の車に伝える
信号の色を守らせる 表示色を車に伝える 分析ステップ • シナリオの作成 • ステークホルダーの抽出 • ステークホルダー毎のモデル作成 • モデルの合成 表示中の色を知る 車の存在を知る 情報を送信する ゴールへの属性の付加 動作、対象、説明を抽象化したもの 例)車の存在を知る →V:sense, O:object, C:external ⇒ゴールモデルの合成に用いる リンクへの属性の付加 アクティブになる条件と状態名を付加 例)車両が信号機の影響範囲に入ったとき 信号機があることを伝える →P:information, T:影響範囲に入った ⇒環境に応じた要求の変化を表現 -V : sense, send -O : state, object, message, command -C : internal, external -P : information -T : 影響範囲に入った • -V : sense, send • O : state, object, message • C : internal, external -V : sense -O : state -C : internal -V : sense -O : object -C : external -V : send -O : message -C : external 種類 V : sense, send, output, receive, know, act O : message, state, object, command, C : internal, external, P : information, warning, operation • V : VERB(動作) • O : OBJECT(動作の対象) • -C : COMPLEMENT(対象の説明) -P : PHASE(ACTIVEになる状況名) -T : TRIGGER(ACTIVEになる条件)
目的地に着く 上位 事故を起こさない その他 分析ステップ • シナリオの作成 • ステークホルダーの抽出 • ステークホルダー毎のモデル作成 • モデルの合成 • 名称による合成 • 属性による合成 名称による合成 ・同じ名称のゴールを一つにまとめる ⇒属性を付加し辛いゴールの合成に利用 下位 事故を起こさない 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う 目的地に着く 事故を起こさない その他 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う
-V : receive, output -O : message -C : external • V : receive • O : message • -C : external -V : output -O : message -C : external 分析ステップ • シナリオの作成 • ステークホルダーの抽出 • ステークホルダー毎のモデル作成 • モデルの合成 • 名称による合成 • 属性による合成 属性による合成 ・send属性の親ゴールを receive属性のゴールと繋ぐ (条件:対象O、説明Cが等しい) • -V : sense, send • O : state, object, message • C : internal, external -V : sense -O : state -C : internal -V : sense -O : object -C : external -V : send -O : message -C : external -V : receive, output -O : message -C : external • V : receive • O : message • -C : external -V : output -O : message -C : external • -V : sense, send • O : state, object, message • C : internal, external -V : sense -O : state -C : internal -V : sense -O : object -C : external -V : send -O : message -C : external
例題:信号無視防止 表示を守らせる 停止線を 越えさせない シナリオの説明 赤信号時に車両を交差点内に進入させない ステークホルダ ドライバー、車、信号、停止線 各ステークホルダのトップゴール ドライバー:目的地へ着く 車:事故を起こさない 信号:車に信号を守らせる 停止線:停止線より前に車を停車させる 環境に応じて変化するゴール 交差点との距離が大きいとき⇒情報提供フェーズ 交差点との距離が小さく、速度が大きいとき⇒警報フェーズ 交差点直前で、停車していないとき⇒操作支援フェーズ 止まらない! 自動ブレーキ 接近したけど 止まる気配がない 「止まりなさい」 事故を起こさない まだ遠いけど 影響範囲内 「信号あります」 情報提供フェーズ 警報フェーズ 操作支援フェーズ
ドライバーと車両のゴールモデルの合成 ドライバーのゴール 目的地に着く 事故を起こさない その他 名称による合成 車のゴール 事故を起こさない 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う 道路上の情報を得る 意思表示機能の 状態を把握する 他の車が分かる 他の車へ知らせる 操作命令を 実行する 操作命令を受け取る 情報をドライバーへ伝える
車両と信号機のゴールモデルの合成 車のゴール 事故を起こさない -V : receive -O : command -C : external • V : receive • O : message • -C : external 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う 道路上の情報を得る 意思表示機能の 状態を把握する 他の車が分かる 他の車へ知らせる 操作命令を 実行する 操作命令を受け取る 情報をドライバーへ伝える 属性による合成 send-receive 信号の ゴール 信号の色を守らせる information operation -V : send -O : command -C : external warning 表示色を車に伝える 表示に従わない車に操作命令を送る 表示に沿わない行動をとろうとしている車に警告する -V : send -O : message -C : external 表示中の色を知る -V : send -O : message -C : external 車の存在を知る 情報を送信する 表示に従わないことを判断する 表示中の色を知る 車の存在を知る 操作命令を送信する 表示に沿わない行動をとろうとしていることを知る 表示中の色を知る 車の存在を知る 情報を送信する
合成結果(情報提供フェーズ) ドライバーのゴール 目的地に着く 事故を起こさない その他 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う 車のゴール 道路上の情報を得る 情報をドライバーへ伝える まだ遠いけど 影響範囲内 「信号あります」 information information 停止線の ゴール 信号の ゴール 表示色を車に伝える 停止線の存在を知らせる 車の存在を知る 停止線の存在を送信する 表示中の色を知る 車の存在を知る 情報を送信する
合成結果(操作支援フェーズ) ドライバーのゴール 目的地に着く 事故を起こさない その他 止まらない! 自動ブレーキ 車のゴール 道路上の情報をドライバーへ伝える ドライバーの意思を他の車に伝える 操作命令に従う 操作命令を受け取る 操作命令を 実行する operation operation 停止線の ゴール 表示に従わない車に操作命令を送る 止まれない場合に操作命令を送る 信号の ゴール 操作命令を送信する 車の存在を知る 止まれないことを知る 表示中の色を知る 車の存在を知る 操作命令を送信する 表示に従わないことを判断する
6.まとめと今後の問題 • まとめ • KAOSに対して、属性の付加、合成規則の定義を行うことで 分割統治を可能にし、大きな問題領域の分析を容易化 • 今後の課題 • 手法の洗練 • 現状 • 細分化の指標がない • 合成規則=send-receiveのみ • 今後 • 記述例を増やす • ゴール、細分化規則、合成規則の洗い出し • 形式化(時相論理式) • 仕様充足の検証 • 合成規則に適用
今後の課題(1/3) • 属人性の緩和 • ゴールの記述:多少の言葉の差異は、概念辞書を利用した置換で吸収できる • 細分化の方針 : パターンの作成(パターンの正当性は論理検証) 停止不可能な車両を操作支援 止まれない場合に操作命令を送る メッセージを送る 操作命令を送信する 車両をセンシング 停止可能性の計算 車の存在を知る 止まれないことを知る 概念辞書を用いた抽象化 C-KAOS語群に置換 属性値の付加 アーキテクチャの生成 Formalなゴールモデルの生成 (道路交通システムに特化=「正しさ」が議論できる)
今後の課題(2/3) • 属人性の緩和 • ゴールの記述:多少の言葉の差異は、概念辞書を利用した置換で吸収できる • 細分化の方針 : パターンの作成(パターンの正当性は論理検証) 現状の パターン 運転支援 C→◇T 自動操作 C→◇M M→◇T 外部情報取得 内部情報発信 運転支援型 (自動車) Milestone-driven refinement Formal refinement patterns 制約付加 C→◇T 操作命令 情報提供 警報 C∧D→◇T C→◇D C→CWT 制約付加型 (信号機や停止線) Case-driven refinement
今後の課題(3/3) 現状:組み合わせの順番が不可変 ⇒構成要素のゴールモデルを木構造で記述することに問題があるのでは・・・ ネットワーク状に記述 構成要素のゴールモデル 構成要素のゴールモデル 仕様として 組み合わせを与える 親に応じて 動的に木構造へ 構成要素のゴールモデル
ご清聴ありがとうございましたご意見・ご質問などをお願い致しますご清聴ありがとうございましたご意見・ご質問などをお願い致します