DMUG-Archiv 2013

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Magische Quadrate

Liebe Liste!

 

An alle Freunde der Rekreationsmathematik, und insbesondere an Udo und
Susanne Krause, die immer wieder sehr gute programmtechnische Tricks auf
Lager haben.

 

In seinem lesenswerten Buch

 

?Aus eins mach zehn und zehn ist keins ? Glanz und Elend der Mathematik?

 

 

(http://www.amazon.de/eins-keins-Glanz-Elend-Mathematik/dp/3499166801/ref=sr
_1_1?ie=UTF8
<http://www.amazon.de/eins-keins-Glanz-Elend-Mathematik/dp/3499166801/ref=sr
_1_1?ie=UTF8&qid=1364923638&sr=8-1> &qid=1364923638&sr=8-1)

 

 

berichtet  der Autor Helmut Kracke auf Seite 17, dass es 880 wesentlich
verschiedene magische Quadrate der Ordnung 4, und unter diesen 48
panmagische Quadrate gebe.

 

Nicht wesentlich verschieden sind solche Quadrate, die sich durch Drehung
und / oder Spiegelung ineinander überführen lassen.

 

Vor vielen Jahren habe ich mal mit einem ?brute-force? Basic Programm eine
Liste der 880 Quadrate erstellt. Das war mühsam, da der Rechner langsam (die
Rechenzeit betrug mehrere Tage) und der Speicher klein (jede Menge
Zwischenergebnisse mussten auf die Platte ausgelagert werden) war.  Die
Ausgabe auf dem Drucker passierte Platz sparend ohne Zwischenräume in hex,
weshalb die Ziffern 0 ? 15  und nicht 1?16 verwendet wurden.

 

Neulich habe ich Fragmente dieser Liste wiedergefunden und wollte sie in
toto neu erstellen. 

 

Es gibt im Mma Library Archive ein notebook von Christopher Henrich zu
diesem Thema.

 

http://library.wolfram.com/infocenter/Conferences/7500/

 

Aber leider läuft der Code nicht auf meiner Maschine (warum auch immer?
Z.B. gibt schon  Needs[?Convex`ConvexPolyhedra`?]  eine Fehlermeldung) , und
wie ich das überblicke, findet er 220 magische Quadrate.

(siehe unter ?Let?s Try It?  Length[MagicSqualreList] ).

 

Ich habe mich also entschlossen, meinen damaligen ?brute ? force? code  noch
einmal unter Mathematica zu reaktivieren. Siehe angehängtes notebook. Auf
meinem Rechner braucht das Ganze knapp 3 Stunden, was ja schon mal ein
Fortschritt ist, und ich finde ? wie damals ? 880 magische Quadrate und
unter diesen auch 48 panmagische. So weit, so schön. 

 

Aber es ist wohl sicher so, für n = 5 oder gar 6 ist das völlig unbrauchbar.

 

Jetzt folgende Fragen:

 

Gibt es Ideen, den Code zu verbessern?

Kennt jemand etwas zu n = 5 und / oder n = 6 ?  (es geht darum, die Anzahl
ALLER wesentlich verschiedenen MQ?s zu ermitteln und sie idealerweise auch
anzugeben, wenn das nicht jeden Speicherplatz sprengt)

 

Es gibt ja Methoden, EIN magische Quadrat ungerades n zu konstruieren, das
ist aber hier nicht gefragt.

 

Außerdem denke ich, meine Methode ist ganz weit ab von gut.  Ich glaube, es
müsste eine Methode geben, die MQ?s zu konstruieren in einer Art
?depth-first? Algorithmus, also mit einer sich selbst aufrufenden Prozedur
(Markus van Almsick ist ein Meister in dieser Art der Programmierung), die
nacheinander die Felder des Quadrats belegt und eine oder zwei Ebenen höher
zurückspringt, wenn es nicht passt, und dann wieder neu probiert. Ich habe
da erste Ideen, komme aber nicht so richtig weiter.

 

Hat jemand Lust, mit mir da in einen Gedankenaustausch zu treten und zu
versuchen, so einen Code zu entwickeln?

 

Mit den besten Grüßen

Hans Dolhaine

 

 

 

 

Attachment: magicsquare.nb
Description: Mathematica Notebook document

Antworten:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html