J'avoue que je me suis un peu défoulé, là, mais ça fait du bien !
Ceci dit, et pour répondre un peu plus directement à dania, en utilisant cette méthode d'analyse comparative pour en dégager des règles générales, j'ai réussi à établir un certain nombre de ces règles permettant souvent de simplifier la résolution de l'un ou l'autre problème ardu (pas tous, malheureusement).
Par exemple, le nombre minimum absolu de manoeuvres nécessaires pour résoudre un problème donné est obtenu par la formule : min = 2n+1, où "n" est le nombre d'inversions présentes dans la rame. Une "inversion", ici, est toute paire de wagons où le second devra être placé devant son prédécesseur.
Un peu confus ? (J'avais expliqué cette règle il y fort longtemps, tout au début de ce fil) Prenons donc un exemple précis, tel le dernier problème qui vous a été soumis fin 2011 : trier la rame EBADFC. Elle comporte les "inversions" suivantes : "EB", "BA" et "FC", soit n=3. On sait donc dès le départ qu'on ne pourra pas descendre en dessous de 2*3+1 = 7 manoeuvres pour effectuer le tri. Et dans ce cas c'est effectivement le nombre de manoeuvres obtenu pour la meilleure solution.
Mais ce n'est pas toujours le cas, et bien trop souvent on n'arrivera pas à descendre aussi bas en nombre de manoeuvres pour notre solution. D'autres règles peuvent alors mieux cerner le problème. Par exemple la règle dite Qs pour les rames où le dernier wagon est déjà à sa place. Une autre règle établie et validée après une analyse "sur le terrain". En reprenant notre exemple ci-dessus, si on augmente la rame EBADFC du wagon G en queue, pour obtenir la rame EBADFCG, que va devenir notre solution ? On a toujours 3 inversions et le minimum absolu est donc toujours de 7 manoeuvres. Mais peut-on atteindre ce minimum ? La réponse est : non car la règle Qs nous dit (entre autre) que pour EBADFCG le tri s'effectuera en un nombre PAIR de manoeuvres. Et 7 étant impair, le nombre pair le plus petit possible est 8. Donc 8 coups seront nécessaires, au moins. Fort heureusement la règle Qs nous précise que, sachant que EBADFC se trie en 7 manoeuvres, il ne faut qu'une manoeuvre supplémentaire pour trier EBADFCG. Et donc 8 est parfaitement réalisable.
Petit détail qui a son importance : ce genre de règles telles que Qs ne s'appliquent qu'aux rames où tous les wagons ont des destinations différentes, c'est-à-dire sans doublon (je précise cela parce que mon problème pour tout à l'heure comporte justement un "doublon", c'est-à-dire deux ouagons ayant la même destination

) Mais là encore il y a des règles pour se ramener aux cas connus, à ceux des rames sans doublons, ni triplons ni multiplons !
Voilà à quoi servent ces petites règles. A mieux cerner les limites de bien des problèmes rencontrés. Quant à trouver une méthode infaillible et simple pour résoudre ce genre de problème de tri, je ne crois pas que ce soit possible. Il ne devrait pas être bien difficile d'écrire un programme pour calculette scientifique (genre HP49 ou TI ou Casio) capable de résoudre ce genre de problèmes automatiquement. Mais le meilleur algorithme, en l'état actuel des connaissances (les miennes

) serait d'utiliser la "force brute" en testant les différentes configurations successives possibles. Ce n'est pas aussi rocambolesque qu'on pourrait le croire a priori : il n'y a pas tant de configurations que ça d'une part, et il n'est pas difficile d'améliorer cet algorithme pour ne pas tenir compte ou pour éliminer certaines branches dans l'arborescence des possibilités. J'avais envisagé d'écrire un tel programme et j'avais pas mal avancé dans l'élaboration d'un tel algorithme : donc je sais que c'est réalisable. Ce que je ne sais pas, c'est le temps qu'il faudrait à ce programme pour trouver la ou les solutions optimales. Peut-être quelques heures (une calculette n'est pas un PC avec microprocesseur 32 ou 64 bits !) Jai encore la prétension de croire que l'intelligence humaine est supérieure à celle d'une calculette et je me suis dit : l'humain (que je suis encore) ira plus vite que la machine, donnons-lui donc sa chance. Et je n'ai jamais écrit ce progamme (à vrai dire c'est plutôt parce que je suis trop feignasse, mais faut pas le répéter).
Bon, je vois que j'ai encore débordé sur mon temps de parole : je vous retrouve tout à l'heure pour vous proposer un nouveau défi (après l'avoir vaguement évoqué ci-dessus !)
bw