質問編集履歴
1
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
### 実行したいこと
|
2
2
|
現在、Unityで,マップ内の建物をよけながら車を運転するBotを[ML-Agents](https://unity.com/ja/products/machine-learning-agents)で実装しているのですが、自分が作ったBotの車がうまく進んでもらえず、ずっとその場でくるくる回っているだけです。
|
3
3
|
### 報酬内容
|
4
|
-
- 前進、後退を
|
4
|
+
- 前進、後退をするごとに報酬(0.001)を与える
|
5
5
|
- **くるくる回るのを防ぐため、** ハンドルを動かすと罰(-0.001)を与える
|
6
|
-
- 壁にぶつかると罰(-1)を与える
|
7
6
|
- スポーンから300秒すると強制的にリスポーン
|
8
7
|
- 死亡または壁にぶつかると罰(-10)を与える
|
9
8
|
|
@@ -69,23 +68,6 @@
|
|
69
68
|
}
|
70
69
|
}
|
71
70
|
|
72
|
-
void Update(){
|
73
|
-
}
|
74
|
-
|
75
|
-
private GameObject map;
|
76
|
-
public void OnCollisionStay(Collision collision){
|
77
|
-
|
78
|
-
if(collision.gameObject.tag == "Bullet"){
|
79
|
-
AddReward(-1f);
|
80
|
-
}
|
81
|
-
|
82
|
-
map = collision.transform.root.gameObject;
|
83
|
-
if(map.gameObject.tag == "Map"){
|
84
|
-
AddReward(-1f);
|
85
|
-
bot_script.atDead(); //死亡処理を行う
|
86
|
-
}
|
87
|
-
}
|
88
|
-
|
89
71
|
public void dead(){
|
90
72
|
AddReward(-10f);
|
91
73
|
//エピソード終了
|