Contents — find the section you need

O Q-learning é um método de aprendizado por reforço off-policy que atualiza um valor para cada par estado-ação: “quanto essa escolha compensará a longo prazo?” Um pequeno labirinto pode ser resolvido com uma mesa, mas uma imagem de câmera e muitas articulações tornam essa mesa impossivelmente grande. Uma Rede Q Profunda (DQN) substitui a mesa por uma rede neural e usa replay de experiência e uma rede alvo para reduzir dados correlacionados e instabilidade autorreferencial.

Resumo de 30 segundos

  • Q(s,a) é o retorno futuro esperado após executar a ação a no estado s. Escolher o maior valor Q resulta em uma política gananciosa.

  • O Q-learning usa o valor Q máximo no próximo estado, mesmo quando a política de comportamento explorou outra ação. Essa é a propriedade off-policy.

  • A DQN mapeia uma observação de alta dimensão, como uma imagem, para valores Q para um conjunto finito de ações discretas. O torque contínuo requer discretização ou um método Ator-Crítico.

  • A repetição de experiência embaralha as transições antigas, enquanto uma rede alvo mantém o alvo de aprendizado quase fixo por várias atualizações.
  • Um robô deve impor limites de velocidade, força, corrente e parada de emergência fora do aprendizado. Uma recompensa alta não é evidência de segurança do hardware.

1. Coloque os valores Q em uma tabela

No MDP do guia básico de RL, escolher a ação a no estado s resulta na recompensa r e no próximo estado s'. O Q-learning não mantém um modelo explícito P do ambiente desconhecido; Atualiza o valor Q apenas com base na experiência (s,a,r,s'):

Q(s_t,a_t)\leftarrow Q(s_t,a_t)+\alpha\left[r_{t+1}+\gamma\max_{a'}Q(s_{t+1},a')-Q(s_t,a_t)\right]

O valor entre colchetes representa o erro de diferença temporal (TD). Um erro positivo aumenta o valor da ação; um erro negativo o diminui. \alpha é a taxa de aprendizado e \gamma o fator de desconto. Em um estado terminal, o valor do próximo estado é zero.

Diagram 1 · Use the button to switch views
Q-learning: atualizar a tabela a partir de uma transição

Figura 1 — O Q-learning move o valor anterior um pouco em direção a um alvo formado pela recompensa observada e o valor máximo do próximo estado.

Um labirinto 5×5 tem apenas 25 estados e quatro ações, portanto, 100 entradas na tabela são suficientes. Com a exploração ε-greedy, as experiências propagam gradualmente o valor do objetivo para trás através do labirinto. Definir a taxa de aprendizado para 1 e confiar totalmente em uma única experiência a torna vulnerável ao ruído ambiental, portanto, um valor entre 0 e 1 é normalmente usado para calcular a média entre as experiências.

2. Aprendizado off-policy e exploração ε-greedy

O alvo \max_{a'}Q(s',a') é o melhor A ação estimada não corresponde necessariamente à ação que a política de comportamento exploratório realmente executou. O Q-learning pode, portanto, aprender uma política gulosa enquanto o ε-greedy coleta dados. Comece com um ε grande para cobrir o espaço de estados e reduza-o lentamente. Em uma máquina física, randomize apenas dentro de comandos candidatos validados e mantenha o monitoramento de colisões com a prioridade mais alta.

3. Por que a tabela falha para imagens e valores contínuos

Se um estado for cada pixel de uma imagem de câmera e cada motor tiver 256 níveis de velocidade, a tabela não caberá na memória prática. Imagens quase idênticas também seriam tratadas como estados não relacionados. O DQN aproxima a tabela com uma rede neural Q_\theta(s,a).

A rede mapeia uma imagem para um valor Q por ação discreta. Para cima/baixo/esquerda/direita, a saída é (Q(s,\mathrm{up}),Q(s,\mathrm{down}),Q(s,\mathrm{left}),Q(s,\mathrm{right})). A perda é

L(\theta)=\mathbb{E}_{(s,a,r,s')\sim D}\left[\left(y-Q_\theta(s,a)\right)^2\right],\qquad y=r+\gamma\max_{a'}Q_{\theta^-}(s',a')

onde D é o buffer de replay e \theta^- pertence à rede alvo. Para uma transição terminal, y=r.

4. Replay de experiência: embaralhamento de logs correlacionados

Os logs do robô são sequenciais: os frames em t e t+1 são quase idênticos. Um mini-lote composto por frames adjacentes produz um gradiente enviesado. O DQN armazena (s_t,a_t,r_{t+1},s_{t+1},done) em um buffer de replay e amostra mini-lotes aleatórios.

Projeto do buffer Benefício Custo
Amostragem uniforme simples, enfraquece a correlação temporal falhas raras são amostradas com menos frequência
Replay priorizado foca em grandes erros de transição terminal necessita de correção de importância e controle de acesso
FIFO de tamanho fixo acompanha um ambiente em mudança falhas raras antigas desaparecem
Episódio Armazenamento Preserva o contexto de sucesso/falha Lotes podem se correlacionar novamente

Não sobrescreva o registro de auditoria com o pré-processamento de aprendizado. Armazene os registros de data e hora brutos dos sensores, as ações solicitadas e realmente limitadas e os indicadores de colisão separadamente dos tensores de treinamento normalizados.

5. Redes alvo: atrase o professor

Se a mesma rede que está sendo atualizada computa simultaneamente o alvo y e a previsão Q_\theta, o alvo se move a cada atualização. Uma atualização destinada a reduzir o erro também move o próximo alvo, levando à divergência ou oscilação. O DQN mantém uma cópia Q_{\theta^-} e a sincroniza como \theta^-\leftarrow\theta a cada algumas centenas ou milhares de atualizações.

Aumentar o intervalo de sincronização estabiliza o alvo, mas o torna obsoleto. A média de Polyak é uma alternativa mais suave:

\theta^-\leftarrow\tau\theta+(1-\tau)\theta^-

Registre a escolha, o intervalo de sincronização, a perda e a distribuição do valor Q. na configuração e nos registros do experimento.

6. Superestimação e DQN Duplo

Ao escolher o valor máximo em estimativas ruidosas, favorece-se uma ação que, por acaso, pareça ter um valor alto. O DQN Duplo separa a seleção da ação da sua avaliação:

a^*=\arg\max_{a'}Q_\theta(s',a'),\qquad y=r+\gamma Q_{\theta^-}(s',a^*)

Isso não elimina todo o viés, mas geralmente reduz o crescimento instável de Q. Um sinalizador terminal ausente, uma máscara de ação incorreta ou uma escala de recompensa inconsistente podem parecer semelhantes, portanto, inspecione os dados antes de alterar os algoritmos.

7. Onde o DQN se encaixa em um robô

O DQN pressupõe um conjunto finito de ações. Discretizar o ângulo de direção ou o torque das juntas pode funcionar para uma demonstração grosseira, mas grades finas crescem rapidamente e criam comandos instáveis. DDPG, TD3 e SAC geram ações contínuas diretamente e geralmente são mais adequados para controle de torque ou válvulas hidráulicas.

O DQN continua útil para escolhas de alto nível: faixa da esquerda ou da direita, candidato de preensão A/B/C ou modo de velocidade baixa/média/alta. Entregue a referência resultante a um PID ou MPC. camada. O artigo PID e o artigo MPC mostram como manter limites e mecanismos de monitoramento nessa camada inferior.

8. Desenhe curvas diferentes da recompensa

Registre a taxa de sucesso, a taxa de colisão, a duração do episódio, o Q médio e máximo, o erro TD e as frequências de ação juntamente com a recompensa média do episódio. Uma recompensa crescente com uma taxa de colisão crescente geralmente indica um bug de recompensa ou de término. Um valor Q explosivo com uma perda decrescente sugere uma incompatibilidade de escala, um sinalizador de término ausente ou um alvo de inicialização incorreto.

Mantenha os ambientes de avaliação separados do treinamento. Altere a iluminação, o atrito do piso, a carga útil, o layout dos obstáculos e o atraso de comunicação. Uma política que funciona em um simulador, mas ignora a exposição da câmera, as zonas mortas do motor ou a queda de tensão da bateria, não demonstrou desempenho DQN no hardware.

Lista de verificação de implementação

  1. Armazene o estado, a ação discreta, a recompensa, o sinalizador de término e o carimbo de data/hora como uma única transição.

  2. Corrija e registre ε , taxa de aprendizado, desconto, tamanho do buffer, tamanho do lote e intervalo alvo.

  3. Rastrear valores Q, erros TD, perdas, taxas de sucesso/colisão e frequências de ação por ID do experimento.
  4. Manter o pré-processamento de replay separado do log de auditoria bruto.
  5. Testar unitariamente máscaras de ação, estados terminais, timeouts e valores de sensor inválidos.

  6. Verificar se os limites, watchdogs e paradas de emergência permanecem acima do DQN e funcionam mesmo com uma queda de rede.

  7. Manter condições e falhas não vistas fora do treinamento.

Resumo

O Q-learning transforma a equação de otimalidade de Bellman em uma atualização de tabela sem exigir um modelo de dinâmica conhecido. O DQN aproxima essa tabela com uma rede, mas o replay de experiência e uma rede alvo são essenciais para evitar que o alvo autorreferencial amplifique o ruído. O DQN é uma camada de decisão discreta útil; torque contínuo e segurança pertencem a outros controladores. Rastrear erros TD, colisões, atrasos e distribuições Q — não apenas recompensa — transforma Um roteiro de pesquisa sobre um sistema robótico auditável.

Verifique seu entendimento
Um valor Q alto garante uma grande recompensa realizada?

Q é uma estimativa do retorno esperado. Estados ou ações desconhecidos podem produzir grandes erros de estimativa.

Referências

What to read next

Review the backgroundFundamentos de Aprendizado por Reforço — MDPs, Equações de Bellman e Exploração para RobôsContinue the seriesGradientes de Política, PPO e SAC — Controle Contínuo Estável para RobôsExplore another aspect of this fieldIntrodução à Aprendizagem por Reforço Multiagente — Otimizando em um Mundo Onde o Outro Lado Também Está Aprendendo