TODOリスト

運営に関するルールや要望

  • Qualificationに通ったにも関わらず,連絡なくRegistrationしなかったチームは,次の年に失格とするべき.
  • 使用するベースコードのライセンスの遵守
  • サーバの仕様変更提案を受け付ける掲示板+投票システムが必要.sourceforge.netで行えば充分?
  • OCとTCの役割を明文化する.
  • Qualificationシステム開発
    • チーム登録
    • Qualifiction Matrerialの投稿
    • チーム同士でのTDP監視体制

rcssserver

ルールとは無関係の改良

  • コマンドパーサをboost::spiritで書き直す.
  • server.confとplayer.confに不適切な設定が書かれた場合への対応.
    プレイヤタイプの総数と割当て可能数の矛盾,スピードに負の値が与えられた,など.
    • 値の範囲のチェックができるValidatorを作る.
  • READMEかINSTALLに必要なライブラリを列挙する.
  • Initializer
    • setSenders()の位置の整理.setSenders()が,PlayerはTeam::newPlayer()で,Coachは自分のクラス内で,OnlineCoachはStadium::newCoach()内で実行されている.手順を統一する.
  • モニタプロトコルv3 & ログフォーマット v4
    • team_graphic_[lr]メッセージを記録する
    • 各プレイヤからのsayメッセージもログに含める?
      • メッセージ内容は不要.誰からの声を聞いたかを記録すれば十分.
    • モニタが最後のPKの状態を認識できるように,PKの最後のプレイモードを通知するようにする.
  • team_graphicコマンドで使用されるXPMのフォーマットがcpp>1のデータを扱えない,修正が必要.
  • ゴールキック時の敵プレイヤによる妨害のチェックがやや怪しい.
  • Playerクラスの多重継承を解消

rcssserver-15 (2011年用)以降に実装するかも?

  • セットプレイ時に審判が自動でプレイヤをボールから遠ざける処理を無くす.違反したプレイヤにはファウル(イエローカード)を与える
  • セットプレイの待ち時間を増やす(サイクル停止時間を長くする) server::setplay_wait_periodなどのパラメータで制御できるようにする
  • drop_ball_timeを短くする
  • 低確率での一発レッドカード
  • キャッチモデル
    • 確率でキャッチに失敗した場合は,ボールに何らかの加速度を加え,ボールをこぼすようにする.
  • キャッチモデルのトレードオフ
    • キャッチ可能な距離とキャッチコマンドの方向にトレードオフを導入し,距離が長い場合はキャッチ可能な方向が制限されるようにする.
  • 異なるフィールド
    • ボール/プレイヤの速度減衰率の動的変化
    • 風/雨を有効にする.
    • フィールドタイプ(芝の長さなど)を導入する
    • フィールド状態のランダムな初期化.フィールド上にdecayが変動する領域を設定する
  • 特定のセットプレイ時にはキックパワーレートとボールの最大スピードを大きくする
  • min_dash_powerを変更(-75〜0?)
  • ランドマークの数を減らす
  • コーチはプレイヤタイプを観測できるようにして,see_globalの精度を落とす
  • pointtoを毎サイクル実行に変更.少なくとも,point_to_ban(5)とpoint_to_duration(20)の値を小さくする
  • トレーナ用fullstate
    トレーナがプレイヤの全情報を取得できるようにする.
  • チームIDの登録
    クライアントのセンサ情報に含まれるチーム名の先頭に一意なIDを付与できるようにする.あるいは,チームIDを送信できるようにする
    チーム名を変更することで特化戦略に対応しようとする小細工を抑制することが目的
    result languageと関連するかも
  • 衝突モデル
    • プレイヤ同士でまたはポストと衝突した場合,一定確率で数ステップの間動けなくする.
    • 少なくとも,ボールとプレイヤとの衝突での減速率は変更されるべき
  • max_neck_momentを小さくする(180 -> 90?)
  • センサ精度にもヘテロを導入
  • コミュニケーションの文字数を更に減らす(そして,pointtoの使用を推進する).
  • sayにスタミナを要求.powerを引数に取って,より大きなpowerを使えばより遠くまで声が届くようにする
  • pauseモード
    プレイモードのpauseを有効にする.pauseの間,プレイヤへはsense_bodyだけが送信される?
  • 本当の意味での選手交代を可能にする
    クライアントプログラム自体を交換できるようにする.新規プレイヤが接続+交代コマンドを実行.接続済みプレイヤが了解コマンドを返信すれば,旧プレイヤと新プレイヤを交代させる.
  • ボールに回転をかけられるようにする.回転のモデルを導入しなければならない.

rcssserver-14 (2010年用)に実装予定

  • (完了)スタミナキャパシティの最大値を減らす
  • (完了)ファウルと退場
    より速いスピードで衝突したプレイヤにファイルを与える?
    走っているプレイヤに対して背後からタックルしたプレイヤにファウルを与える?
  • TCP/IP対応
  • 完全な再現性(乱数管理)

rcssserver-13 (2009年用)に実装予定

  • (完了)rcssbaseの統合
  • (完了)新ダッシュモデル
    dashコマンドに第2引数を追加し,全方位移動を可能に
  • (完了)新スタミナモデル
    スタミナの最大値を4000から8000へ
    スタミナ回復量の上限を設定するスタミナキャパシティのパラメータを導入
  • (完了)後方タックル禁止
    max_back_tackle_power=0に変更
  • (完了)ヘテロのパラメータ調整
    加速性能を更に押さえ,実際の人間になるべく近い能力となるように調整
  • (完了)kickを観測可能にする(コーチも)
  • (完了)rclのフォーマット修正
    サイクル停止中のカウントも記録するようにする.

rcssserver-12 (2008年用)に実装予定

  • (完了)厳密なバックパス検出
    プレイオン中,敵がボールに触った後にキーパーが自分で蹴ったボールは自分でキャッチ可能とする.
  • (完了)server_param に追加
    • サーバのバージョン情報
  • (完了)バックパスを間接フリーキックにする
    • (完了)関節フリーキックの位置は,現実のサッカーのルールを厳密に採用する
      • ゴールエリア外の場合は,そのまま違反を犯した位置から開始.
      • ゴールエリア内でのバックパス違反は,ゴールエリアのライン上から開始.
      • 守備側プレイヤは,ゴールライン上に並ぶことが出来る. 守備のための時間を通常のフリーキックよりも長めに与えるべきかもしれない.
    • (完了)キックとキャッチが同時だった場合はバックパスを取らないことにする.
  • (完了)キャッチフォルトを直接フリーキックにする.
    • 3回キャッチフォルトしたキーパは退場にすべき?
  • (完了)キーパが自分自身で蹴ったボールをキャッチした場合にファウルになるようにする.
  • (完了)タックル関係
    • (完了)マイナス方向のタックルを禁止にする.
      server_param へ max_tackle_power(100) と min_tackle_power(0) を追加
    • (完了)tackle_power_rateを下げて,タックルによるボール加速を抑える.tackle_power_rate=0.0135くらい?
  • (完了)ヘテロ関係
    • (完了)ヘテロプレイヤの足の速さを抑える.少なくとも,max speedを出すためにはmax powerが必要になるようにする.
    • (完了)デフォルトタイプがアベレージなパラメータを持つようにする.
    • (完了)プレイヤタイプを全14 18種類に,一度に使える数を1にする.
      • 初期接続時はサーバ側で強制的にタイプを割り当てる.
      • 初期接続時はデフォルトタイプ.キックオフ時に交代していなかったら,サーバ側で強制的に変更.
      • キーパはデフォルトタイプ固定.
      • before_kick_off時のみ有効の(chanege_player_types [(<unum> <type>)]+)を用意し,全員のタイプを一度に指定できるようにする.
      • kick_off後は,一度使用したタイプには交代できないようにする(デフォルトタイプはOK)
      • allow_mult_default_typeオプションを用意し,実験用に全員デフォルトにできるようにしておく
    • (検討中)extra_staminaを廃止して,effortの値がeffort_dec_thrとrecover_dec_thrに影響するようにする.
  • (完了)点が入りやすくなるように
    • (完了)ボールの最大スピードを上げる(3.3m/cycle = 時速約118kmで現実に近い,最大で約55m飛ぶようになる).3.3m/cycle では速すぎるので,3.0m/cycleに変更.ball_decayとkick_power_rateはそのまま.
    • (完了)キーパのキャッチエリア縮小
      catch_area_l = 1.2 1.2 〜 1.35 くらいの範囲でテスト 1.2
      • (検討中)catchコマンドの方向に制限を加えて,体の前方でしかキャッチできなくする?min_catch_angle(-180) max_catch_angle(180)
      • (検討中)キャッチ可能エリアは思いきって縮小して,punchコマンドを追加すべきかも?
      • (検討中)キャッチ成功確率の導入?距離が遠くなるほど成功確率が低くなるように
  • (完了)キックに加わるノイズにボール速度の大きさを反映する.
    • (完了)ボール速度が大きいほど,キック/タックルを不正確にする.現在のボールスピードが大きいほど,キック/タックルによる加速の方向にノイズが混入されるようにする.このノイズの大きさの範囲は,ヘテロのkick_randによって決定される.
  • (完了)seeの同期
    • バージョン12以降のクライアントは 90 or 180 のみへと根本的に変更する.90度のときは毎サイクル,180度の時は2サイクルに一回のseeメッセージを受信できるようにする
    • seeメッセージの受信タイミングは,sense_bodyの直後
  • (完了)簡略形change_viewコマンド
    バージョン12のプレイヤには精度がlowのモードが不要なので,視界の広さだけを指定できるchange_viewコマンドを用意する.バージョン11以前のプレイヤが子の形式のコマンドを使った場合,視界の精度は自動的にhighになることにする.
    (change_view <ViewWidth>)
  • (完了)センサ関連
    • (検討中)seeに含まれる物体の識別精度のルールを緩くする
    • (検討中)プレイヤタイプの情報をseeメッセージに(または,see_globalだけに?)含める.
    • (検討中)see_globalメッセージに含まれる数値の精度を下げる.位置と速度は小数点以下2桁もあれば充分では?
    • (完了)sense_bodyに衝突情報を含める.
  • (完了)延長戦ではハーフでのスタミナ回復無し
  • (完了)ノイズモデル修正
    ノイズの与え方を直交座標系から極座標系へ変更.

実装済み

  • (完了)Logger
  • (完了)SerializerMonitor, InitSenderMonitor, VisualSenderMonitor?
  • (完了)SerializerLogger
  • (完了)モニタの接続個数制限.参加者が手元で観戦することを抑制する.
  • (完了)コーナーキック時に,フィールド端に守備側プレイヤが閉じ込められないようにする.
  • (完了)標準のTimerを,無駄にモジュールロードにせず組み込みにする.
  • (完了)モニタをトレーナ代わりに使えるようにする.トレーナモード時には,モニタからのトレーナのコマンドを受け付けるようにする
  • ObserverCoachとVisualSenderCoach 完了(2007-08-08)
  • ログ保存ディレクトリの動的作成 完了(2007-07-27)
    存在しないディレクトリにログを書き出そうとすると,何も保存されないまま試合を実行できてしまう.ディレクトリが存在しなければ,その場で作成する.最低限,ログファイルオープンに失敗したらサーバを終了させるべき.
  • before_kick_off 時に速度を0にセット 完了(2007-07-27)
  • トレーナのinitコマンドで,バージョン指定の無いフォーマット(すなわち,"(init)" のみ)を受け付けられるようにする 完了(2007-07-27)
  • timer_overになったときに,左サイドのプレイヤがボールから遠ざけられている

rcssmonitor

  • ゴールポストを見える大きさにする(描画の最小半径を1か2にすればOKか?)
  • (完了)モニタプロトコルv3 & ログフォーマット v4
  • (完了)team_graphic メッセージのサポート
  • 高速化
  • ライブラリのチェックをpkg-config で置き換え(pkg-configのインストールを強制するのは横暴?)

rcssmonitor_classic

  • モニタプロトコルv3 & ログフォーマット v4

rcsslogplayer

  • (完了)モニタプロトコルv3 & ログフォーマット v4
  • (完了)Qt3/4で再実装
  • (完了)Windowsサポート
  • (完了)単体でビューワも兼ねさせる
  • (完了)従来のログサーバ機能も残す
  • (完了)モニタクライアントとしても動作させる

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-03-14 (月) 14:51:37 (1367d)
SourceForge.JP
Creative Commons License
RoboCup tools by Hidehisa Akiyama is licensed under a Creative Commons 表示-非営利 2.1 日本 License.