Existem maneiras de medir automaticamente (sem testes em humanos) uma

7

Portanto, a maioria dos recursos que fornecem quebra-cabeças de Sudoku atribuem uma categoria de dificuldade a cada quebra-cabeça, mesmo alguns que já vi com 15 ou mais categorias de dificuldade. Mas qual é uma boa maneira de atribuir essas categorias de dificuldade? Se forem utilizados solucionadores de quebra-cabeças humanos suficientes, o tempo médio para um humano concluir um quebra-cabeça e a porcentagem de pessoas que resolveram o quebra-cabeça com êxito poderão ser computadas para a amostra humana e as categorias de dificuldade atribuídas de acordo. Mas parece que deve haver cenários previsíveis que continuam aparecendo à medida que vários quebra-cabeças estão sendo resolvidos e afetam a dificuldade humana média, que pode ser detectada automaticamente quando um computador resolve o quebra-cabeça e esses padrões podem ser reunidos em uma dificuldade média prevista para humanos. . Existem / quais são boas técnicas para fazer isso? Talvez o aprendizado de máquina com dados de treinamento suficientes sobre o desempenho humano em quebra-cabeças de amostra?

user2566092
fonte
Para uma abordagem não estatística, você precisa ter uma idéia do que é essa "dureza". a quais parâmetros do quebra-cabeça está vinculado (e como).
Raphael

Respostas:

8

Houve muitas tentativas desse tipo. A maioria deles tenta derivar regras de dedução que os humanos parecem usar para resolver quebra-cabeças de Sudoku.

Meu dinheiro está nessa abordagem:

Mária Ercsey-Ravasz e Zoltán Toroczkai (2012), O Caos no Sudoku , Relatórios Científicos 2:75, Natureza.

A idéia é baseada na noção de caos transitório em um sistema dinâmico.

Em sistemas dinâmicos, quando você altera o estado, geralmente há um período de tempo em que um sinal transitório domina, antes que o sistema consiga entrar em uma solução de estado estacionário. Se o sistema dinâmico não for linear, o transitório pode ser caótico.

Isso é diferente de um atrator caótico (por exemplo, o atrator de Lorentz), pois o estado estacionário para o qual o sistema é atraído não é caótico, apenas os transitórios.

O tempo que o sistema leva para os transientes desaparecerem é chamado de taxa de escape . O que os autores descobriram é que, se você transformar o quebra-cabeça em um problema SAT e depois em um sistema dinâmico equivalente (onde o atrator do sistema dinâmico é a solução para o problema SAT), a taxa de escape do sistema se correlacionará bastante bem com a forma como os enigmas do Sudoku são classificados quanto à dureza.

O interessante dessa abordagem é que ela é independente do Sudoku. Qualquer quebra-cabeça que possa ser transformado em um problema SAT diretamente (o problema SAT e o quebra-cabeça não podem divergir muito) pode ser analisado da mesma maneira.

Pseudônimo
fonte
Esta é uma abordagem muito interessante, obrigado pela referência. Não entendo por que deve funcionar tão bem e também não está claro para mim o quão difícil é calcular a taxa de escape (exceto talvez a estimativa por simulação), mas vou dar uma olhada na referência e talvez venha junto.
usar o seguinte comando
2

Se você deseja medir a dureza de um quebra-cabeça "para um ser humano", uma abordagem típica são as técnicas de inferência necessárias para concluir o quebra-cabeça. Por exemplo, você pode categorizar as estratégias de inferência como básicas, intermediárias e especializadas.

Todos esses métodos podem ser implementados em um computador. Se o computador puder resolver o quebra-cabeça apenas com métodos básicos, ele será fácil. Se técnicas intermediárias são necessárias, o quebra-cabeça é médio. Caso contrário, o computador precisa de estratégias especializadas, e o quebra-cabeça é difícil. Eu vi um programa que classifica quebra-cabeças com base nessa abordagem, mas parece que não consigo lembrar a referência exata.

Todos os quebra-cabeças que podem ser resolvidos com apenas inferência (sem adivinhações) serão fáceis para um computador. Se você estiver interessado em quebra-cabeças difíceis para um computador, uma regra básica é que eles precisam recorrer à adivinhação em algum momento. A geração de quebra-cabeças difíceis de Sudoku (para um computador) também foi investigada, e você pode encontrar facilmente documentos relevantes.

Juho
fonte
Parece uma boa abordagem se as 15 regras de inferência usadas pelos seres humanos puderem receber uma pontuação de dureza com base nos dados de treinamento de seres humanos que resolvem quebra-cabeças, e então a dificuldade do quebra-cabeça pode ser a soma ou o máximo da dureza da sequência das regras necessárias para resolver o quebra-cabeça. A parte mais difícil para mim parece ser como você deduz a pontuação de dureza para cada regra de inferência individual, dado o tempo de solução para quebra-cabeças inteiros quando os humanos os resolvem. Além disso, algumas regras devem ter dureza variável, como "cadeia de inferência alternada", onde fica mais difícil quanto mais longa a cadeia.
user2566092
"O Sudoku como um problema de restrição", de Helmut Simonis ( 4c.ucc.ie/~hsimonis/sudoku.pdf ) é um artigo que classifica os quebra-cabeças do Sudoku com base nas inferências necessárias para resolvê-los sem pesquisa.
Zayenz 27/08/14