AC算法
输入端是状态,只是经过网络输出的是符合动作维度的一组向量,然后用softmax转换成概率,这是怎么把它和环境中的动作联系起来的?环境中的动作和这个状态有啥关系啊
Actor网络结构如下
class PolicyNet(torch.nn.Module):
def __init__(self, state_dim, hidden_dim, action_dim):
super(PolicyNet, self).__init__()
self.fc1 = torch.nn.Linear(state_dim, hidden_dim)
self.fc2 = torch.nn.Linear(hidden_dim, action_dim)
def forward(self, x):
x = F.relu(self.fc1(x))
return F.softmax(self.fc2(x), dim=1)