18.3 C
Nova Iorque
sexta-feira, abril 4, 2025

Desenvolvendo uma IA para xadrez quântico: Parte 1


Em janeiro de 2016, o Instituto de Informações Quânticas e a Matéria da Caltech revelou Vídeo do YouTube Apresentando um extraordinário confronto de xadrez entre o ator Paul Rudd (também conhecido como Homem-Formiga) e o lendário Dr. Stephen Hawking. Mas isso não foi uma partida comum – rudd desafiou Hawking a um jogo de xadrez quântico. No momento, Empresa rápida comente: “Aqui estamos, a menos de 10 dias de distância do maior anúncio Dia do futebol do ano, e um dos melhores anúncios da semana é um vídeo de 12 minutos de xadrez quântico da Caltech. ” Mas a AD do Tremendous Bowl Para o que exatamente?

Nos últimos nove anos, Jogos de reino quânticocom o apoio generoso contínuo da IQIM e de outras parcerias estratégicas, tem refinado incansavelmente o protótipo de xadrez quântico rudimentar exibido naquele vídeo agora viral, transformando-o em um jogo totalmente realizado-um você pode jogar em casa ou mesmo em um computador quântico. E agora, finalmente, alcançamos um marco importante: o lançamento de Xadrez quântico 1.0. Você pode estar se perguntando – o que nos levou tanto?

A resposta é simples: desenvolver uma IA capaz de jogar xadrez quântico.

Antes de mergulharmos na história de origem da primeira IA projetada para dominar um jogo verdadeiramente quântico, é importante entender o que permite a IA de xadrez moderna em primeiro lugar.

O xadrez Ai é um campo vasto e complexo, profundo demais para explorar na íntegra aqui. Para aqueles que estão ansiosos para se aprofundar nos detalhes, o Wiki de programação de xadrez Serve como um excelente recurso. Em vez disso, este publish se concentrará no que diferencia o Chess Quantum AI de sua contraparte clássica – e os desafios únicos que encontramos ao longo do caminho.

Então, vamos começar!

Questões de profundidade

Crédito: https://www.freecodecamp.org/information/simple-chess-ai-step-sta-step-1d55a9266977/

Com o xadrez ai, o nome do jogo é “profundidade”, pelo menos para versões baseadas no Estratégia Minimax Concebido por John von Neumann em 1928 (vamos dizer um pouco sobre a IA baseada na rede neural mais tarde). A idéia básica é que a IA simule os possíveis movimentos que cada jogador pode fazer, até alguma profundidade (número de movimentos) para o futuro e depois decidir qual é o melhor baseado em um conjunto de critérios de avaliação (minimizando a perda máxima incorrida pelo oponente). Quanto mais rápido ele pode pesquisar, mais profunda pode ir. E quanto mais profunda ele puder, melhor será a avaliação de cada próximo movimento em potencial.

A pesquisa no futuro pode ser modelada como uma árvore ramificada, onde cada ramo representa um possível movimento de uma determinada posição (configuração da placa). O fator de ramificação média para o xadrez é de cerca de 35. Isso significa que, para uma determinada configuração da placa, existem cerca de 35 movimentos diferentes para escolher. Portanto, se a IA parecer 2 dobras (avançar), ela vê 35 × 35 se transfer em média, e isso explode rapidamente. Por 4, a IA já tem 1,5 milhão de movimentos para avaliar.

Os motores de xadrez modernos, como peixes -estoque e leela, ganham sua força olhando para o futuro. A profundidade 10 é considerada baixa nesses casos; você realmente precisa de 20+ Se você deseja que o motor retorne uma avaliação precisa de cada movimento em consideração. Para lidar com muitas avaliações, esses motores usam heurísticas fortes para podar ramos (a largura da árvore), para que não precisem calcular as folhas exponencialmente muitas da árvore. Por exemplo, se um dos galhos envolve perder sua rainha, o algoritmo poderá decidir podar esse ramo e todos os movimentos que surgem depois. Mas, como os jogadores experientes já podem ver, já que um sacrifício de rainha às vezes pode levar a ganhos maciços no caminho, uma heurística tão “ingênua” pode precisar ser refinada ainda mais antes de ser implementada. Mesmo assim, a tensão entre a primeira pesquisa de profundidade versus a primeira primeira vez está sempre presente.

Então eu ouvi você como galhos …

https://www.sciencenews.org/article/leonardo-da-vinci–rete-ree-ranch-wrong-limb-area-thickness

A adição de Dividir e mesclar movimentos No xadrez quântico explode absolutamente o fator de ramificação. As primeiras simulações mostraram que pode estar na faixa de 100-120, mas é necessário mais trabalho para obter uma contagem precisa. Pelo que sabemos, a ramificação pode ser muito maior. Podemos ter uma sensação olhando para uma única peça, a rainha.

Em um quadro de xadrez vazio, uma única rainha no D4 tem 27 movimentos possíveis (deixamos para o leitor encontrar todos eles). No xadrez quântico, adicionamos o movimento dividido: todas as peças, além de peões, podem se mover para quaisquer dois quadrados vazios que ele possa alcançar legalmente. Isso adiciona todas as combinações emparelhadas possíveis de movimentos padrão à lista.

Mas espere, há mais!

O pedido é importante no xadrez quântico. A rainha pode se dividir em D3 e C4, mas também pode se dividir em C4 e D3. Esses movimentos sutilmente diferentes podem produzir diferentes estruturas de fase subjacentes (dada a sua implementação através de um portão ISWAP de raiz quadrada entre o quadrado de origem e o primeiro alvo, seguido de um portão ISWAP entre a fonte e o segundo alvo), potencialmente alterando a maneira como a interferência funciona, digamos, um movimento de mesclagem futuro. Então você obtém 27*26 = 702 movimentos possíveis! E isso não inclui possíveis movimentos de mesclagem, o que pode adicionar outras ramos de 15 a 20 a cada nó da nossa árvore.

Faça as contas e vemos que existem aproximadamente 30 vezes mais movimentos no xadrez quântico para essa rainha. Mesmo se assumirmos que o fator de ramificação é de apenas 100, no Ply 4, temos 100 milhões de movimentos para pesquisar. Obviamente, precisamos de heurísticas fortes para fazer uma poda muito agressiva.

Mas onde obtemos heurísticas fortes para um novo jogo? Não temos séculos de jogo para estudar e determinar quais sequências de movimentos são boas e quais não são. Isso nos leva à nossa primeira tentativa de um xadrez quântico ai. Digite Stoqfish.

Stoqfish

O xadrez quântico é baseado no xadrez (na verdade, você pode jogar xadrez common durante todo o tempo se você e seu oponente decidirem fazer movimentos quânticos), o que significa que a habilidade de xadrez é importante. Poderíamos fazer um forte motor de xadrez funcionar como um xadrez quântico ai? Stockfish é de código aberto e incrivelmente forte, então começamos por lá.

Dada a natureza dos estados quânticos, a primeira coisa em que você pensa quando tenta adaptar uma estratégia clássica em um quântico é dividir a superposição quântica subjacente ao estado do jogo em uma série de estados clássicos e depois provar -los de acordo com sua amplitude (quadrada) na superposição. E foi exatamente isso que fizemos. Utilizamos o motor de xadrez quântico para gerar vários quadros de xadrez, amostrando o estado atual do jogo, que pode ser considerado uma superposição quântica das configurações clássicas de xadrez, de acordo com a distribuição de probabilidade subjacente. Em seguida, passamos por essas pranchas para peixes -estoques. Em teoria, os estoques retornariam sua própria distribuição ponderada dos melhores movimentos clássicos. Tivemos algumas idéias sobre como derivar movimentos divididos dessa distribuição, mas não vamos nos seguir.

Essa abordagem teve sucesso limitado e falhas significativas. O Stockfish é altamente otimizado para o xadrez clássico, o que significa que existem algumas posições que não podem processar. Por exemplo, considere o cenário em que um rei está em superposição de ser capturado e não capturado; Após a captura de um desses reis, as amostras colhidas após esse movimento produzirão quadros sem um rei! Da mesma forma, e se um rei em superposição estiver sob controle, mas você não está preocupado porque a outra metade do rei está bem protegida, para que você não se mova para protegê -lo? O conceito de verificar é um problema por toda parte, porque o xadrez quântico não o reconhece. Coisas como mover “através da verificação” são completamente boas.

Você pode imaginar então por que sempre que o Stockfish encontra uma prancha sem um rei, ela cai. No xadrez clássico, sempre há um rei no quadro. No xadrez quântico, o rei está em algum lugar do multiverso de xadrez, mas não necessariamente em todos os quadros retornados pelo procedimento de amostragem.

Você pode se perguntar se não poderíamos simplesmente jogar as pranchas que não eram válidas. Essa é uma estratégia, mas estamos amostrando probabilidades; portanto, se jogarmos fora alguns dos dados, introduzimos viés no cálculo, o que leva a maus resultados em geral.

Tentamos apresentar um rei nos quadros onde ele estava desaparecido, mas isso se tornou seu próprio problema computacional: como você reintroduz o rei de uma maneira que não muda a avaliação da posição?

Até tentamos invadir os estoques para abandonar sua obsessão pelo rei, mas isso causou uma cascata de outras falhas, e o rastreamento da base de código de peixes -estoque se tornou um problema que não period provável que produza um bom resultado.

Essa abordagem não estava funcionando, mas ainda não terminamos com o Stockfish. Em vez de pedir ao Stockfish o próximo melhor movimento, dada a posição, tentamos pedir ao Stockfish para avaliar uma posição. A idéia period que pudéssemos usar as avaliações do Conselho em nosso próprio algoritmo mínimo. No entanto, enfrentamos problemas semelhantes, incluindo o problema de posição ilegal.

Por isso, decidimos tentar escrever nossa própria pesquisa de minimax, com nossas próprias heurísticas de avaliação. O básico é simples o suficiente. O valor de uma placa está relacionado ao valor das peças na placa e sua localização. E poderíamos pedir emprestado das heurísticas de Stockfish, como vimos em forma.

Isso nos deu HAL 9000. Tínhamos certeza de que finalmente dominamos a IA quântica. Certo? Descubra o que aconteceu, no próximo publish.



Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles