「コンテナ」ミッションの攻略:押す

「コンテナ」ミッションの攻略:押す

 別のチームでは、「コンテナ」ミッションを異なる戦略により攻略していた。その紹介の前に、その前提となるアプローチを説明する。

 各ミッションの攻略にだいたいのめどがついたところで、全ミッションを通しで遂行させてみた。ところが、どうしても制限時間(2分30秒)内に完了しない。この対策についてチーム内で議論した結果、ミッション群遂行のフローを考慮し、次のような改善案が出された。

 まずミッションそれぞれで「ロボットのスピードの向上」をはかる必要があり、その方法としてモーターのパワー、ギア比、タイヤの径を大きくすることが考えられる。

 またミッション間では、「アタッチメントの着脱時間の短縮」をはかる必要がある。その方法として、「アタッチメントの数を減らす」「アタッチメントを着脱しやすくする」が考えられた。さらに「複数ミッションをまとめて遂行」するといった方法も検討された。

 ロボットスピードについては、あまり速くしすぎると逆に十分なパワーが出ないケースも考えられたものの、試してみたところ問題のないことがわかった。また、プログラムへの影響が大きいことも問題視されたが、全般的に有効な改善であったため、採用することとした。

 「アタッチメントの着脱時間の短縮」におけるアタッチメント数の削減については、少し頭をひねる必要があったが、いくつかのミッションで採用した。アタッチメントの着脱についても、ほとんどのミッションで同じように、簡単な操作でできるような工夫を行った。これらは、部品やインタフェースの共通化/標準化であり、製品設計の基本である。

 「複数ミッションをまとめて遂行」は、各ミッション遂行後に毎回ベースに戻るのではなく、いくつかのミッションを遂行してからベースに戻るというものである。これを実現するためには、ミッションごとのアタッチメントを共通化するか、複数のアタッチメントを同時に装着する必要があった。まとめて遂行するミッションの組み合わせに関する検討と試行錯誤の結果、いくつかのミッション・グループにまとめることができた。この実現には、プログラムの変更も必要であったが、基本的に、各ミッションのプログラムを接続すればよく、それほど大きな影響はなかった。

 以上の過程を経て、このチームでは「コンテナ」ミッションについて、「押す」ことにより攻略するという方針を決めたのである。なお、図2は、このチームのテクニカルプレゼンテーションの模様である。

複数ミッションをまとめて遂行する総合戦略と「リスク管理」

 複数ミッションをまとめて遂行することにより、何とか制限時間内で全ミッションを遂行できるようになった。ところが、ここで新たな問題が生じたのである。

 というのは、一連のミッションを遂行する途中で失敗することが時々あり得るということである。いったん失敗すると、残りのミッションを遂行することができなくなる。あるいは、残りの1つのミッションを遂行するために多くのムダな動きを余儀なくされることが明らかになった。

 ミッションを1つずつ遂行する場合には、それを失敗してもそのミッションの得点が入らないだけであったが、複数のミッションをまとめて遂行する場合には、途中のミッションの失敗により、得点・時間を大幅にロスするという問題が明らかになった。当然のことながら、複数ミッションをまとめたことにより、失敗する確率も大きくなってしまった。

 これにはチーム全員頭を悩ませたが、チーム内で知恵を出し合った結果、一部のミッションについては、代替手段を用意しておくことにより、得点を確保する手法を採ることとした。基本的には「ベースからまっすぐ前進した後、まっすぐ後退してくる」程度でミッションが達成できるものを対象とした。意外にも多くのミッションがこのシンプルな動きで達成可能であった。

 なお、代替手段のためのプログラムについては、アタッチメントの交換だけで同一プログラムを使用したり、1つのプログラム内に2つのサブプログラムを含めておき、スタート時のタッチセンサのオン/オフに応じて実行するサブプログラムを選択したり、といった工夫により、マインドストームにおけるプログラム数の制約(5個以内)に対応した。

 このように、「何か起きた際に別の手が打てる」ようにしておくことは、実際の仕事でも行っていることである。その必要性を自分たちで考えて手を打ったという経験は、とても価値あることではないだろうか。

 なお、FLL2006では競技内容の特徴も考慮して、基本的に1ミッションずつ遂行する戦略を採用した。この方が確実であり、かつ制限時間内に全ミッションを遂行できたからである。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30