Há uma construção muito agradável por Conway de números surreais. São "números" que contêm números reais e ordinais, são totalmente ordenados e têm todas as propriedades de um campo (exceto que eles não formam um conjunto, mas uma classe).
Veja, por exemplo, este pdf ou Wikipedia para uma introdução.
Eles podem ser ainda mais generalizados para os chamados "jogos", que foram originalmente introduzidos para estudar jogos combinatórios. A motivação original de Conway era analisar o jogo de Go , em particular o final de jogo é especialmente adequado para ser modelado com "jogos surreais".
Minha pergunta é: você sabe se alguém implementou essa abordagem em uma IA (ou seja, jogador de computador) para melhorar seu nível em um jogo? Estou especialmente interessado no caso do Go, mas também em outros. Caso contrário, existe um obstáculo ou uma razão pela qual não seria uma boa ideia?
Respostas:
Não tenho uma resposta para sua pergunta sobre se a teoria dos jogos de Conway foi usada na criação de programas de jogos, mas ainda assim você pode estar interessado no Combinatorial Game Suite ", um programa de código aberto para ajudar na pesquisa em combinações teoria dos jogos "(que eu aprendi aqui pela primeira vez ). Inclui uma implementação de várias operações padrão nos jogos Conway de forma canônica, além de uma linguagem de script para descrever novos jogos.
fonte
em algumas pesquisas, parece não haver muitas implementações gerais publicadas de números surreais. aqui está uma implementação de números surreais no coq .
Números surreais em coq / Mamane, TYPES'04 Anais da conferência internacional de 2004 sobre tipos de provas e programas
existem algumas implementações parciais da aritmética surreal para um jogo chamado hackenbush (Davis) popularizado por Conway, Berlekamp e Guy, das quais existem algumas referências.
O Go é de fato uma das áreas de ponta da pesquisa em IA de jogos (considerada significativamente mais difícil que o xadrez que ocupou a IA por décadas), mas parece que há pouca pesquisa especificamente sobre o uso de números surreais para modelá-lo / jogá-lo. O Go é considerado uma fronteira para os algoritmos de aprendizado de máquina / IA porque também possui um status / distinção relativamente exclusivo, pois os melhores algoritmos baseados em software ("ainda / atualmente") não superam os jogadores humanos campeões.
veja este artigo The Mystery of Go, o jogo antigo que os computadores ainda não podem vencer (Wired mag) para uma pesquisa aproximada decente das técnicas / pesquisadores / leads atuais da Go AI.
fonte
Aqui está uma implementação do Surreal Numbers em um idioma relativamente novo, Julia. https://github.com/mroughan/SurrealNumbers.jl
Descrito em https://www.sciencedirect.com/science/article/pii/S2352711018302152
fonte