問題は次のように分類できます。
<x0,y0,x1,y1>(x0−y0)2+(x1−y1)2−−−−−−−−−−−−−−−−−−√
<x0,y0,x1,y1>
もちろん、2つの別個のニューラルネットワークでこれを行う理由はないので、2つのエンドツーエンドを組み合わせて、画像を入力として、距離を出力として取得するモデルを作成できます。
ただし、このモデルはラベル付きデータでトレーニングする必要があるため、自分でデータを生成するか、画像にラベルを付ける必要があります。
しかし、教師なしで距離を縮めるという概念を学習したい場合は、強化学習を使用する必要があります。この場合、距離を縮めるためにエージェントにインセンティブを与える環境をセットアップする必要があります。これは、アクションが距離を縮めた場合に報酬を得るのと同じくらい簡単かもしれません。
別のアプローチは、将来の報酬を使用してエージェントにインセンティブを与えることです。つまり、報酬は次の即時状態の結果からのみ得られるのではなく、次の可能な状態からの貢献、およびその後の貢献などもあります。これがDeep Q-Learningの背後にある考え方であり、このノートブックに簡単な例(あなたが説明しているものと非常によく似ています)を実装します。
それで、今問題は次のとおりです:この実装は、成功への道をたどるまでランダムに動き回る以外の何かをしましたか?
あなたの例では、目標に到達したときにエージェントに報酬を与えることについて話します。しかし、私が説明したように、目標に近づくことによって報酬を獲得しました(Q関数を介して、または環境から直接)。これは、距離の抽象的な概念を学習することで可能になります(教師ありバージョンで説明できます)。
人間がこれを学ぶとき、それは同じ正確な理由のためです:人間は、将来の報酬の感覚を通してその方向に動くことに対する報酬を得ています。
十分なトレーニングとデータがあれば、強化学習はこの概念を簡単に学ぶことができると思います。ボードに存在する他の報酬(たとえば、「ボードのエントロピーを最小化し、報酬を得ようとする」)に関しては、自分が何を求めているのかを考える必要があります。むしろエージェントは距離を最小化するか、報酬を最大化しますか?原因は、通常、両方を行うことはできません。2つの間のバランスを探している場合、実際には、距離を考慮して報酬を再定義しています。