RCJJのチームでブログを書くチームが減ったよね・・・
来週の日曜日は、RCJJの千葉ノード大会です。
私は、子供たちと共にお手伝いに行く予定です。
ところで、その千葉ノード大会の為にルールを見直したり、レスキューラインのコ-スを考えたりしています。
その中で、一つ大きな勘違いをしていることに気が付きました。
2015年ルールで難易度が上がった交差点についてです。
交差点には、緑のマーカーがあり、その指示に従って正しい経路に進めれば得点になります。
ただし、正しい経路に進めなくても、競技進行停止になりません。その先で正しい経路に復帰できればそのまま競技を続けることができます。
交差点には
①正しい経路で得点を貰える
②正しい経路ではないので、得点を貰えないだけで競技進行停止にはならない
③あり得ない交差点(設置してはいけない交差点)
の3つがあるという認識です。
まず、①ですが・・・
これは、ルールにも例示されていますので、間違うことは無いと思います。
Aは左折、Bは右折、Cは直進ですね。
②を飛ばして、③ですが・・・
これは
こんな交差点です。DもEもどちらに進めば良いのかわかりません。
で・・・それ以外は、全て②だと考えていました。
例えば、
こんな場合は、どう進むの・・・と質問したら・・・
これらは、直進が正しいのだそうです。
(質問したのは、ルールが出た直後で、すぐに回答ももらっていたのですが・・・私の英語の解釈が間違っていたというオチ)
つまり、交差点の手前に緑マーカーがあった場合は、その指示に従う。交差点の手前に緑マーカーがなければ直進が正しい経路、ということのようです。
最後のお題は「付録」です。
Appendix A: Primary Category Competition Setup
The SUPER and SUPER+ objects will be placed 15cm away from the wall (indicated by the dash-lines in the diagram; however, the dash-line will not be shown in the WORLD_2) upon generation.
付録A:プライマリのフィールドレイアウト例
・ス-パーとスーパープラスのオブジェクトは、壁から、15cm離れた場所(上の図の点線によって示される場所です。しかし、実際に点線はありません)に発生します。
Appendix B: Secondary Category Competition Setup
・The location (X& Y coordinates) of any objects including real robot, real objects, special zones, traps, marker, collection boxes, and obstacles will not be disclosed to teams..
・The coordinates of virtual robots, special zones, collection boxes, traps, signal block zones will be provided to teams.
・The coordinates of SUPER and SUPER+ objects will be sent to team that generates the objects.
付録B:セカンダリのフィールドレイアウト例
・現実ロボットを含む、オブジェクト、スペシャルゾーン、罠、目印、収集箱、障害物などの位置(x,yの座標)は公開されません。
・仮想ロボット、スペシャルゾーン、収集箱、罠、信号ブロック領域の座標は、チームに提供されます。
・スーパーとスーパープラスのオブジェクトの座標は、それらのオブジェクトが生成されたときにチームに通知されます。
こんな感じでしょうかねぇ。
さて、ルールの最後の付録です。
ここに、プライマリとセカンダリのフィールドレイアウト例が掲載されています。
見てわかるように、プライマリとセカンダリの大きな違いは、フィールドの領域の境界です。プライマリは壁があるので、ロボットが外に出ることは(普通では)考えられません。しかし、セカンダリでは、壁がありません。ですから、プログラムでしっかりと境界から出ないようにしなければなりません。WORLD_1では黄色い帯で出ないようにするのですが・・・WORLD_2には黄色の帯すらないので、自分の(ロボットの)座表で判断しなさい、ってことなのでしょうね。
とにかく、このように例示があるルールは、とってもわかりやすいと思います。
ルールは、これで終りですね。
お疲れさまでした(オレ)
今回のお題は「行動規範」です。
8. CODE OF CONDUCT
8.1 Fair Play
8.1.1 Humans that cause a deliberate interference with real robots or damage to the real world setup will be disqualified.
8.1.2 It is expected that the aim of all teams is to participate fairly.
8.2 Behaviour
8.2.1 If one team copies a program from another team, both teams will be disqualified.
8.2.2 Teams will be disqualified for deliberately trying to lose the game or tie with the opponent team.
8.2.3 Participants should be mindful of other people and their robots when moving around the tournament venue.
8.2.4 Participants are not to enter setup areas of other leagues or other teams, unless expressly invited to do so by team members.
8.2.5 Participants who misbehave may be asked to leave the building and risk being disqualified from the tournament.
8.2.6 These rules will be enforced at the discretion of the referees, officials, tournament organizers and local law enforcement authorities.
8.2.7 Mentors (teachers, parents, chaperones, translators, and other adult team members) are not allowed in the student work area.
8.2.8 Mentors are not allowed to be involved in programming of students' robots.
8.2.9 Mentor interference with robots or referee decisions will result in a warning in the first instance. If this reoccurs, the team will risk being disqualified.
8.3 Sharing
8.3.1 Teams and students are encouraged to share their programming and strategies to the participants. A certificate of appreciation will be presented to the presenters.
8.3.2 Any developments may be published on the RoboCupJunior website after the event.
8.3.3 This furthers the mission of RoboCupJunior as an educational initiative.
8.4 Spirit
8.4.1 It is expected that all participants (students and mentors alike) will respect the RoboCupJunior mission.
8.4.2 The referees and officials will act within the spirit of the event.
8.4.3 It is not whether you win or lose, but how much you learn that counts!
8. 行動規範
8.1 フェアプレイ
8.1.1 現実のロボットを故意に壊したり、現実世界のアリーナを傷付けたメンバーは失格になります。
8.1.2 すべてのチームが公正に参加することを期待されます。
8.2 ふるまい
8.2.1 あるチームが作成したプログラムを別のチームがコピーした場合、両方のチームを失格にします。
8.2.2 チームは、故意にゲームに負けたり、相手チームと意図して同点になるようにした場合、失格になります。
8.2.3 競技会場内では、チームメンバーは他の競技者やロボットに注意して移動すべきである。
8.2.4 チームメンバーによって招待されない限り、チームメンバーは他のリーグまたは他のチームの作業領域に入ってはいけません。
8.2.5 不正が発覚したチームメンバーは、会場からの退場と、競技会へ参加資格が無くなります。
8.2.6 これらのルールは審判、大会運営者、大会主催者や地元実行委員会の裁量で適用されます。
8.2.7 メンター(先生、両親、付添い、翻訳者と他の成人のチーム・メンバー)は、チームメンバーの作業場所に入ることはできません。
8.2.8 メンターは、チームのロボットのプログラミングに関与してはいけません。
8.2.9 メンターがロボットに関与したり、審判の判定に干渉した場合、一回目は警告になります。これが再発した場合、チームは失格になります。
8.3 共有
8.3.1 チームは、他の参加者に自分達のプログラミングや戦略を公開することを奨励されます。内容によっては、賞が与えられます。
8.3.2 それらは、競技会の後に RoboCupJunior Webサイトで発表されるかもしれません。
8.3.3 これは、教育的なイニシアティブとして RoboCupJuniorの目的です。
8.4 精神
8.4.1 すべての参加者(メンバーもメンターも)が RoboCupJunior の目的を尊重することを期待されます。
8.4.2 審判やスタッフは、競技会の精神に従って行動します。
8.4.3 勝ち負けではなく、何を学んだかが重要です!
こんな感じでしょうかねぇ。
これは、CoSpaceに限ったことではなく、ジュニアの競技で共通なことがらです。
まずは、フェアプレイ・・・みんなフェアプレイの精神で参加してね。して、
そして、「ふるまい」です。
8.2.1は、他のチームのプログラムをコピーしたら、した方もされた方も失格です。ちょっとこれはルールの表現が良くないですね。「コピーしたプログラムで参加したら失格・・・」これなら判ります。競技に参加して、「君のチームのプログラム凄いね。今後の参考にしたいから頂戴」というのは、よくある話ですよね。そこで「いいよ」とコピーしてあげたら失格なの!?(笑)
8.2.2は故意に負けたり、得点を操作すると失格です。これは、他のレスキュー競技にはあり得ない状況です。対戦ゲームならではのルールですね。わざと敗けたり、協力して同点にする。こんなことも出来ちゃうのが面白い・・・さて、審判側をこれをどうやって看破するか・・・世界大会でやるチームはいないと思いますが・・・
最後のは、有名な「勝ち負けではなく・・・」です。
ドロップタイルというのは、ジュニアレスキューの2015年からの新しいルールです。
これまで、部屋や通路という概念があって、部屋を出ると部屋の得点が得られました。
2015年ルールから、部屋という概念がなくなり、コースの自由度が上がりました。
で、部屋得点の代りに採用されたのが、ドロップタイルです。
これが何でドロップタイルという名前になっているのかが、全く分かりません。
drop というと、落とす、というような意味なんですけどねぇ。辞書を調べても・・・良く分からないのですが、ひょいと立ち寄る、というのがありました、こんな意味なのかなぁ・・・
良く分からないから、日本語翻訳版でも「ドロップタイル」と、そのままカタカナ表記です。
さて、このドロップタイルの素晴らしいところは、チームがどのタイルをドロップタイルにするかを指定できることです。これによって、いろいろな戦略を立てることができます。
まあ、もともと、スタートして、競技進行停止も無しに避難地域に入り、被災者を救出するようなチームは、ドロップタイルなんて関係ありません。ドロップタイルをどこにして使用が関係なく、満点が取れます。
しかし、満点を取れないようなチームには、ドロップタイルを有効に指定することは高度な戦略になります。
ロボットが全然動かないようなチームでも、ドロップタイルをスタートタイルに指定することで、何もせずに60点を得られます。さらに、スタートタイルに2個のドロップタイルパックを置くことで、何もせずに120点を得られてしまいます。(フォーラムでは、このように回答されていましたが、実際の2015年の世界大会では、同じタイルに複数のドロップタイルパックを置くことはできなったようです) つまり、自分のロボットの弱点をドロップタイルの場所によって補完でっきる可能性がありませす。
ロボカップジュニアはロボットの競技会なのだから、そんな姑息な手段を使わずにロボットの作り(ロボットのハードとソフト)で勝負しろよ・・・といい意見もあると思います。
私は、ロボットの作り(ハードもソフトも)は勿論、整備や戦略も含めて、チーム全体のパフォーマンスが成績(勝敗)になって良いと思いますので、こいういドロップタイルの場所指定のような戦略が活きる競技は面白いと思います。
スタートタイルに2個のドロップタイルを置いて、120点を得たチームに対して「あのチームはズルい」と思うかもしれません。でも、それは全然ズルくありません。そんなチームに敗けないようなロボットを作れば良いんです。そんなチームに敗けないような素晴らしいプログラムを組めば良いんです。(笑)
ちなみに、千葉ノード大会では、以下の2つの条件(制約)を付けました。
・得点イベントのあるタイルはドロップタイルに指定できない
・1つのタイルに複数のドロップタイルパックは置けない
それから、ドロップタイルの指定は、競技時間の8分間の中で実施することにしています。
これらは、千葉ノード大会だけのローカルルールです。
次のお題は「表彰」です。
7.5 Awards
Depending on the number of teams entering the competition, there will be awards for trophies and certificates.
7.5.1 Trophy
・RoboCupJunior CoSpace Rescue winning teams
・Best Presentation Award
7.5.2 Certificate
・RoboCupJunior CoSpace Rescue Technical Challenge winning teams.
・Best Programmer Award
7.5 表彰
競技に参加しているチーム数に応じて、トロフィーと賞状が設定されます。
7.5.1 トロフィー
・ RoboCupJunior CoSpace Rescue の優勝チーム
・ ベストプレゼンテーション賞
7.5.2 賞状
・ RoboCupJunior CoSpace Rescue のテクニカルチャレンジの優勝チーム
・ ベストプログラマー賞
こんな感じでしょうかねぇ。
次回のRCJJ関東ブロック大会ときに CoSpace Rescue のスタッフをやるための準備をしています。
準備といっても・・・まずは、現在の CoSpace Rescue の調査から・・・
(私の知識は、古いから・・・)
まずは、CsBot の最新版を入手して、自分のPCにインストールすることはできました。
シリアルキーも申請して入手して、起動もできました。
これまで・・・起動の時にセカンダリを洗濯したので、知らなかったのですが・・・
プライマリを選択して起動してみると・・・
こんな可愛いロボットが表示されます。
CoSpaceRobot Technical Support Team は、なんてお茶目なんでしょう!!
ところで、CsBot は動作したのですが、それだけでは練習ができません。(いや、できないことはないですけど、このフィールドレイアウトだけでは・・・ねぇ)
で、練習フィールドととして提供されていたファイルを試したのですが、形式が変わったようで使用できませんでした。
CoSpaceRobot Technical Support Team に問い合わせたのが2~3週間前だったのですが、昨日(11月2日)に、やっと新しい練習用のフィールドレイアウトが提供されました。
このファイル(例えば CsBotRescue2015_PracticeMap01.zip)をダウンロードして展開(解凍)します。その中にある、Setup.exe を実行すると、フィールドレイアウトが変更されます。とっても簡単ですね。
これまでは、手作業でファイルを入れ替えていました。3年前の競技会の時に、入れ替え作業に失敗して、CsBotが起動しなくなった時には焦りました。でももう、そんな心配はしなくて良さそうです。
とりあえず、これで、関東ブロック大会を実施できそうです。
次のお題は「勝敗」です。
7.4 Winner
7.4.1 Round Robin
・The winner of the round robin is determined based on Technical Challenge results (30%) and total points from round robin games (70%).
・If two teams gained the same total points, the winner will be decided based on the technical challenge result. If the technical challenge results are still the same, the winner will be decided based on the total round robin game points.
7.4.2 Quarter-Finals, Semi-finals and Final
・The winner of the semi-finals and final will be decided solely based on the semi- final/final game result.
・If the match points are the same for two competing teams, the winner will be decided based on the total game points. If the total game points are still the same, the team with the higher points in WORLD_2 will be the winner.
7.4.3 Best Programmer
・Primary Category:
The winner will solely depends on the Best Programmer Challenge Result
・Secondary Category:
The winner will be determined based on the combination of 30% of technical challenge result and 70% of the Best Programmer Challenge result.
7.4 勝敗
7.4.1 予選リーグ
・ 予選リーグの成績(順位)は、予選のリーグ戦の勝ち点(70%)とテクニカルチャレンジの結果(30%)の合計によって決定します。
・ 2つのチームが同じ勝ち点の場合は、テクニカルチャレンジの結果を優先して順位を決定します。テクニカルチャレンジの得点が同じ場合は、勝者は予選リーグの得点の合計に従って決定します。
7.4.2 決勝トーナメント
・ 準決勝と決勝の勝敗は、その競技(準決勝や決勝)の結果で決定します。
・ 2つのチームで得点が同じ場合は、これまでの勝ち点の合計によって成績(順位)を決めます。勝ち点が同じ場合は、WORLD_2の得点が高いチームを上位とします。
7.4.3 ベストプログラマー
・ プライマリ:
ベストプログラマーチャレンジの結果によって選定します。
・ セカンダリ:
ベストプログラマーチャレンジの結果(70%)とテクニカルチャレンジの結果(30%)の組み合わせによって選定します。
こんな感じでしょうかねぇ。
いちおう・・・書いてある通りですが・・・
予選リーグは、予選リーグの勝ち点とテクニカルチャレンジの結果(得点)で決定します。その割合が7:3です。
つまり
(予選リーグの勝ち点)×0.7+(テクニカルチャレンジの得点)×0.3
で勝敗を決めます。
これが同点の場合は・・・
・テクニカルチャレンジの得点
・予選リーグの(勝ち点ではなく)得点の合計
の順で決めます。
サッカーで言う、「得失点差」でしょうか(笑)
決勝トーナメントでは・・・普通にゲームの勝敗なので
そのゲームの勝ち負けで決めるのですが・・・同得点で引き分けの場合は、勝ち点の合計で決めると書かれています。この勝ち点の合計というのが、予選リーグを含めるのか、決勝トーナメントだけなのか、良く分かりません。で、これが同じ場合は、WORLD_2の得点の高い方が勝ちだそうです。
次のお題は「ベストプログラマーチャレンジ」です。
7.3 Best Programmer Challenge
7.3.1 The Best Programmer Challenge is not compulsory for every participant. Only participants aiming for the Best Programmer Award is required to sit in the Challenge.
7.3.2 Participants can only take part in the challenge as individual candidate.
7.3 ベストプログラマーチャレンジ
7.3.1 ベストプログラマーチャレンジは、すべての参加者が必ず挑戦する必要はありません。ベストプログラマー賞を目指す参加者がこのチャレンジに挑戦します。
7.3.2 参加者は、賞の候補として一人ずつでチャレンジに参加します。
こんな感じでしょうかねぇ。
ダンスだけでなく、サッカーも競技結果以外の賞が増えました。レスキューもいつのまにか増えました。その中の一つでしょう。課題が与えられてそれを解決する力で判断されるもののようです。
本日は、地区大会の最終日
最後を飾るのは、関東甲信越地区大会です。
(もちろん、会場に行ったわけでは無く、ストリーミングで見ていただけですが・・・)
ここのところ毎週、ストリーミングで見てましたが・・・本日のはなかなかレベルが高いなぁ、と思いました。
まあ、一番後のスケジュールだし、他の地区大会の様子を見たあとだし・・・
だったとしても、大変見ごたえのあるゲームが多かったです。
長野高専応援団東京支部としては、勿論長野高専を応援してます。(産技品川も応援してます 笑)
でも、今回は、ちょっと木更津高専も応援しちゃいました。
木更津高専Aチームのロボット名が「花鳥風月」だったので・・・ちなみに、一回戦は勝ったのですが、長野高専Bチームの「Infinity」に敗けてしまいました。(あっ、長野高専の応援団なのだから、長野高専が勝って良かったのだけど・・・)
今回、競技開始と共に一瞬で勝負を決めてしまうチームがあり・・・もう、一瞬も目が離せません。
準決勝に長野高専が2チーム共に参加したのですが、決勝には1チームだけが残りました。
そして、決勝戦は産技荒川Aチームの「荒鯊」と長野高専Aチームの「C-RAZair」です。
「荒鯊(あらはぜ)」は地区大会でのこれまでのVゴールの最短記録のレコードブレーカー
一方の「C-RAZair(シーレーザー)」は、これまでの地区大会での最多得点のレコードブレーカー
スピードと得点の勝負です。
で、決勝戦ですが・・・
普通に考えたらハゼの一撃で終わるのですが・・・レーザーが自陣の一つを守ってVゴールになりません。しかしレーザーは守っているだけでは勝てません。
8対3・・・ハゼはあと一個得点できれば勝ち、一方のレーザーは真ん中のポールで2本掛けか3本掛けをしないと負けが確定・・・そんな状況でにらみ合いをして、ハゼが補給をしている隙にレーザーが真ん中のポールに2本掛けして同点!!
まさかの、決勝戦の審査員判定!?
まあ、ここは、お決まりの「再試合」ですよね。
再試合でも、レーザーが自陣を守って勝ち
おめでとう長野高専
とにかく、面白いゲームでした。
それから、決勝に残ったチーム以外で、私が素晴らしいと思ったロボット
・小山高専Bチーム 輪Navi君(ワナビークン) 数年前のラグビーボールを打ち出す仕組みが活きてますねぇ。
・群馬高専Bチーム 上州カウボーイ(ジョウシュウカウボーイ) 人間が投げ縄を投げるような仕草がとってもカワイイ・・・私的には全国大会でのロボコン大賞決定!!
・東京高専Bチーム ゜ゑ(ピェ) 美しい、カッコイイ、連発機能がすごい、機能美
・長岡高専Bチーム Nagaoka-Fireworks(ナガオカファイヤワークス) まさに連続打ち上げ花火
そして、一番期待していたのが
・都立産業技術高専荒川キャンパスBチーム わんちゃん丸(ワンチャンマル) 完全自動運転
ということだったのですが・・・スタート地点から一歩も動けずに終わってしまいました。
この地区から全国大会に進めるのはたったの4チームです。
優勝のレーザーとハゼは行けるとして、あと2チームしかありません。じぶんとしてのロボコン大賞であるカウボーイが選ばれると、あと1チームしかありません。う~ん、今回は激戦ですねぇ。
で、結果として、私の予想通りの3チームと輪Navi君でした。
まあ、納得です。
あー おもしろかった!