ここで見つかった以前の質問に関連して:すべてが相互接続されるように迷路/グリッドの壁を接続する
現在、私のロボットは、次のように、グリッドの位置を左前、真前、右前に読み取ります。
[00][01][02]
[10][11][12]
[20][^^][22]
[21]北向きは、[10] [11] [12]と表示されます。これには、探しているオブジェクト/トレイルが含まれている可能性があります。
グリッド内に、センサー入力を次のようなアクションにマッピングすることをロボットが追跡できるようにしたトレイルがあります。
Sensor Actions:
000 =
001 =
010 =
011 =
100 =
101 =
110 =
111 =
これらは、turnleft()、turnright()、goforward()と等しくなるか、何もしません。
現在、トレイルピースの14/15を見つけることができますが、次のようにトレイルとのギャップがある最後のピースを見つけることができません。
#KEY: x = empty, R = robot start position, T = trail
[x][x][x][x][x][x][x][x]
[x][x][x][x][x][x][T][x]
[x][x][x][x][x][x][x][x] <- Here is the gap!
[R][T][T][T][T][x][T][x]
[x][x][x][x][T][x][T][x]
[x][x][x][x][T][x][T][x]
[x][x][x][x][T][x][T][x]
[x][x][x][x][T][T][T][x]
私が抱えている問題は、それが裁判のギャップに達すると、それを処理することができず、寿命が尽きるまで無意味に回転してしまうことです。
何らかの形で記憶や学習を追加する必要があることは知っていますが、これを何をどのように実装するかがわかりません。
助言がありますか?