Amalgam Blog

カテゴリ: Robocup

「鎖の強さは一番弱いつなぎ目で決まる」

演説の類でもこういった趣旨の言葉がしばし引用されます。

三本の矢の逸話の逆位置にあるような考え方で、全体の強さというのは最も弱い部分を超えることはないというものです。
私は勝手に「鎖の原理」と呼んでいます

RCJレスキューは特に、この鎖の原理が支配的な競技であると考えています。
そもそもロボットシステムというのが
  • センサが読めないと制御ができない
  • 制御が悪いと思い通りに動かない
  • モーターが回らないと動かない
と一部欠けただけで全体に影響を及ぼす要素のオンパレードで構成されています。
(ちなみにレゴを使ってロボットを作ることの最大のメリットは、ロボットシステムとしての鎖がかなり屈強な状態で開発を進められることです)

加えてレスキュー競技自体が、特にラインだと
  • 手前の課題をクリアできないと奥の課題に到達できない
  • チェックポイント区間内にできない課題があるとチェックポイント点が取れない
  • ライントレース部分と救助部分で満遍なく得点を取れないと高得点にならない
と、やはり一部の欠落が全体に大きな影響を及ぼします。

レスキューラインではギャップや障害物といった課題の一つずつが輪となって一本の鎖を形成しているイメージです。

特にワールドリーグは日本リーグに比べて課題の数が多い=輪の数が多いため、相対的に輪一つあたりにかけられる開発コストは減り、鎖全体の強度も必然的に下がります。
また交差点のような対策かかるコストの大きい輪があることによって、全体へのコスト分配も難しいです。ここを誤って「課題は大体できるけど障害物だけはほぼ無理」なんてロボットを作ってしまっても、なかなか高得点にはつながらないわけです。

という話を関東ブロックでのレスキュー競技の講評で話しました。
ルールが難しいことには同情しますが、その中で良い成果を残すにはどう開発すれば良いのか、ということについては、選手側も考える必要のあることです。



以下完全に余談:
私は鎖の原理をBF4というゲームのストーリーの一部で知りました。
「鎖の強さを決めるのは最も弱い部分」と言いながら、脆くなっていた壁を素手で破壊して牢屋からの脱出経路を確保していたのが印象的です。

かれこれ10年近く前ですが、当時も「いや~、ロボットもそうなんですよ~」なんて思いながらプレイしていました。

レスキューラインのレイアウトは私の知る限り人力で作成している運営がほとんどかと思います。
ただ設計者によって好みというか傾向が出てきがちで、得点要素や難易度に偏りがでるのはあまり好ましくないと思っています。

実際にコースを作ってみるとわかりますが、満遍なくというか偏りの無いコースを作るというのも結構難しいです。特にワールドリーグは課題の種類も多いので、全部を一回ずつ登場させるだけでもそれなりに大変です。

というわけで自動生成できないか...?というのを考えています。

拘束条件は
  • 登場する課題の頻度が均等(?)
  • 有限のスペースに収まる
  • ある程度の難易度調整を指定できる
あたりでしょうか。

幸いコースはタイル単位で構成されるので簡単なモデルに落とし込めます。
しかし限られたスペースでも、線を引く場合の数というのはかなり膨大です。
加えて交差点や十字ギャップ、高架の存在を考慮すると......ちょっと面倒

現実的な処理時間で生成するにはアルゴリズムをしっかりと練る必要がありそうです。

それとなく構想はありますが、私個人の性格上「ハードウエアを伴わない開発のモチベーションの賞味期限は短い」ので、なにかブレイクスルーがない限りは企画倒れになりそうです。




今回の関東ブロックでの新たな試みとして、競技のLIVE配信をしました。
その際の配信の配線?図を紹介したいと思います。

紆余曲折あって、かなり複雑になってしまいました。
事情としては
  • 配信機材(主にPC)を会場に運搬するのが難しい
  • 配信専用の機材(主にカメラや配線)にコストを掛けたくない
  • 会場の回線から配信ができない(プロキシの問題?)
結論としては以下のような、物理的な配線を徹底的に排除した代わりに全ての負担を回線に押し付ける形になりました。

配信構成-NESTロボコンレスキュー.drawio (1)

必要な機材の殆どが汎用デバイスなので、スタッフの持ち込みでほぼほぼ解決できました。
(逆に年に1度の開催に専用の機材を購入・保管するのは大変です)

配信担当の自宅の回線がネックになりますが、配信中ちらっと見たら上り12Mbps/下り3Mbpsとかでした。

配信のアーカイブはこちらから確認できます。



課題とか
・やはり回線の安定性がネックになる
レスキューの方は大丈夫(だった)と思いますが、サッカーの方では少々映像に乱れがあったそうです。

・音声が微妙
競技中の解説は会場にあったマイクとスピーカーで行い、その音声を再度マイクで拾いzoomに流していました。ロボットの動作音含む周辺音も多少は入っていたほうがいいと思いこのような形にしましたが、アーカイブを見返してみると音質に不満が残ります。
(私の喋り方の問題もありますが)

ただ指向性マイク等で解説の声だけを拾う場合、会場に解説の声が通らないのがなぁ、と。内容的には参加者にも聞いてほしいので。






スタッフにはお弁当が配られます
運営のチョイスで5種類ぐらい注文して、そこから好きに選んでいくという方式です。

して、2日目に紛れていたお弁当がこちら
IMG_2433


米、焼きそば、コロッケのカロリーモンスター弁当です。
高専生と元高専生に人気でした。


忘れないうちに見ていきましょう

まず公式の公表している結果がこちら


いつものようにヒストグラムで集計してみます。

chart (1)
という分布です。
優勝チームの745点が2競技とも満点だったと記憶しています。

上位は上位で満点付近でしっかり争いつつ、全体的に高得点を取れているのかなという感じです。
レイアウトの難易度調整はかなりいい線を狙えていると思います。


少し見方を変えて、得点の内訳をライントレース部分と救助部分に分けてみました。
chart (2)


参加した全てのチームが被災者救助に挑戦し点を得ており、また上位ではライントレースと救助の得点が両方とも順位に影響力を持っている、というな具合でしょうか。

「ライントレースはよくできたが救助が振るわなかったチーム」や、逆に
「ライントレースは低いが救助で巻き返しているチーム」
など様々です。
参加したチームは、こういった風に数値解析するとで見えてくる反省点もあるかと思います。

結論としては
  1. ルール難易度と選手のレベルのバランスが取れている
  2. レイアウト難易度と選手のレベルのバランスが取れている
  3. ルール内での課題毎の得点の影響力のバランスが取れている
です。


おまけ
ルール考察とは関係ないですが、得点と進行停止数の関係グラフです。
chart (3)
まぁ基本的に進行停止をするほど得点は下がるので、負の相関がありますね、という話です。
2位が競技二回通じて0回だったり、5位も1回だけというのは個人的に高く評価したいところです。

1位のチームは競技進行停止を3回していますが、これは全て救助ゾーンでの進行停止です。
日本リーグのルールでは救助ゾーンでの競技進行停止は得点には影響しないので、現行の日本リーグのルールの問題点を挙げるとするならここかなと思っています。
救助ゾーンでの進行停止にも得点的なペナルティを付けるべきなのかな、と
(脱出した特の得点が進行停止0/1/2/3回以上で30/20/10/0になる、とか)




このページのトップヘ