Existem várias maneiras de abordar a resolução de problemas de jogo. Alguns jogos podem ser resolvidos por algoritmos de busca, por exemplo. Isso funciona bem para jogos de cartas e tabuleiro até um certo nível de complexidade. Por exemplo, o Deep Blue da IBM era essencialmente uma pesquisa rápida, orientada por heurística, para movimentos ideais.
No entanto, provavelmente o algoritmo de aprendizado de máquina mais genérico para treinar um agente para executar uma tarefa de maneira ideal é o aprendizado por reforço . Tecnicamente, não é um algoritmo, mas uma família extensa de algoritmos relacionados que resolvem uma formalização específica do problema de aprendizagem.
Informalmente, o Aprendizado por Reforço (RL) consiste em encontrar soluções ótimas para problemas definidos em termos de um agente que pode observar o estado de um ambiente , executar ações nesse ambiente e experimentar recompensas que, de alguma forma, estão relacionadas ao estado e à ação. Os solucionadores de RL precisam ser projetados para lidar com situações em que as recompensas são recebidas mais tarde do que quando ações importantes foram tomadas, e isso geralmente é alcançado pelo algoritmo que aprende uma expectativa interna de recompensas posteriores associadas aos pares de estado e / ou estado-ação.
Aqui estão alguns recursos para estudar a Aprendizagem por Reforço:
Você verá que o assunto em si é bastante amplo, pois são necessárias variações cada vez mais sofisticadas dos algoritmos, à medida que o problema a ser resolvido se torna mais difícil.
O início de jogos para estudar o aprendizado por reforço pode incluir:
Tik-tac-toe (também conhecido como nada e cruzamentos) - isso pode ser resolvido facilmente usando a pesquisa, mas cria um problema simples de brinquedo a ser resolvido usando técnicas básicas de RL.
Labirintos - na literatura de aprendizado por reforço, há muitos exemplos de jogos do "mundo da grade", nos quais um agente se move em etapas N, E, S, W em um pequeno quadro que pode ser preenchido com perigos e objetivos.
Blackjack (tcp 21)
Se você deseja trabalhar com agentes para jogar videogame, também vai querer aprender sobre redes neurais e provavelmente com alguns detalhes - você precisará de redes neurais profundas e convolucionais para processar os gráficos da tela.
Um recurso relativamente novo para RL é o OpenAI Universe . Eles fizeram muito trabalho para empacotar ambientes prontos para treinar agentes, o que significa que você pode se concentrar no estudo dos algoritmos de aprendizado, em oposição ao esforço de configurar o ambiente.
Em relação à sua lista de habilidades atuais: Nenhuma delas é diretamente relevante para o aprendizado por reforço. Contudo:
Se você conseguir entender a matemática e a teoria do curso anterior, também deverá entender a teoria do aprendizado por reforço.
Se você estudou alguma técnica de aprendizado supervisionado on-line ou em lote, elas podem ser usadas como componentes dentro de uma estrutura de RL. Normalmente, eles podem ser usados para aproximar uma função de valor do estado do jogo, com base no feedback de sucessos e falhas até agora.