RoboCup
サッカーシミュレーション
2D
における
オンライン競技システムの開発
Development of an Online Competition System
for RoboCup Soccer Simulation 2D
久我 亮太
1∗山口 将貴
1中島 智晴
1秋山 英久
2Ryota Kuga, Masaki Yamaguchi, Tomoharu Nakashima, Hidehisa Akiyama
1
大阪府立大学大学院 人間社会システム科学研究科
1
Graduate School of Humanities and Sustainable System Sciences,
Osaka Prefecture University
2
福岡大学 工学部
2
Faculty of Engineering, Fukuoka University
Abstract: In this study, we developed an online competition system for RoboCup soccer simula-tion 2D. Due to coronavirus disease (COVID-19), the regular competisimula-tion will not be held in 2020 as usual, so there was a need to develop an“ online competition system ”that enables the holding of non-face-to-face competitions. This system uses a chatbot system to automate match executions and team management. The chatbot API automates the execution of programs and tasks such as start server and start players. In this way, the system achieves competition completely online. This system was officially adopted for the RoboCup Japan Open 2020 soccer simulation 2D league competition in 2020, when the first official online competition was held. Thanks to this system, the competition management flow which had been carried out manually, has been automated. As a result, this system has made a significant contribution to reducing the burden of competition management.
1
はじめに
2019 年末から始まった新型コロナウイルス感染症 (COVID-19)の世界的流行により,人々の社会生活や 経済活動は劇的に変化した.感染拡大への懸念から人々 は外出や営業の自粛を余儀なくされ,幅広い領域の様々 な場面において対面形式から非対面形式への急速な移 行が見受けられた.筆者の周囲では,大学の講義や研究 活動,学会,就職活動に至るまで,それらの多くが対面 形式から非対面形式への変更を強いられた.さらに,大 会や競技会といった対面形式を前提とするイベントは中 止や延期を余儀なくされた.これまで筆者が取り組んで きた研究テーマである RoboCup [1] についても例外で はなかった.RoboCup は国際的ロボット競技会であり, 1996 年に世界大会の先駆けとなる Pre-RoboCup-96 の 開催,1997 年に第 1 回 RoboCup 世界大会の開催以降, 毎年世界大会が開催されてきた.また,日本において ∗連絡先:大阪府立大学大学院 人間社会システム科学研究科 〒 599-8531 大阪府堺市中区学園町 1-1 E-mail: [email protected] も,1998 年に第 1 回 RoboCup ジャパンオープンの開 催を皮切りに,毎年日本大会という形で競技会が開催 されてきた.しかし,2020 年は COVID-19 に起因す る社会情勢の変化により,例年のような通常の競技会 開催は見送られる事態となった.このような未曾有の 状況の中,非対面形式でのオンライン競技会の開催を 実現するシステムの開発が求められていた.RoboCup は複数の競技部門から構成されており,筆者はサッカー シミュレーション 2D リーグ [2] に取り組んでいる.こ れは小型リーグやヒューマノイドリーグといった他の 実機サッカー競技部門とは異なり,実際のロボットを 使用せずコンピュータ上のシミュレーション環境で競 技を実施するという特性を持つ.サッカーシミュレー ション 2D リーグにおいては,参加チームの門戸を広 げることを狙いとしてオンライン上でチームを提出す ることによって開催場所に依らず競技会へ参加できる ような仕組み作りを求める声は以前からあった.上記 のような要求から,本研究では RoboCup サッカーシ ミュレーション 2D におけるオンライン競技システム[3] を開発した. 本システムは,試合の自動化とチーム管理の自動化 にチャットボットシステムの仕組みを用いて,ボット がプログラムの実行やタスクの自動化を担う.これに より,完全オンライン形式での競技会を実現している. 本システムにチャットボットシステムを用いるメリット が 4 点ある.1 点目は,テキストチャット形式の対話型 インタフェースによってオンライン競技会の参加また は運営が可能である点.2 点目は,OS を問わず,PC やスマートフォン,タブレットといったマルチデバイ スに対応可能である点,3 点目は,チャットボットアプ リによる拡張性が高い点,4 点目は自動応答のため 24 時間いつでも,参加者が世界中どこにいても対応可能 である点が挙げられる.本システムでは,数あるチャッ トツールの中から Slack [4] を採用した.しかし,シス テムの本質である,試合の自動化とチーム管理の自動 化にチャットボットシステムの仕組みを使うというア イデアは Rocket.Chat1 や Discord2,Telegram3と
いった各種チャットツールでも同様に実現可能である と考えられる. 本システムは 2020 年度の RoboCup ジャパンオー プン 2020 サッカーシミュレーション 2D リーグ競技会 において正式に採用され,初のオンライン形式による 公式競技会の開催を実現した.また,本システムによっ て競技会をオンライン化したことで,これまでの開催 方式(以降オフライン開催と呼ぶ)において手動で実施 されていた運営業務フローが自動化された.これによ り,本システムは競技会運営の負荷低減という観点にお いても大きく貢献した.本研究により,RoboCup サッ カーシミュレーション 2D リーグ競技会のオンライン 開催と運営の省力化を実現することによって RoboCup の運営コスト低減,ひいてはロボットプログラミング 全般の実験運用コスト低減に寄与することが期待でき る.本システムの貢献として以下の 3 点を挙げる. • オンライン競技における要件定義を明確化 • Slack bot とのテキストチャット形式による平易 な操作を実現 • 人手で実施されていた競技会運営の自動化・省力 化を実現 本論文では,オンライン競技システムの設計および 実装,ケーススタディについて述べる.以下,第 2 章 で RoboCup について述べ,第 3 章で関連研究につい て述べる.次いで第 4 章でシステムに要求される要件 および本システムの構成について述べ,第 5 章でシス テムのケーススタディについて述べる.最後に第 6 章 で結論と今後の課題について述べる. 1https://rocket.chat 2https://discord.com 3https://telegram.org
2
RoboCup
2.1
概要
RoboCup は,ロボット工学と人工知能の発展を目的 とした,自律移動型ロボットによるサッカーなどを題 材とした研究プロジェクトである.RoboCup の競技 部門の一つであるサッカーには「西暦 2050 年までに, サッカーの世界チャンピオンチームに勝てる自律型ロ ボットチームを作る」という目標があり,この目標に 向けて盛んに研究が行われている.RoboCup はもとも とサッカーを題材として始まったプロジェクトである が,その他にも,レスキュー,@ホーム,インダスト リアルなどの競技部門が存在する.レスキューは,大 規模災害への対応のシミュレーションや,災害現場で 活躍するロボットの開発を促進している.@ホームは, 日常生活で人間を支援する自律ロボットによる競技を 通じて,人とコミュニケーションしながら役に立つロ ボットの実現を目指している.インダストリアルは,移 動可能な産業用ロボットによる物流や倉庫管理システ ムを題材とし,自動化・自律化の実現を目指している. 本論文は,RoboCup サッカーを対象としている.2.2
RoboCup サッカー
RoboCup サッカーには,実機リーグ(中型,小型, ヒューマノイド,標準プラットフォーム)とシミュレー ションリーグ(2D,3D)がある.これらはサッカープ レイヤが実機ロボットかコンピュータシミュレーショ ン上の仮想ロボットかで分けられる.本研究では,シ ミュレーションリーグを研究対象とする.サッカーシ ミュレーションはモデル化の形式によって,2D リー グと 3D リーグの 2 つに分けられる.3D リーグでは プレイヤが人型で表現されており,物理演算エンジン を用いた二足歩行ロボットシミュレーションシステム を実現している.しかし,二足歩行運動を現実的な物 理モデルの元で実現しなければならないため,移動や ボールキックなどの基本的な動作の実行でさえ容易で はない.一方,2D リーグではプレイヤは円形で表現さ れ,物理運動モデルは抽象化されている.プレイヤの 行動制御はいくつかの基本行動コマンドによって行わ れ,3D リーグのように二足歩行動作の制御を行う必要 はない.高さの概念が存在しない点や抽象化された物 理運動モデルを持つ点などが人間のサッカー環境とは 異なるが,サッカーのゲームとしての複雑性は充分に 再現されている.本論文では図 1 の 2D リーグを扱う.図 1: サッカーシミュレーション 2D リーグ Soccer simulation 2D league
2.3
RoboCup サッカーシミュレーション
2D リーグ
サッカーシミュレーション 2D リーグは RoboCup 創設当初から存在する,最も古いリーグの 1 つである. このリーグでは,実機を使用せずに,コンピュータ内 に用意された二次元平面の仮想サッカーフィールド上 で競技する.サッカーシミュレーション 2D は,サッ カーサーバ,プレイヤエージェント(以降プレイヤ), コーチエージェント(以降コーチ),モニタから構成 される.サッカーサーバは分散マルチエージェントシ ミュレーションを実現するサーバクライアントシステム として設計されている.つまり,プレイヤとコーチは, サッカーサーバと通信するクライアントプログラムで ある.プレイヤやコーチはそれぞれ独立したプロセス としてプログラムされている.このようにして,完全 な分散マルチエージェントシミュレーションが実現さ れている.1 試合は前後半各 3,000 サイクルずつ,合 計 6,000 サイクルからなる.1 サイクルは 0.1 秒で離 散化されている. また,試合終了後にはサーバからログファイルが出 力される.ログファイルには,各プレイヤの能力を表 すパラメータ,試合の状況,サイクル毎のプレイヤや ボールの位置,プレイヤの行動といった試合中の全て の情報が含まれている.よってログファイルを使用す ることにより,終了した試合を完全に再現することが 可能である.2.4
オフライン開催における競技会実施の
流れと問題点
本研究では,RoboCup サッカーシミュレーション 2D リーグの競技へ参加する者を「競技者」,競技運営全 般を担う者を「運営」と定義する. 図 2 に,オフライン開催における競技会実施の一般 的な流れを示す.競技者は競技会当日,所定の時間まで に開発したチームのバイナリファイル(以降「チームバ イナリ」と呼ぶ)を運営へ提出する必要がある.運営は 競技者から提出された全チームのチームバイナリを,サ ンプルチームと 1 チームずつ 300 サイクル(30 秒間) 対戦させ,競技用計算機で正しく動作しているか目視で 確認する.これをバイナリテストと呼ぶ.参加チーム全 てのバイナリテストが終了すると,tournament script [5] を起動し試合を実行する.tournament script は複 数の参加チームから試合順を自動生成し試合を実行す る RoboCup サッカーシミュレーション 2D リーグの 運営向けツールである. 上記作業の準備として,運営は tournament script の設定ファイルをその都度コマンドライン上で編集し, トーナメントを実施するチーム名の情報や使用する計算 機のホスト情報を入力する必要がある.また,RoboCup サッカーシミュレーション 2D は分散マルチエージェン トシミュレーションであるが故に,計算機ネットワー クの構築が必須であり,プログラムの動作確認などの 競技運営に関する作業を自動化することが難しかった ことから,前述のような煩雑で多くの手順を人手で行 う必要があった.そのような背景から,RoboCup サッ カーシミュレーション 2D リーグに長年携わる競技者 が運営を兼務することが通例となっていた.加えて,会 場での競技用計算機セットアップからネットワーク環 境構築といった会場設営作業や事前の準備作業にも多 くの時間を割く必要があり,運営にタスクが集中する 傾向にあった. 競技者 運営 競技者から提出された全チームの チームバイナリを,サンプルチーム と 1 チームずつ対戦させ, 正しく動作しているか⽬視で確認 開発したチームのバイナリファイル (以降 チームバイナリ)を作成 tournament script の設定ファイルを コマンドライン上で編集し, トーナメントを実施するチーム名や 計算機のホスト情報を⼊⼒ tournament script を起動 競技会当⽇所定の時間までに チームバイナリを運営の 競技⽤計算機へ接続し提出 試合開始 競技⽤計算機セットアップや 会場内ネットワーク環境構築 機材搬⼊や設置等の会場設営作業 図 2: オフライン開催における競技会実施の流れ The flow of offline competition3
関連研究
本研究は RoboCup サッカーシミュレーション 2D 競技会のオンライン化と運営業務の自動化という 2 つ の側面について焦点を当てた研究である.本章では, RoboCup 分野に留まらず,幅広い分野におけるオンラ イン化と作業の自動化を目的として開発されたシステ ムについて紹介する. COVID-19 に起因する昨今の社会情勢の変化により, 様々な場面において対面形式から非対面形式への移行 が喫緊の課題となっていることから,コミュニケーショ ンのオンライン化を支援するシステムの開発が活発に なっている.oVice4 や,remo5 は,オンライン上に 仮想空間を用意し,その空間内で参加者のアバター同 士が自由に移動して会話することで,お互いがその場 にいるようなコミュニケーションを可能としたシステ ムである.このシステムを用いたオンラインイベント やバーチャルオフィスといった活用例も見られる.こ のように,これまで対面で行われることが常であった 様々なことをオンラインで実現しようとする試みがあ る.本研究は,このような昨今のオンライン化の試み の 1 つとして,RoboCup サッカーシミュレーション 2D 競技会の完全オンライン化を可能にするシステム の開発に至った. 計算機シミュレーションを自動化するシステムとして, 理化学研究所計算科学研究センターが開発した OACIS 6 がある.このシステムはシミュレーション実行管理 フレームワークであり,特長として,シミュレーショ ン時の一般的な作業である,リモートホストへのログ イン,ディレクトリの作成,実行用スクリプトの作成, 結果の送信,解析,管理といった手間の多くの工程を 自動化することが可能となる.これにより,研究者が 本来取り組むべき研究に集中するための時間的な余裕 が生まれるといった利点がある. しかし本研究では, RoboCup サッカーシミュレーションの実行だけではな く,オンラインでのチーム提出や,試合状況や結果の 通知など,シミュレーション実行以外の面でシステム に求められる要件が多いことから,OACIS のような汎 用システムを利用せず,本問題設定に特化したオンラ イン競技システムを開発した. また,RoboCup サッカーシミュレーション 2D への 適用を趣旨として開発されたシステムとして,筆者ら [6][7] の性能評価システム 7 がある.性能評価システ ムは,チームコミュニケーションツールである Slack [4] 上で動作する Slack bot [8] を採用し,計算機割り 当て,繰り返し試合実行,試合結果の解析や共有まで 一括で自動実行することにより,これまで RoboCup 4https://ovice.in/ja 5https://remo.co 6https://github.com/crest-cassia/oacis 7https://github.com/opusymcomp/autogame サッカーシミュレーション 2D リーグのチーム開発者 が多くの時間を費やしていた性能評価工程の大幅な効 率化・省力化を実現し,効率的なチーム開発の実現に 貢献した.他にも,福島ら [9] の LogAnalyzer3 8 や, 鈴木ら [10] のリアルタイム状況評価システムを応用し た観戦システム9がある.LogAnalyzer3 は,Python3 環境で実行可能な RoboCup サッカーシミュレーショ ン 2D リーグのログ解析ツールであり,試合終了後に 出力される 2 種類のログファイルから実際のサッカー で使用されている指標を算出することができる.最新 版の LogAnalyzer3 では,これらの指標算出に加えて キック分布など独自のゲーム分析機能が追加されてい る. リアルタイム状況評価システムを応用した観戦シス テムは,深層学習手法を用いて RoboCup サッカーシ ミュレーション 2D リーグにおける試合状況を定量的 に評価し,優勢または劣勢度合いに応じた視覚効果と 効果音によって RoboCup サッカーのエンターテイン メント性を向上させることに貢献した.これらの研究 についても,RoboCup サッカーシミュレーション 2D リーグや RoboCup プロジェクト全体のさらなる発展 に寄与することを目的として行われたものである点で, 本研究と共通していると言える.4
オンライン競技システム
本章では,本研究で開発したオンライン競技システ ムに要求される要件および,本システムの全体構成と その構成要素の概要について述べる.本システムはオー プンソースソフトウェアとして GitHub 上で公開され ている [3].4.1
システム要件定義
オンライン競技システムには,その名の通り競技会 をオンライン上で完結することが求められる.それを 実現するシステムの要件が 3 つある.1 つ目は,競技者 が開発したチームバイナリを運営へオンラインで提出 できるような仕組み作りである.これまでのオフライ ン開催では,運営が準備した競技用計算機に競技者が 各々アクセスし,開発したチームバイナリを提出して いた.しかし,オンライン開催の場合は,運営は競技者 に対してどのようにチームバイナリを提出してもらう かという点を考慮に入れる必要がある.さらに,チー ムバイナリを提出するユーザを制限する機能や,試合 開始後に提出を制限する機能についても考慮する必要 がある.2 つ目は,運営が試合のスケジューリングと 実行・進行管理を行えるような仕組み作りである.さ 8https://github.com/opusymcomp/loganalyzer3 9https://github.com/rinmunagi/spectator appらに,参加チーム数が多い場合,試合を行うグループ 分けの設定が必要となる.3 つ目は,試合の経過や結 果をオンライン上で逐一公開し,競技者間で共有でき るような仕組み作りについても検討する必要がある.
4.2
システム概要
図 3 にオンライン競技システムの概要図を示す. バイナリを Slack bot に提出 Slack bot 競技者 運営 サーバ計算機 ログファイルは Dropbox へ⾃動 アップロード - バイナリテスト結果 - 試合状況 - 試合結果 を通知 - トーナメント グループ設定 - 試合実⾏ を Slack bot に要求 - バイナリテスト - ⾃動試合実⾏ 図 3: オンライン競技システム概要 Outline of the online competition system 前述のシステム要件定義より,本システムは Slack bot [8] との対話形式によって以下の機能を実現した. 以降の各項でそれぞれの機能について説明する. 1. チームバイナリ提出とテスト 2. トーナメントグループ設定と試合実行 3. 試合結果通知とログファイル共有 4.2.1 チームバイナリ提出とテスト これまでのオフライン開催においては,競技者は会 場のネットワークを通じて自身の計算機を競技用計算 機へ接続し,コマンドライン操作によってチームバイ ナリを提出していた.また,運営は提出されたチーム を確認し,コマンドライン操作でバイナリテストを実 施していた. 本システムでは,運営は競技者全員に Slack [4] アカ ウントの作成と Slack ワークスペースへの参加を義務 づけている.競技者は参加した Slack ワークスペース 上で動作する Slack bot にダイレクトメッセージでチー ムバイナリを添付し送信する.これだけでチームバイ ナリ提出とバイナリテストが完了する.前述の通り,こ れまでのオフライン開催において,バイナリテストは 運営がサンプルチームとテスト試合を実施してその様 子を目視で確認していたが,本システムではチームバイ ナリ提出とバイナリテスト工程の全自動化を実現する ため,テスト試合のログファイルを LogAnalyzer3 [9] で解析し,Number of our disconnected players (試合 中に切断されたプレイヤの数) という指標を参照する ことで,予期せぬエラーなどによりプレイヤエージェン トの切断が発生していないかを自動で判別する.また, 運営は競技開始前など任意のタイミングで Slack bot にコマンド 1 つでバイナリテストを実施することも可 能である.さらに,Slack bot はワークスペース参加者 を一意に識別することが可能であることから,チーム 代表者といった特定の競技者のみにバイナリ提出権限 を付与する機能や,競技会当日のバイナリ提出期限後 に提出を制限する機能も実装されている. 図 4 に Slack bot との対話形式によるチームバイナ リ提出画面(競技者向け)を示す.競技者は Slack bot とのダイレクトメッセージ機能を使ってチームバイナ リを提出することができる. Slack ワークスペースには,話題や用途に応じて作成 されたチャンネルが複数存在し,それぞれのチャンネル でテキストチャットによる参加者間のコミュニケーショ ンが可能である.本システムは,このワークスペース 上で競技者同士の交流や運営によるアナウンスメント, チームバイナリ提出,試合の開始/終了や結果通知,ロ グファイル共有の全てを完結させることが可能である. 競技者 • 正常にアップロード完了した時 • 動作テストを開始した時 • アップロードと動作テストが問題なく完了した時 に Slackbot が競技者へ通知を送信 Slackbot とのダイレクトメッセージ画⾯で… ①「bin チーム名(例:HELIOS2019)」と⼊⼒ ② ファイル添付ボタンをクリックし, 開発したチームバイナリを添付 ③ ファイルの添付完了を確認し, 送信ボタンをクリック テスト試合のログファイルを出⼒ 正常に動作テストが完了しているか確認できる 図 4: Slack bot との対話形式によるチームバイナリ 提出Interactive team binary-submission with Slack bot
4.2.2 トーナメントグループ設定と試合実行
これまでのオフライン開催では,運営は手動で tour-nament script [5] の設定ファイルを編集してトーナメ ントグループを作成し試合を実行していた.
本システムでは,運営は Slack bot との対話形式で 各種コマンドを入力することで, Slack bot が tourna-ment script の設定ファイルを自動で書き換え,トーナ
メントグループの作成と作成したグループごとに試合 を実行することが可能となる. Slack ワークスペースには,誰でも参加できるチャン ネルと,ワークスペース管理者(=運営)またはワー クスペース管理者から追加されたユーザしか参加でき ないプライベートチャンネルがある.試合設定選択と 実行は運営のみが実行可能な操作であるため,運営専 用のプライベートチャンネルを作成し,そのチャンネ ル内で Slack bot へコマンドを送信している. 図 5 に Slack bot との対話形式によるトーナメント グループ作成画面を示す.運営は Slack bot との対話 形式による平易な操作でトーナメントグループ作成を 行うことができる. 運営 @運営 運営 @運営 運営 運営が“team”と⼊⼒すると バイナリテスト完了チーム名⼀覧を表⽰ (チーム名横の数字は,バイナリテスト が完了した⽇付と時刻を表している) 運営が“group* teams チーム名1,…” と⼊⼒すると,バイナリテスト完了 チームからトーナメントグループを作成 運営が作成したトーナメントグループ名 のみを⼊⼒すると,そのグループの試合 設定(ホスト計算機とサッカーサーバを 起動する計算機の IP アドレス)を表⽰
groupコマンドは group* [key] [value] と いう構造になっており,[key]にはhosts, server, teamsのいずれか,[value]には値 が⼊る. hosts, serverによって試合を実 ⾏するホスト計算機とサッカーサーバ を起動する計算機の IP アドレスをそれ ぞれ指定可能 図 5: Slack bot との対話形式によるトーナメントグ ループ作成
Interactive group creation with Slack bot
図 6 に Slack bot との対話形式による試合実行画面 を示す.運営は Slack bot との対話形式による平易な 操作で試合を実行することが可能となる. 運営 @運営 運営 運営が“check_maches group*” と⼊⼒すると,選択されたトーナメント グループ内チームの試合順を⾃動⽣成 運営が“start group*” と⼊⼒すると,⽣成された試合順に従い トーナメントグループの試合が順次開始 図 6: Slack bot との対話形式による試合実行 Interactive match execution with Slack bot
4.2.3 試合結果通知とログファイル共有 オフライン開催の場合では,会場に設置されたディス プレイを通じて試合結果を知ることができたため,試 合の開始/終了や結果の通知を行う仕組みは必要としな かった.また,各試合のログファイルについては全て の試合が終了後,運営が会場のネットワーク上に Web サーバを構築し,手動でアップロードしていたため,ロ グファイルにアクセスするためには全試合の終了を待 つ必要があった.
本システムでは, Slack bot によって Slack ワーク スペースに参加する競技者全員が試合の開始/終了や結 果通知を逐一受信することが可能になる.また,試合 終了後に出力されたログファイルは各試合ごとにクラ ウドストレージへ自動アップロードされ, Slack bot によってログファイル保存先を通知するため,運営は Web サーバを構築したり手動でアップロードする必要 がなくなり,競技者は試合終了後すぐにログファイル にアクセスすることが可能である. 図 7 に Slack bot による試合の開始/終了通知,結果 通知画面を示す.各試合のログファイルは試合ごとに クラウドストレージへ保存され,Slack bot が保存先の URL を通知する.
• 終了した試合の結果とチーム名を通知 • ログファイルの保存先であるクラウド ストレージの URL を通知 次に対戦が開始するチーム名を通知 トーナメントグループの全試合終了を通知 運営 … 図 7: Slack bot による試合の開始/終了通知,結果通知 Match start/end and result notification by Slack bot
5
ケーススタディ
本システムを使って以下の 2 つの大会をオンライン で実現した. • RoboCup 夏の大会 2020 (2020 年 8 月 19 日) 10 • RoboCup ジャパンオープン 2020 (2020 年 10 月 30 日 ∼ 11 月 1 日)11 RoboCup 夏の大会 2020 では,日本チーム 8 チー ムが参加し,総当たり戦で合計 28 試合が実施された. RoboCup ジャパンオープン 2020 は,RoboCup 日本 委員会公認の公式大会である.日本チーム 9 チーム, 海外チーム 8 チームの合計 17 チームが参加し,1 日目 に 28 試合,2 日目に 28 試合,最終日に 16 試合の合 計 72 試合が実施された.各試合の実況中継アーカイブ は,RoboCup Soccer Simulation 公式 YouTube チャンネル12 にて公開されている.
6
おわりに
本研究では RoboCup サッカーシミュレーション 2D リーグにおけるオンライン競技システムを開発した.開 発したシステムにより,実際にオンライン形式による 競技会開催の実現に貢献し,これまでのオフライン開 催において人手で行われていた運営業務フローの自動 化を実現した.また,チャットボットシステムによる自 動応答のおかげで国外からの競技会参加者へのスムー 10http://rc-oz.osdn.jp/summercompe2020/results.xml 11http://rc-oz.osdn.jp/pukiwiki/index.php?Event/2020/JapanOpen 12https://www.youtube.com/channel/UCsSC59MJKMudQI6v3QP3Y2g ズな対応を実現したことも本システムの貢献の 1 つで ある.今後の課題として,現状 1 台の計算機でサーバ と両チームのプレイヤを起動しているが,将来的には それぞれ別の計算機を用意して試合を実施することに ついても考慮する必要があると考えられる.また,今後 Amazon Web Services (AWS) [11] や,Google Cloud Platform (GCP) [12] などのクラウドプラットフォー ム環境での使用も想定し,システムの改善も行ってい く必要があると考えられる.参考文献
[1] Hiroaki Kitano, Minoru Asada, Yasuo Kuniyoshi, Itsuki Noda, Eiichi Osawa, and Hitoshi Matsub-ara, “RoboCup: A Challenge Problem for AI”,
AI Magazine, Vol. 18, No.1, pp. 73–85, 1997.
[2] 秋山 英久, “ロボカップサッカー シミュレーショ ン 2D リーグ必勝ガイド”,秀和システム, 2006. [3] competition-manager | opusymcomp https://github.com/opusymcomp/competition-manager 2021 年 2 月 1 日 閲覧. [4] Slack https://slack.com 2021 年 2 月 1 日 閲覧.
[5] tournament script | rcsoccersim
https://github.com/rcsoccersim/tournament 2021 年 2 月 1 日 閲覧. [6] 久我 亮太, 鈴木 雄大, 中島 智晴, “RoboCup サッ カーシミュレーション 2D における性能評価シス テムの開発”, 人工知能学会 「社会における AI」 研究会論文集, Vol. 36, pp. 1–7, 近畿大学(大阪), 2019 年 12 月 7 日.
[7] Ryota Kuga, Yudai Suzuki and Tomoharu Nakashima, “An Automatic Team Evaluation System for RoboCup Soccer Simulation 2D”,
Proc. of the Joint 11th International Conference on Soft Computing and Intelligent Systems and 21st International Symposium on Advanced In-telligent Systems (SCIS&ISIS2020), pp. 39–42 ,
Online Conference, December 5-8, 2020. [8] Slack API | Slack
https://api.slack.com 2021 年 2 月 1 日 閲覧.
[9] 福島 卓弥, 中島 智晴, 秋山 英久, “LogAnalyzer3 を用いたサッカー戦略分析” 第 35 回 ファジィ シス テム シンポジウム (FSS2019) 予稿集, pp. 26–30, 2019. [10] 鈴 木 雄 大 ,福 島 卓 弥 ,中 島 智 晴 ,秋 山 英 久 , “RoboCup サッカーにおける状況評価のリアルタ イム化と観戦システムへの応用”,日本知能情報 ファジィ学会誌(知能と情報), Vol. 32, No. 1, pp.534-538, 2020.
[11] Amazon Web Services https://aws.amazon.com 2021 年 2 月 1 日 閲覧. [12] Google Cloud Platform
https://cloud.google.com 2021 年 2 月 1 日 閲覧.