Olá e bem-vindo ao Statoil.
OK, então calculamos a entropia e a adicionamos à lista de entropias.
E agora o que vamos fazer é tirar uma queda aleatória de uma ação de acordo com a
distribuição das probabilidades do próximo.
Então vamos fazer isso.
Esse é o próximo passo.
Ainda estamos no circuito porque ainda estamos executando as etapas aqui.
E então você agora sabe como jogar a ação.
Em primeiro lugar, vamos introduzir uma variável para a ação chamada ação e, em
seguida, tomamos nossa distribuição de probabilidades e vamos usar a função multi neural para tirar um sorteio aleatório dessa
distribuição de probabilidades e, em seguida, adicionamos esses dados.
Portanto, é importante notar que a ação será realmente um tensor com apenas um valor, mas você não deve
ver isso como um valor simples.
Você deve ver isso como uma condenação de tensor uma por uma que contém esse valor para a ação.
E isso é porque não é espremido ainda no mesmo loop.
Nós vamos obter a probabilidade de log associada à ação que acabou de ser jogada.
E então, quando eu estou namorando a chance da minha chance aqui, tomando a anterior, a sorte
anterior daquilo que calculamos aqui e depois eu vou usar o outro método ao qual eu vou entrar 1 e a ação
que foi apenas jogando porque queremos ter a chance de chance associada a essa ação.
E então o segundo argumento aqui vou colocar minha ação, mas tem que haver como uma tortura horrível,
conforme exigido pela função reunida e a função reunida apenas indexa com um inteiro de tensor.
Tudo bem, então agora acabamos de ter o aspecto de associado à ação que foi exibida.
E agora o próximo passo é acrescentar o que chegamos à lista aqui.
Então, conseguimos o valor.
Isso é o que chegamos aqui como o resultado do modelo.
Então, nós também conseguimos o problema de bloqueio.
Então, vamos adicionar o bloqueio à lista de apoios de bloqueio.
Nós já acrescentamos que a entropia para a entropia é menos boa e as recompensas serão obtidas depois.
Então, vamos abrir o valor e procurar a lista de valores e o processo da lei.
Vamos fazer isso.
que usamos a função de gasto e adicionamos o valor que foi retornado pelo modelo perfeito, então, o mesmo
para os problemas de bloqueio. Nós acabamos de receber nossos novos adereços e vamos anexá-lo à lista de apoios de bloqueio.
Nós levamos a nossa lista de valores, adicionamos
E então, nesta função de anexação, podemos colocar um registro de nossa sorte, provavelmente, foi calculado aqui.
Tudo bem, então nossas listas estão agora bem atualizadas.
Agora, o que vamos fazer é jogar a ação porque na verdade, aqui selecionamos a
ação, tirando um desenho aleatório da distribuição de probabilidades aqui.
Mas, na verdade, ainda não jogamos e vamos jogar agora para que possamos alcançar o novo estado
e, portanto, obter a nova transição e tocá-la.
porque jogamos a ação em nosso ambiente, então vamos usar o método passo.
Nós vamos levar nosso ambiente
E dentro, especificamos a ação que foi selecionada para tocá-la e, para isso, adotamos nossa ação e acrescentamos
que nenhuma, porque é o que se espera que seja a função.
Ok, mas isso retorna realmente o novo estado e também a nova recompensa porque ao alcançar o novo estado obtemos uma nova
recompensa e também obtemos um novo valor para Dunn saber se o jogo está pronto ou não.
Tudo bem, então, com isso, tocamos a ação, chegamos a um novo estado e recebemos uma recompensa e sabemos se
acabamos com o jogo.
E falando em ser feito com o jogo.
Bem, vamos apenas adicionar algo aqui que assegurará que um agente não seja empilhado em
algum estado.
E para fazer isso, vamos atualizar isso feito muito bem da seguinte maneira.
Bem, será igual ou vamos adicionar uma condição dizendo que o episódio do jogo não
deve durar muito tempo e veremos na função principal que haverá um parâmetro de comprimento
máximo que será igual para 10000.
E não queremos que um episódio dure mais de 10000 unidades.
uma condição maior do que o episódio máximo Lex, que na verdade não dissemos isso por completo.
Então, vamos ouvir o comprimento do episódio, que é o comprimento de um episódio e vamos escrever
Estamos obtendo isso de nossos parâmetros para um final aqui Paramjit, mas Ramstad.
Max está ao longo do tempo.
Então, isso significa que se o jogo estiver pronto ou o comprimento do episódio for maior do que o comprimento máximo do conjunto
de episódios, que será igual a 10000.
Bem, o jogo será feito e vamos começar um novo jogo.
OK, então é apenas uma precaução.
precaução, vamos adicionar outra precaução para apertar a recompensa entre menos 1 e mais 1.
E, falando de
Nós já conseguimos que estávamos aqui, mas queremos garantir que a recompensa seja entre menos 1 e
mais 1.
E para fazer isso, precisamos apenas atualizar a recompensa, fazendo isso levando o máximo, em seguida,
levando os homens de recompensa e 1.
E aqui nós levamos o máximo do mínimo de recompensa e 1 e menos 1 e isso garantirá que a
recompensa esteja entre menos uma mais uma.
Tudo bem.
Então, outra percussão.
E agora só queremos verificar se o jogo está pronto, caso em que vamos reiniciar o ambiente.
E por que precisamos verificar que agora é porque acabamos de chegar a um novo estado.
Acabamos de passar por uma nova transição.
Portanto, precisamos verificar que depois de passar esta nova transição.
Bem, o jogo não é feito, então, se feito novamente se for feito, nesse
caso, vamos reiniciar os ambientes, estabelecendo o comprimento do episódio para zero.
reinicializar à medida que tomamos nosso ambiente e usamos a função de reinicialização OK.
E também o estado será reinicializado para
Agora, saímos dessa condição que estava apenas a verificar.
E agora, o que faremos é que chegamos a um novo estado, enquanto esse novo estado é agora e
depois por Ray, porque lembre-se de que os estados são as imagens de entrada que originalmente são nomeadas por arrays.
E agora, o que temos a fazer é converter o novo estado em uma resposta torturada.
Então, vamos atualizar nosso estado e vamos usar a biblioteca da tocha.
E, claro, a função não-tailandesa para converter esses não pagadores indica as imagens de entrada em um sensor
de tocha.
Perfeito.
E agora a última coisa que precisamos fazer antes de sair deste loop para loop que é o
loop em nossos passos Bem, é claro que gaste a recompensa para a Watchlist.
Essa é a última coisa que precisa ser atualizada, atualizamos toda a lista, exceto a recompensa.
Então, vamos fazer isso agora, nós levamos nossas recompensas e usamos sua função cerebral para acrescentar
a última palavra que acabou de ser perfeita.
E logo antes de sair do loop for, precisamos fazer uma última verificação para verificar se, se for
feito, queremos interromper a expiração.
E então, vamos simplesmente adicionar aqui um intervalo.
O que significa que, se for feito, nós interrompemos a exploração e passamos diretamente para
o próximo passo, que será a atualização do modelo compartilhado e agora terminamos com isso por enquanto que o agente fez
sua exploração.
Atualizará o modelo compartilhado e cuidaremos disso no próximo tutorial e então eu.