il faudrait regrouper les lettres par groupe d'occurence, et à chaque tirage, diminuer (ou augmenter, en fonction de leur position si on fait attention aux digrammes) leur probabilité d'être tirée [...]
Dans le cas du K (ha ! ha ! ), il faudrait au minimum diviser la probabilité qu'il soit tiré à nouveau par 2, voir par 2/3. Par contre pour un E, on peut envisager de ne pas diminuer la probabilité qu'il sorte à nouveau.
Et en même temps qu'un K sort, on peut imaginer diminuer la probabilité de tirage d'un Z, d'un W ou d'un Y
Je comprends le principe de ta solution, il semble correspondre à ce qu'on aimerait obtenir comme grille idéale de jeu.
Cependant il demande la gestion de cas particuliers, ce qui requiert un travail manuel sur chaque langue et une configuration plus complexe.
Je pense qui si on considère uniquement les probabilités de cooccurences de lettres (nos fameux bigrammes) on peut obtenir les effets que tu décris, et ça aurait l'avantage de rester facilement (automatiquement) généralisable à de nombreuses langues.
Je m'explique un peu plus en détail sur la génération de la grille, une méthode pour placer une lettre.
* Le jeu choisit une des 16 cases restantes, si possible adjacente à au moins une lettre déjà placée.
* Il considère alors les lettres déjà placées dans la 3 à 8 cases adjacentes. Le choix de la lettre à placer va dépendre de ces autres lettres. Le jeu calcule la probabilité pour chaque lettre de l'alphabet d'être placée à cet endroit *sachant* la présence des lettres adjacentes. On obtient 26 probabilités qui vont déterminer la pioche.
* Le jeu pioche alors une lettre selon ces probas et la place à cet endroit.
Je pense que cet façon de procéder devrait éviter ou fortement réduire les cas problématiques que tu mentionnes.
Les lettres difficiles (comme les autres...) seront piochées si au moins une des lettres adjacentes est fréquemment co-occurente à cette lettre dans la langue.
Par ailleurs, je viens de chercher un peu sur le net pour savoir si les gens se posent les mêmes questions que nous.
Eh bien oui, il y a des gens qui utilisent des algorithme génétiques pour trouver une bonne grille !
Le concept est marrant :
* on crée plusieurs grilles aléatoires (une population)
* on forme des couples parmi les individus
* on les fait se reproduire en choisissant le meilleur de chaque parent pour produire l'enfant. Pour cela il faut définir une fonction d'estimation qui va dire quelles sont les meilleures grilles ou parties de grilles.
* enfin on peut prendre le meilleur enfant, selon notre fonction d'estimation, ou faire se reproduire les enfants, jusqu'à un ultime descendant, regroupant toutes les bonnes caractéristiques de ses ancêtres, et ayant éliminé toutes les mauvaises, donc avec une bonne grille bien jouable.
[^] # Re: Affaire de Q
Posté par Mehdi Yousfi-Monod . En réponse au journal GBoggle, jeu de lettres. Évalué à 1.
Dans le cas du K (ha ! ha ! ), il faudrait au minimum diviser la probabilité qu'il soit tiré à nouveau par 2, voir par 2/3. Par contre pour un E, on peut envisager de ne pas diminuer la probabilité qu'il sorte à nouveau.
Et en même temps qu'un K sort, on peut imaginer diminuer la probabilité de tirage d'un Z, d'un W ou d'un Y
Je comprends le principe de ta solution, il semble correspondre à ce qu'on aimerait obtenir comme grille idéale de jeu.
Cependant il demande la gestion de cas particuliers, ce qui requiert un travail manuel sur chaque langue et une configuration plus complexe.
Je pense qui si on considère uniquement les probabilités de cooccurences de lettres (nos fameux bigrammes) on peut obtenir les effets que tu décris, et ça aurait l'avantage de rester facilement (automatiquement) généralisable à de nombreuses langues.
Je m'explique un peu plus en détail sur la génération de la grille, une méthode pour placer une lettre.
* Le jeu choisit une des 16 cases restantes, si possible adjacente à au moins une lettre déjà placée.
* Il considère alors les lettres déjà placées dans la 3 à 8 cases adjacentes. Le choix de la lettre à placer va dépendre de ces autres lettres. Le jeu calcule la probabilité pour chaque lettre de l'alphabet d'être placée à cet endroit *sachant* la présence des lettres adjacentes. On obtient 26 probabilités qui vont déterminer la pioche.
* Le jeu pioche alors une lettre selon ces probas et la place à cet endroit.
Je pense que cet façon de procéder devrait éviter ou fortement réduire les cas problématiques que tu mentionnes.
Les lettres difficiles (comme les autres...) seront piochées si au moins une des lettres adjacentes est fréquemment co-occurente à cette lettre dans la langue.
Par ailleurs, je viens de chercher un peu sur le net pour savoir si les gens se posent les mêmes questions que nous.
Eh bien oui, il y a des gens qui utilisent des algorithme génétiques pour trouver une bonne grille !
Le concept est marrant :
* on crée plusieurs grilles aléatoires (une population)
* on forme des couples parmi les individus
* on les fait se reproduire en choisissant le meilleur de chaque parent pour produire l'enfant. Pour cela il faut définir une fonction d'estimation qui va dire quelles sont les meilleures grilles ou parties de grilles.
* enfin on peut prendre le meilleur enfant, selon notre fonction d'estimation, ou faire se reproduire les enfants, jusqu'à un ultime descendant, regroupant toutes les bonnes caractéristiques de ses ancêtres, et ayant éliminé toutes les mauvaises, donc avec une bonne grille bien jouable.
[http://ankurdave.spaces.live.com/Blog/cns!7526DB52855BB4E1!2(...)]