ObjectSquare [2010 年 9 月号]

[技術講座]


ET ロボコン 2010 チャンピオンシップ大会を目指して

〜東京地区大会 速報レポート〜

株式会社 オージス総研
組み込みソリューション部
手嶋高明

会場俯瞰

2010 年 9 月 4 日 ( 土 ) と 5 日 ( 日 ) の 2 日間、工学院大学において「 ET ロボコン 2010 東京地区大会 」が行われました。

当記事では、昨年自身が参加した際の経験を踏まえながら、大会の様子を経験者ならではの視点でレポートします。

ET ロボコン自体をご存じない方は、まずは ET ロボコン概要をご覧ください。

目次

1. 競技

1.1. 今年も外光 ( 太陽光 ) に悩まされる

1.2. 外光 ( 太陽光 ) を糧に!進化する東京地区の走り

1.3. ミステリーサークルは敬遠、その他難所もチャレンジ少

2. ワークショップ

2.1. 視点を意識し、オブジェクトを抽出する

2.2. ユースケースの正しい使い方

2.3. 追加された審査項目 「 並行性設計 」 のキモ

3. 表彰式

3.1. A ブロック ( 9 月 4 日 )

3.2. B ブロック ( 9 月 5 日 )

1. 競技

競技
コース
ピット

1.1. 今年も外光 ( 太陽光 ) に悩まされる

昨年と同様に、東京地区大会では今年も外光 ( 太陽光 ) に悩まされるチームが多く見られました。ET ロボコンで使用する走行体はコース上のラインを光センサを用いて認識します。また光センサはその構造上、【図 1】のように光センサから発光する赤外線と、照明や太陽からの光を合わせて受光してしまうため、外光の変化に伴う影響を受けます。特に太陽光は光として強いだけでなく、時間帯によっても変化するため厄介です。うまく調整ができないと、走行体はラインを認識できず、コースアウトするリスクが高まります。今年参加したチームの中で、インコース、アウトコースともに完走したチームが、A ブロックでは 5 チーム ( 全 41 チーム中 )、B ブロックでは 2 チーム ( 全 39 チーム ) に留まったことからもその難しさがうかがえます。

天窓から差し込む太陽光
コースに差し込む太陽光
差し込む太陽光 ( 午前中の試走時間帯 )

1.2. 外光 ( 太陽光 ) を糧に!進化する東京地区の走り

外光の影響を受ける光センサ
【図 1】外光の影響を受ける光センサ

他の地区大会やチャンピオンシップ大会は、太陽光の影響を受けない会場で行われるため、外光の影響を気にする必要がほとんどありません。こうした意味では、東京地区は他の地区に比べて不利と捉えることもできます。しかし別の見方をすれば、難しい環境であるがゆえに参加者のイマジネーションを刺激し、進化を促進させる要因にもなっています。事実、今年の東京地区の走りの中に、来年以降のトレンドになり得る走りをいくつか見ることができました。

1.2.1. 外光の影響を抑える 「 まいまい式 」

「 まいまい式 」 は、光センサを明滅させながらセンシングする方式です。すねいるさんのサイトで解説やサンプルコードが公開されています。ET ロボコンで使用される走行体の光センサは、照明や太陽光の影響を受けてしまうのですが、「 まいまい式 」 では光センサが持つ発光部のライトを ON / OFF し、それぞれの光センサ値の差、つまり外光分 ( ライト OFF 時の光センサ値 ) を除いた値を抽出し利用しています。今年はこの方式を採用しているチームが多く見られました。実際に競技で使ってみた結果、外光の影響をほとんど気にすることなく、調整が楽に行えたといった話も聞かれました。

ただ気になる点は、ライトの ON / OFF の切り替えの際に、光センサ値として反映されるまでにタイムラグがあること、そのタイムラグのために、スピードを出した状況下では ON 時のセンシング箇所と OFF 時のセンシング箇所がズレてしまい、正しい差が得られず、ライントレースに影響が出てしまうことだそうです。

1.2.2. 外光の影響を一切受けない 「 ピュアマップ走行 」

今大会で大きなインパクトを与えたのが、光センサ自体を全く使用せず、内部に保持したコースのマップ情報のみで走り切る走行 ( 当記事では便宜上、「 ピュアマップ走行 」 と記す。) でした。この走行は、コース上のラインを一切認識することなく、左右のモータエンコーダ値から算出した走行距離や走行体の向きなどから位置を推定し、コースを走り切ります。昨年の大会でもコースの一部をマップ走行で ( ラインを認識せずに ) 走ったチームは見られましたが、コース全てをマップ走行で走ったのは今年が初めてではないでしょうか。一見するとハイリスクですが、今年からワイドトレッド化した走行体により、走行自体の安定性が増したとともに、走行体の向きがより正確に算出できるため、スタートからゴールまでラインを認識しなくても走り切るだけの精度が出たようです。

ワイドトレッド化した走行体
昨年 ( 左 ) に比べワイドトレッド化した走行体

その最たる走りが Mashi-Mashi さんでした。圧巻だったのは、光センサから敢えて配線を引き抜いた状態で走行し、見事インコース/アウトコースともに東京地区での最速走行タイムをたたき出したことです。原理としては、コースを画像として認識し、画像上の点から点への移動によって走っているとのことでした。

ここからは私自身の予想ですが、今後もワイドトレッド化した走行体が使われるのであれば、特に東京地区大会において 「 ピュアマップ走行 」 が新たなトレンドになる可能性は大いに考えられます。モータエンコーダ値を使用するため、車輪の滑りによるズレが生じる恐れはありますが、実際にピュアマップ走行を行っているチームの走りを見る限り、太陽光のもと、光センサを使ってライントレースしているチームの走りに比べて安定していたように感じました。車輪の滑りを発生させる難所 ( シーソーや階段 ) への対応が課題となりますが、例えば上記の 「 まいまい式 」 を位置補正のためにスポット的に使用するなど進化していけば、チャンピオンシップ大会でも十分に使える走行です。

光センサに依存せず、外光の影響を一切受けない 「 ピュアマップ走行 」 は、これまで外光に苦しめられてきた東京地区にとって、新たな希望となりそうです。

1.3. ミステリーサークルは敬遠、その他難所もチャレンジ少

難所へのチャレンジについては、シーソー、階段、ガレージインにチャレンジするチームはいくつか見られたものの、ミステリーサークルは完全に敬遠されていました。ミステリーサークルの 「 指定されたルート以外を通った場合はリタイア 」 というルールが重くのしかかっていたようです。

そんな中、東京地区大会でミステリーサークルにチャレンジし、みごと成功を収めたチームが芝浦雑伎団でした。会場からは大会中一番の歓声と拍手が送られていました。


【動画】芝浦雑伎団 ミステリーサークル成功

2. ワークショップ

競技のみの大会とは異なり、ワークショップという形で提出したモデルシートの振り返りやディスカッションを行うことが ET ロボコンの大きな特徴となっています。以降では、ワークショップの中であった話をいくつか取り上げます。

ワークショップ風景1
ワークショップ風景2
ワークショップ風景3

2.1. 視点を意識し、オブジェクトを抽出する

本部審査委員の幸加木氏からは、モデル審査をする中でオブジェクト抽出を正しく行えていないクラス図が多々見られたことを背景に、視点を意識したオブジェクト抽出の重要性について解説がありました。

視点とは、対象を見るときの立脚点であり、視点を変えることで対象の捉え方も変わります。視点を意識しながら対象を捉える ( オブジェクトを抽出する ) ことがオブジェクト指向で分析、設計を行う上で非常に重要である点を強調されました。例えば、今大会の難所の 1 つである { シーソー 」 も、視点を変えることで、平面的にコース上の 1 エリアとして捉えることもできれば、立体的に段差や坂道を持つ障害として捉えることもできます。そして前者と後者では、同じ 「 シーソー 」 であっても異なるオブジェクトとして抽出されるはずです。まずは自分たちの戦略に則って視点を決め、その視点に沿って対象を捉え、モデルシート上では対象をどのように捉えたのかを語ってほしいと結ばれました。

2.2. ユースケースの正しい使い方

本部審査委員の鄭氏からは、ユースケースをうまく使えていないチーム、誤解しているチームが多々見られたことから、ユースケースとは何か、また使う際のポイントについて解説がありました。

ユースケースは、アクターとシステム間での相互作用 ( やり取り ) を意味のある ( アクターの興味のある ) 単位でまとめたものです。しかし提出されたモデルシートでは、ユースケースを誤って使っている、例えば 「 目標/願望/意気込みを書いている 」、「 非機能要求を書いている 」、「 機能分解になっている 」、「 システム内部の動作を書いている 」 ものが多く見られたそうです。正しく使うための 1 つのテクニックとして、ユースケースモデルを書く際に、システム内部を透けて見ずにブラックボックスとして捉えることを推奨していました。

また、ユースケースは要求のある側面を表す上では有効だが、すべての要求を表すことのできる万能な図ではないことも強調していました。表したい要求に合わせて、適切な図を使い分ける必要があり、例えば、目標/願望/意気込みであれば 「 ゴールモデル 」、非機能要求であれば SysML の 「 要求図 」 などが候補として挙がりました。

他にも、ユースケースの包含/拡張/汎化の関係を多用し、不必要に複雑化しているユースケースモデルが目についたことに触れ、ユースケースはあくまで目次であり、本体はユースケース記述であることを意識する。またユースケースの包含/拡張/汎化の関係は、ユースケース記述を簡潔に書く仕組みであり、ユースケース記述が簡潔に書ける場合にのみこれら関係を使うべきだと強調されました。例えば、包含 ( Include ) を使うことで、ユースケース記述中に登場する共通のフローを 1 ヶ所にくくり出すことができますが、くくり出したことによる効果が得られる場合にのみ使うべきだということです。審査されたモデルの中には、包含を使ってくくり出した結果、くくり出されたユースケース記述が 1 行で済むようなものが多々あるようで、ユースケース記述が簡潔にならないのであれば、わざわざ包含/拡張/汎化の関係を使う必要はないとの結論でした。

最後に、書いたユースケース記述は仕様として活用し、検証の際に用いることで、モデルのトレーサビリティ向上に繋がる点も言及されました。

この辺りの話は、過去の田町レーシングのモデル検討記事でも触れていますので、合わせて参照ください。

2.3. 追加された審査項目 「 並行性設計 」 のキモ

今年から、モデル審査基準として新たに 「 並行性設計 」 が追加されました。追加の理由は、組み込みシステムでは並行的に動作させることが前提となっているものが多いといった背景を踏まえてとのことです。審査では、並行性設計に対する検討が行われていると判断された場合に、検討した結果やそれを導き出した根拠が妥当であるか、またそれがモデルシート上で正しく表現されているかといった点が評価されます。ただ今年の東京地区においては、並行性設計について言及したモデルが 4 割弱に留まっており、少し悲しいと感想を述べられていました。また、並行性を導入していても 「 そもそも並行性を導入した妥当性が読み取れない 」、「 タスクの周期と優先度が記載されていない 」、記載されていても 「 その周期、優先度にした根拠が読み取れない 」 など課題は多かったようです。

並行性設計において大事なことは、並行性に対する検討を行い、検討した結果に加えて、それを導き出した根拠を示すことだと強調されました。例えば検討した結果、並行性を導入しないという結論が出ても問題はなく、事実、並行性が必要ないことを示し A 評価 (高評価) を得たチームもあったようです。

3. 表彰式

東京地区大会では、1 日目の A ブロックと 2 日目の B ブロックのそれぞれで、モデル、競技、総合部門の表彰が行われました。また、総合部門の上位 5 チームには 12 月 1 日と 2 日に行われるチャンピオンシップ大会への出場権が与えられました。

3.1. A ブロック ( 9 月 4 日 )

Aブロック表彰式
総合部門
順位 チーム名 所属
1 位 HASH UFO ( 株 ) 日立製作所 日立研究所
2 位 田町レーシング ( 株 ) オージス総研 組み込みソリューション部
3 位 Mashi-Mashi MathWorks
4 位 勝 ( かち ) ロボ リコー IT ソリューションズ ( 株 ) エンベデッドソリューションズ事業部 ES 第 3 開発部 / 先行開発部
5 位 selfD 個人
モデル部門
順位 チーム名 所属
1 位 HASH UFO ( 株 ) 日立製作所 日立研究所
2 位 田町レーシング ( 株 ) オージス総研 組み込みソリューション部
3 位 勝 ( かち ) ロボ リコー IT ソリューションズ ( 株 ) エンベデッドソリューションズ事業部 ES 第 3 開発部 / 先行開発部
競技部門
順位 チーム名 所属
1 位 Mashi-Mashi MathWorks
2 位 HASH UFO ( 株 ) 日立製作所 日立研究所
3 位 チーム○ リンク情報システム オープンビジネス事業部

3.2. B ブロック ( 9 月 5 日 )

Bブロック表彰式
総合部門
順位 チーム名 所属
1 位 芝浦雑伎団 ( 株 ) オージス総研 組み込みソリューション部
2 位 チーム HULA パンダ ( 株 ) 日立超 LSI システムズ
3 位 ロボーの石 ( 株 ) エヌティ・ソリューションズ
4 位 StrayCab05 ( 株 ) ソフトウェアコントロール
5 位 笑 ' s 三人娘 リンク情報システム ( 株 ) 海外・新規事業部
モデル部門
順位 チーム名 所属
1 位 蕨レーシングチーム ' X 沖通信システム ( 株 )
2 位 チーム HULA パンダ ( 株 )日立超 LSI システムズ
3 位 飯亭ロボ魂 PART3 ( 株 ) 日立情報制御ソリューションズ
競技部門
順位 チーム名 所属
1 位 芝浦雑伎団 ( 株 ) オージス総研 組み込みソリューション部
2 位 ロボーの石 ( 株 ) エヌティ・ソリューションズ
3 位 チーム HULA パンダ ( 株 ) 日立超 LSI システムズ

終わりに

東京連合としては、総合部門で A ブロック 2 位の田町レーシング、4 位の勝 ( かち ) ロボ、B ブロック 1 位の芝浦雑伎団が、見事チャンピオンシップ大会へ駒を進めました。私にとっては、チャンピオンシップ大会への出場は逃したものの、東京連合での活動を糧に来年もまた再戦すると誓ってくれたチームが多くいたことが、一番の喜びです。

みなさん、来年もまた東京地区大会で会いましょう。記事の連載は続きます。

また最後に、東京連合では合同でのモデルレビューやミニ競技会を行い、参加チームのレベルアップに努めていきます。東京近辺で活動に興味のある方は、ぜひ以下アドレスまで連絡ください。一緒に切磋琢磨し、ET ロボコン 2010 チャンピオンシップ大会で上位入賞を目指しましょう!

東京連合:etrobo_tokyo_rengo-owner@yahoogroups.jp



© 2010 OGIS-RI Co., Ltd.
Prev. Index Next
Prev Index Next