Frage von klauszi, 87

kürzester Weg eines Springer zu einem bestimmten Feld?

Ich stell mir manchmal beim Schach die Frage, welchen Weg mein Springer einschlagen sollte, um ein bestimmtes Feld zu erreichen. Je leerer das Spielfeld und weiter weg das bestimmte Feld ist, desto komplizierter ist es für mich den kürzesten Weg ausfindig zu machen. Meistens gehe ich da approximativ vor und schlage immer den Weg ein, der die Distanz am meisten verkürzt. Für mich ist dies aber nicht genug!

Kennt ihr bestimmte Regeln die mir die Rechnerrei vereinfachen? Sowas wie: Damit ein Springer auf ein nebenanliegendes Feld kommt, benötigt es mindestens 2 Züge, bei den senkrecht und waagerechtliegende Felder sogar mindestens 3.

Bsp: Auf dem Schachbrett ist der Springer auf den Feld e7 und möchte auf e8. mögliche Lösung: e7-d5-c7-e8. -> man hat 3 Züge benötigt und ist somit eine optimale Lösung nach der Regel.

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von ralphdieter, 43

Kennt ihr bestimmte Regeln die mir die Rechnerrei vereinfachen?

Alles ausprobieren; aber eine Maschine kann das schneller. Hier siehst Du, wie viele Züge Du vom Feld a8 auf die anderen Felder brauchst:

 0  3  2  3  2  3  4  5
3 4/2 1 2 3 4 3 4
2 1 4 3 2 3 4 5
3 2 3 2 3 4 3 4
2 3 2 3 4 3 4 5
3 4 3 4 3 4 5 4
4 3 4 3 4 5 4 5
5 4 5 4 5 4 5 6

Wenn man auch über Felder außerhalb des Brettes ziehen darf, verkürzt sich nur der Weg a8-b7 von 4 auf 2 Züge. Alle anderen Wege bleiben gleich.

Daher kannst Du diese Matrix für beliebige Startfelder verwenden: Lege die 0 auf Start und spiegle die Zahlen an der ersten Zeile und Spalte. Der Sonderfall "4 Züge" taucht nur bei a8⇔b7 (und in den anderen Ecken) auf. Sonst geht ein Diagonalzug immer mit 2 Zügen.

Kommentar von ralphdieter ,

Danke fürs Sternle!

Kommentar von wolfgang1956 ,

Wer und wozu braucht man diese völlig unnütze Matrize in der Praxis? Das ist nur Ballast für wichtigere Informationen, die man in seinem Hirn speichern könnte.

Wenn man auch über Felder außerhalb des Brettes ziehen darf, verkürzt sich nur der Weg a8-b7 von 4 auf 2 Züge.

Das Brett hat aber nun einmal 8 Reihen mal 8 Spalten. Daher ist diese Anmerkung unsinnig.

Kommentar von ralphdieter ,

Wer und wozu braucht man diese völlig unnütze Matrize in der Praxis?

Um Fragen zu beantworten, die einem im Kopf herumgeistern. Der Fragesteller weiß nun, dass seine 6 Züge von a8 nach h1 optimal sind, und kann sich wieder anderen Dingen zuwenden. Seine Frau/Freundin freut sich bestimmt darüber ;-)

Das Brett hat aber nun einmal 8 Reihen mal 8 Spalten

Wenn das Startfeld nicht in der Ecke liegt, werden plötzlich Züge interessant, die nicht in der Matrix liegen. Die wichtigste Erkenntnis ist hier, dass die Begrenzung des Spielfelds — bis auf eine Ausnahme — keinerlei Einfluss auf das Ergebnis hat.

Kommentar von wolfgang1956 ,

Der Fragesteller weiß nun, dass seine 6 Züge von a8 nach h1 optimal sind, …

Weiss er das wirklich? Oder hat er schon abgeschaltet?

Die wichtigste Erkenntnis ist hier, dass die Begrenzung des Spielfelds — bis auf eine Ausnahme — keinerlei Einfluss auf das Ergebnis hat.

Entweder das Schachbrett hat 8 x 8 Reihen und Spalten oder du redest von einem Go-Brett oder sonst was. Wir sind hier nicht bei Schrödingers Katze, die mal tot ist oder auch nicht!

Antwort
von WeicheBirne, 42

Für mich sieht das nach einem graphtheoretischen Problem aus. Ich bin mir nicht sicher ob es eine analytische Lösung gibt, aber wenn Du programmieren kannst, kannst Du die Lösung ziemlich einfach rechnerisch finden. Das geht folgendermaßen:

Zunächst einmal erstellst Du eine quadratische Matrix wobei die Anzahl der Zeilen und Spalten gleich der Anzahl an Feldern auf dem Schachbrett ist (also 64 Zeilen und 64 Spalten). Jeder Zeile und jeder Spalte ordnest Du ein Feld zu. Also 

1. Zeile = A1, 2. Zeile = A2, ..., 8. Zeile = A8, 9. Zeile = B1, ..., 64. Zeile = H8

Mit den Spalten machst Du es genau so.

Dann prüfst Du für jedes Feld welche anderen Felder der Springer in einem Zug erreichen kann. Wenn der Springer aus dem betrachteten Feld Y ein anderes Feld X erreichen kann, dann schreibst Du in das entsprechende Element X/Y der Matrix eine 1. Wenn der Springer das Feld X nicht in einem Zug aus Feld Y erreichen kann schreibst Du in das Element X/Y eine 0.

Beispiel: Der Springer sei in Feld A1 (das ist laut Matrix Feld Nr. 1). Er kann von dort nach B3 springen (das ist laut Matrix Feld Nr. 11). Du schreibst also eine 1 in das Element der 1. Spalte und der 11. Zeile. Der Springer kann von Feld A1 Feld C1 (das 17. Feld laut Matrix) nicht erreichen. Du schreibst also in das Element der 1. Spalte und 17. Zeile eine 0.


Wenn Du diese Matrix mit sich selbst multipizierst, kannst Du sehen welche Felder der Springer in zwei Zügen von einem bestimmten Ausgangsfeld erreichen kann. Für das Ausgangsfeld Y steht diese Information in der Spalte Y. Alle Einträge, die nicht 0 sind zeigen erreichbare Felder an. 

Zum Beispiel kann der Springer in zwei Zügen von A1 ( 1. Spalte) nach C5 (21. Zeile) gelangen. Also wird in dem Matrixprodukt das Element der 1. Spalte und 21. Zeile nicht Null sein.


Wenn Du die Matrix hoch N nimmst kannst Du auf genau die gleiche Weise ablesen welche Felder der Springer in N Zügen erreichen kann.


Um herauszufinden wie viele Züge der Springer mindestens von einem Feld zu einem anderen braucht mußt Du einfach die Matrix immer weiter mit sich selbst multiplizieren bis das entsprechende Element nicht Null ist. Die Anzahl der Multiplikationen + 1 ist dann die Anzahl der Züge.


Wenn ein Feld auf dem Schachbrett blockiert ist kannst Du die entsprechende Spalte und Zeile vollkommen mit Nullen füllen. Die Rechnung funktoniert dann trotzdem ganz genau so wie oben.

Antwort
von Cynnamon, 10

Also ich hätte nen eher einfachen Tipp wenn man von einem Feld zum anderen möchte kann man sich einfach merken gleiche farbe=gerade Anzahl an Zügen
Ungleiche farbe=ungerade Anzahl an Zügen
Außerdem kann man sich merken das wenn das Feld wo man hinmöchte horizontal oder vertikal daneben liegt braucht man immer 3 Schritte und wenn es auf der diagonale das nächste ist braucht man 2 Schritte wenn es das übernächste ist braucht man 4 Schritte

So kann man meistens schätzen wie viele Felder es sind außerdem bekommt man mit der Zeit eh ein Gefühl für "den kürzesten Weg"

Antwort
von SamOthy, 52

Die geometrische Ursprungsüberlegung verbunden mit dem taktischen Verständnis ermöglicht die Überlegung einer "Zeitunterteilung" des Metaspiels, in welchem der Springer im "Endgame" für eine ungünstige Position bestraft werden muss, da er das frühe Spiel dominiert.

Trotzdem eine interessante Überlegung.

Grüße :)
Sam

Antwort
von wolfgang1956, 19

Wer keine Probleme hat, macht sich welche … :-)

Wenn man dieses Problem rein auf den Springer bezieht, kann es schon kompliziert werden. In der praktischen Partie sieht das völlig anders aus. Dort kommt es eher darauf an, sowohl strategische als auch taktische Überlegungen der gegebenen Stellung in die Praxis umzusetzen.

Als Praktiker weiss man dann, dass der Springer relativ viele Züge braucht, wenn zwischen dem Gaul und dem König waagrecht wie senkrecht zwei Leerfelder sind und auf den Diagonalen ein Leerfeld ist. Für die waagrechte bzw. senkrechte Distanz gelten dann noch die Nebenbedingungen, dass der Gaul sich nicht auf ein Feld bewegen darf, das diagonal benachbart zu König ist, weil er dort geschlagen wird; ansonsten könnte er in zwei Zügen Schach bieten.

Natürlich kann man auch die Angelegenheit „mathematisch“ angehen und tolle Matrizen aufstellen. Nur haben diese Überlegungen keinen „praktischen Nährwert“; d.h. die Frage wäre: was lässt sich mit diesem unnützen Wissen anfangen?

Kommentar von ralphdieter ,

Nur haben diese Überlegungen keinen „praktischen Nährwert“

Und welchen praktischen Nutzen hat es, Figuren solange auf einem Brett herumzuschieben, bis eine davon umfällt?

Andere wiederum schlagen solange mit einem Stock auf einen Ball ein, bis er in ein Loch fällt.

Als Mathematiker reicht mir die Antwort: "Weil's Spaß macht!"

Kommentar von wolfgang1956 ,

Und welchen praktischen Nutzen hat es, Figuren solange auf einem Brett herumzuschieben, bis eine davon umfällt?

Als Schachspieler reicht mir die Antwort: „Weil's Spass macht!“

Von einem Mathematiker hätte ich doch ein bissle mehr erwartet!

Es gibt ja durchaus Gebiete der Mathematik, die auch praktischen Nutzen bringen: Algebra, Geometrie, Trigonomtrie in der Ebene und im Raum, Vektor- und Tensorrechnung …

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten