回答編集履歴

2

edit

2018/03/21 02:47

投稿

mkgrei
mkgrei

スコア8560

test CHANGED
@@ -25,3 +25,81 @@
25
25
  環境に依存して取れるactionを動的に変更する方法(の参考になるかも)。
26
26
 
27
27
  https://stackoverflow.com/questions/45001361/open-ai-enviroment-with-changing-action-space-after-each-step
28
+
29
+
30
+
31
+ ---
32
+
33
+
34
+
35
+ 編集後について
36
+
37
+
38
+
39
+ ```python
40
+
41
+ self._shape = (11, 5)
42
+
43
+ self.observation_space = gym.spaces.Box(low=0,
44
+
45
+ high=1,
46
+
47
+ shape=self._shape)
48
+
49
+ ```
50
+
51
+ は正しいです。
52
+
53
+
54
+
55
+ ステップ関数はステップの場所というパラメータが1つあります。
56
+
57
+
58
+
59
+ ```python
60
+
61
+ def step(x, t=0.5):
62
+
63
+ if x > 0.5:
64
+
65
+ return 1
66
+
67
+ else:
68
+
69
+ return 0
70
+
71
+ np_step = np.vectorize(step)
72
+
73
+ ```
74
+
75
+
76
+
77
+ numpy.arrayを一気に操作したいのなら上のような関数を作ると見通しがいいです。
78
+
79
+
80
+
81
+ ```python
82
+
83
+ arr = np.array(arr)
84
+
85
+ arr[arr>0.5] = 1
86
+
87
+ arr[arr<=0.5] = 0
88
+
89
+ ```
90
+
91
+ でもできますが。
92
+
93
+ いろいろ書く方法があります。
94
+
95
+
96
+
97
+ サンプルであるせいかもしれませんが、状態が無から生成されているようになっています。
98
+
99
+ 強化学習は「前状態」→「操作」→「後状態」、
100
+
101
+ になるので、前状態と操作に依存して遷移先の後状態が決まるはずです。
102
+
103
+ 前状態からの差分操作を定義しないとポリシーがうまく学習できないかもしれません。
104
+
105
+ サンプルなので、そのように書いているだけかもしれませんが、一応気になったので。

1

edit

2018/03/21 02:47

投稿

mkgrei
mkgrei

スコア8560

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ```python
8
8
 
9
- self._shape = (3, 3)
9
+ self._shape = (11, 5, 3)
10
10
 
11
11
  self.observation_space = gym.spaces.Box(low=0,
12
12