J'ai examiné le script de Dania (de mon temps on disait programme ou algorithme
). Il semble efficace et permet d'obtenir toutes les solutions les plus courtes, effectivement. Je ne l'ai pas converti en programme pour ma HP50g pour deux raisons :
- la première est que je refuse d'utiliser ce genre d'outil, même s'il pourrait être parfois fort utile, parce qu'il dénature totalement l'esprit du jeu.
- la seconde est que son exécution sur ma calculette prendrait des heures ! La méthode utilisée est ce que les anglosaxons appellent la "brute force" : elle examine toutes les possibilités jusqu'à une limite donnée. Je pense qu'il y a moyen de faire mieux (j'ai quelques idées là-dessus
) c'est-à-dire plus efficace, ne serait-ce qu'en prenant cet almgorithme comme base. Il y a un certain de nombres de contraintes supplémentaires qui apparaissent selon la configuration de la rame de départ et qui permettent de limiter considérablement la recherche des solutions, mais même avec ses limitations supplémentaires cela reste conséquent.
Et comme le souligne fort justement Dania, avec chaque wagon supplémentaire ajouté à la rame, le nombre de configurations à examiner augmente (comme la factorielle, c'est-à-dire pire que l'exponentielle !) Si je veux continuer à vous proposer ce genre de problème, il ne me reste plus qu'une solution : ne pas descendre en dessous de 8 wagons par rame.
Pour moi, pas de souci : je peux en trouver à la pelle, mais pour trouver la ou les solutions optimales, cela risque d'être une autre paire de manches (même en me limitant à des rames "construites" de façon à ce que je connaisse moi-même une solution - mon rôle d'arbitre est à ce prix) ! Jai quelques idées là-dessus...
Pour l'instant je poursuis la rédaction de mon feuilleton sur la "desserte NRB"... Patience, patience, il arrive tout doucement
bw
PS. Comme annoncé par certains, le dernier problème posé peut effectivement se résoudre en 8 coups. J'ai une solution, j'ignore s'il en existe d'autres...