"J'avoue que le problème me semble très loin d'être trivial"
Si le probleme etait trivial, je ne l'aurais pas poste ici
Je ne veux pas une permutation unique, hard coder une permutation n'est probablement pas une bonne idee, le but etant d'empecher des cas pathologique.
A P fixe, P(i)<P(j) c'est 0 ou 1. Mais la "variable aleatoire" dans l'histoire est P. Du coup P(i)<P(j) est un "evenement". je voudrais que pour tout i et pour tout j, cette probabilite ne soit pas trop proche de 1 ou de 0.
Dans les coulisses, chris m'a suggere: P(i) = a*i+b[mod N] avec gcd(a,N)=1. Il parait que ca genere des permutations ce truc la. Mais je n'ai pas encore essaye.
Si vous voulez plus de background sur ce que je fais. Voici une description plus precise de mon probleme.
Soit G=(V,E) un graphe. Soit P une permutation du graph. Soit G'=(V,A), un graph oriente tel que (u,v) \in A si et seulement si (u,v) \in E et P(u)<P(v). Soit L la longeur du plus long chemin (oriente) de G'. Probleme: trouver P qui minimise L.
Si trouver la permutation coute plus que O(1), alors j'ai une methode plus rapide pour resoudre le probleme qui necessite de trouver une permutation.