Hallo,
ich habe mich seinerzeit ein bisschen mit dem Thema "Verschiebespiel" beschäftigt und als Kind habe ich sehr oft mit sowas gespielt. Zu Deiner Frage, es geht immer dann auf, wenn das Ausgangsbild durch Schiebereien zerlegt wurde. Ich glaube, dass es nicht immer aufgeht, wenn man das Bild durch x-beliebiges Mischen der Teile erzeugt. Jdf. hatte ich bei einem ähnlichen Programm, welches ich vor Jahren mit JavaScript geschrieben hatte, genau das Problem, dass ich die Verschieberätsel nicht auflösen konnte (obwohl ich da eigentlich ganz gut drin bin), als ich die Teile einfach mittels Random an eine belibige Position gesetzt hatte. Oder ich war einfach zu doof.
Man sollte also das Bild zerteilen und dann in einer Schleife x Verschiebungen in beliebige Richtungen machen, um es zu mischen - ist sicherer. Ich lasse mich aber gerne auch eines Besseren belehren.
Grüße!