next up previous contents index
Next: 視界の範囲 Up: センサモデル Previous: コミュニケーションの範囲   Contents   Index


視覚センサモデル

現在,プレイヤに見えている物体の情報は視覚センサによって伝えられる. 情報は sense_step(現在,150)ミリ秒ごとにプレイヤへと自動的に 送られる.

サーバから送られてくる視覚情報は,次のような基本フォーマットを持つ:

(see ObjName Distance Direction DistChng DirChng BodyDir HeadDir)

各要素のフォーマットは,

ObjName ::= (p ''Teamname'' UniformNumber goalie)
    $\vert$ (g [l$\vert$r])
    $\vert$ (b)
    $\vert$ (f c)
    $\vert$ (f [l$\vert$c$\vert$r] [t$\vert$b])
    $\vert$ (f p [l$\vert$r] [t$\vert$c$\vert$b])
    $\vert$ (f g [l$\vert$r] [t$\vert$b])
    $\vert$ (f [l$\vert$r$\vert$t$\vert$b] 0)
    $\vert$ (f [t$\vert$b] [l$\vert$r] [10$\vert$20$\vert$30$\vert$40$\vert$50])
    $\vert$ (f [l$\vert$r] [t$\vert$b] [10$\vert$20$\vert$30])
    $\vert$ (l [l$\vert$r$\vert$t$\vert$b])

Distance, Direction, DistChng そして DirChng は,次の方法で計算される:


$\displaystyle p_{rx}$ $\textstyle =$ $\displaystyle p_{xt} - p_{xo}$ (1)
$\displaystyle p_{ry}$ $\textstyle =$ $\displaystyle p_{yt} - p_{yo}$ (2)
$\displaystyle v_{rx}$ $\textstyle =$ $\displaystyle v_{xt} - v_{xo}$ (3)
$\displaystyle v_{ry}$ $\textstyle =$ $\displaystyle v_{yt} - v_{yo}$ (4)
$\displaystyle \mbox{\textsl{Distance}}$ $\textstyle =$ $\displaystyle \sqrt{p_{rx}^2 + p_{ry}^2}$ (5)
$\displaystyle \mbox{\textsl{Direction}}$ $\textstyle =$ $\displaystyle \arctan{(p_{ry}/p_{rx})} - a_o$ (6)
$\displaystyle e_{rx}$ $\textstyle =$ $\displaystyle p_{rx} / \mbox{\textsl{Distance}}$ (7)
$\displaystyle e_{ry}$ $\textstyle =$ $\displaystyle p_{ry} / \mbox{\textsl{Distance}}$ (8)
$\displaystyle \mbox{\textsl{DistChng}}$ $\textstyle =$ $\displaystyle (v_{rx} * e_{rx}) + (v_{ry} * e_{ry})$ (9)
$\displaystyle \mbox{\textsl{DirChng}}$ $\textstyle =$ $\displaystyle [(-(v_{rx} * e_{ry}) + (v_{ry} * e_{rx}))
/ \mbox{\textsl{Distance}}] * (180 / \pi)$ (10)
$\displaystyle \mbox{\textsl{BodyDir}}$ $\textstyle =$ $\displaystyle \textsl{PlayerBodyDir} - \textsl{AgentBodyDir} -
\textsl{AgentHeadDir}$ (11)
$\displaystyle \mbox{\textsl{HeadDir}}$ $\textstyle =$ $\displaystyle \textsl{PlayerHeadDir} - \textsl{AgentBodyDir} -
\textsl{AgentHeadDir}$ (12)

$(p_{xt},p_{yt})$ は対象物体の絶対位置座標, $(p_{xo},p_{yo})$ は観測者 プレイヤの絶対位置座標, $(v_{xt},v_{yt})$ は対象物体の絶対速度, $(v_{xo},v_{yo})$ は観測者プレイヤの絶対速度,そして,$a_o$ は観測者プ レイヤの視界方向である. プレイヤの視界の絶対方向は,そのプレイヤの BodyDirHeadDir の和である. これに加え, $(p_{rx},p_{ry})$ は対象の相対位置座標, $(v_{rx},v_{ry})$ は対象の相対速度, $(e_{rx},e_{ry})$ は相対位置ベクトルに並行な単位ベク トルである. BodyDirHeadDir は,対象オブジェクトがプレイヤであ る場合にのみ含まれ,それぞれ,対象プレイヤの体と首の方向である. これらの方向は,観測者プレイヤの視界方向に対して相対な値で得られる. 例えば,対象プレイヤと観測者プレイヤが同じ方向に視界を向けていれば, HeadDirの値は0になる.

物体(goal r)は,右サイドのゴールラインの中心として解釈され る. (f c)は,フィールド中央にあるフラッグである. (f l b)はフィールド左下隅,(f p l b)は左サイドの ペナルティエリアボックス右下隅に存在するフラッグである. (f g l b)は,左サイドのゴールの右ポストに位置するフラッグで ある. 残りのタイプのフラッグは全て,フィールドの5メートル外側に存在する. 例えば, (f t l 20)は,上側のサイドラインから5メートル,セ ンターラインから左に20メートルの位置に存在する. 同様に,(f r b 10)は,右のゴールラインから5メートル,右ゴー ルの中央から下へ10メートルの位置に存在する. 更に,(f b 0)は,下側のサイドラインの中央から下に5メートル の位置に存在する.

(l ...)というメッセージの場合,Distanceはプレイヤの 視界方向と対象ラインとの交点までの距離である. Directionは,対象ラインの方向である.

Figure 4.2: 仮想フィールド上のフラッグとライン
Image field-detailed



Subsections
next up previous contents index
Next: 視界の範囲 Up: センサモデル Previous: コミュニケーションの範囲   Contents   Index
Hidehisa Akiyama 2004-11-21