|
Schon bald nachdem der Rubiks Cube seinen Erfolg begonnen hatte, gab es 1982 eine Jugend Forscht-Arbeit, die sich
mit der Lösung des Würfels mit Hilfe eines Computers beschäftigte. Soweit mir bekannt ist, war die Arbeit des
Schülers Peter Schneider vom Geschwister-Scholl-Gymnasium in Marl das erste Projekt bei diesem Wettbewerb. Zu dieser Zeit gab es weder das Betriebssystem MS-DOS geschweige denn eine grafische Oberfläche am Computer. Auch die Benutzung einer Maus war noch nicht erfunden. Der Computer war ein TriumphAdler mit einem Arbeitsspeicher von 4 kB. Das Betriebssystem, das zur Verfügung stand, hieß CP/M. Als Programmsprache wurde das aus Kaliforien stammende UCSD-Pascal benutzt. Mit 4 kB zu programmieren war nicht einfach. Der ganze Programmcode passte nicht in den kleinen Arbeitsspeicher. Der Schüler entwickelte die sog. Overlay-Technik, bei der die gerade benötigten Unterprogramme in den Arbeitsspeicher geladen wurden. Die zur Zeit nicht benötigten Unterprogramme wurden aus dem Arbeitsspeicher entfernt. Man kann sich vorstellen, dass dadurch der Zeitbedarf für das Programm in die Höhe schnellte. Da es keine grafische Oberfläche gab, mussten die Farben der einzelnen Würfelseiten über die Tastatur eingegeben werden. Danach wurde das benötigte Unterprogramm aufgerufen und der Benutzer angewiesen, die entsprechenden Operationen durchzuführen. Am Ende jedenfalls war der Würfel gelöst. |
|
|
|
|
|
|
Teilnehmer: Daniel Scharstein (21), Obergartzem Klöckner-Moeller Elektrizitäts GmbH, Bonn Felix Scharstein (20), Köln Feinmechanische Werkstatt im Institut für physikalische Chemie der Universität Köln Titel: Die Würfelmaschine, ein Roboter, der den Zauberwürfel (Rubik's Cube) aus jeder Stellung vollkommen selbständig in die Ausgangslage zurückbringt Wer kennt ihn nicht, den verflixten Zauberwürfel, nach seinem Erfinder "Rubik's Cube" genannt. Wie viele Menschen haben schon Tage und Wochen damit zugebracht, das verdrehte Ding in seine Ausgangsposition zurückzubringen. Über solche verzweifelte Anstrengungen können die Brüder Daniel und Felix Scharstein nur lächeln. Sie haben einen Computer zur Würfelkorrekturmaschine umgebaut, die den Cube aus jeder beliebigen Stellung in die Ausgangslage zurückbringt. Und so funktioniert die Maschine: Legt man den Würfel in spezielle Greifer, bestimmen Farbsensoren als erstes die Position der einzelnen Elemente. Dann errechnet der Computer in Sekundeschnelle die nötigen Operationen zur Wiederherstellung der Ausgangsposition. Anschließend setzen sich die Greifgelenke in Bewegung und drehen den Würfel Schritt für Schritt in die Endstellung zurück. Preise Preis des Bundeskanzlers - Bundessieg 1. Preis Technik - Bundessieg |
|
|
Teilnehmer: Vincent Paul Lakomy (16), Stromberg Stefan-George-Gymnasium, Bingen Die Zauberwürfel-Maschine Rubik's Cube Löser VI (RCL VI) Der berühmte Zauberwürfel trieb schon so manchen zur Verzweiflung: Wie muss man die Würfelteile drehen, damit am Ende die Seitenflächen aus nur einer einzigen Farbe bestehen? Vincent Paul Lakomy nahm sich dieser Herausforderung auf eine ganz spezielle Weise an: Statt eisern das Lösen per Hand zu trainieren, konstruierte er aus Legobauteilen eine computergesteuerte Maschine, die dies leisten kann. Diese scannt den verdrehten Würfel zunächst ab und errechnet dann anhand eines selbst entwickelten Algorithmus den Lösungsweg. Greifarme drehen die Würfelteile schließlich in die gewünschte Position. Besonders eindrucksvoll: Für den gesamten Prozess braucht der „Rubik’s Cube Löser VI“ nicht länger als eine Minute. |
|
Teilnehmer: Niklas Johne (17), Germering Max-Born-Gymnasium Fachgebiet: Technik Cube-C wenn ein Roboter den Zauberwürfel löst Es wurde ein Roboter gebaut, der einen Rubiks Cube löst. Sechs Schrittmotoren, die jeweils mechanisch fest mit einem der sechs Mittel-Cubies verbunden sind, drehen jeweils eine der Seiten des Würfels um 90° im Uhrzeigersinn, um 180° oder um 90° gegen den Uhrzeigersinn. Die Ausgangssituation des Würfels wird von zwei Web-Cams erfasst, die einander auf einer Würfeldiagonale gegenüberstehen und je drei Seiten des Würfels erfassen. Die Farbe jeder der 3x3 Flächen einer Seite wird aus den Farbwerten eines 5x5 Pixel großen, genau platzierten Quadrats in einem Frame dieser Kameras bestimmt. Ein Computer errechnet einen möglichst schnellen Lösungsweg. Das Ziel ist eine geringe Anzahl von Würfeldrehungen bei zugleich geringem Optimierungsaufwand der Berechnungen. Zudem gibt es eine vor der Laufzeit erstellte Datenbank, die nach der Idee des Zwei-Phasen-Algorithmus aufgebaut ist und aus der in der Laufzeit nur noch entsprechende Permutationen gesucht werden müssen.Zunächst wird von jedem Cubie die Orientierung gerichtet. Anschließend in Phase 2 werden diese dann nur noch richtig positioniert. Der Computer überträgt die Lösung als Zeichenkette an den Arduino, die über mehrere Motorshields die Schrittmotoren ansteuern. In dem seriellen Stream-String ist abgelegt, welche Seiten in welcher Reihenfolge und um wie viel Grad gedreht werden. Jedoch ist ein Roboter, der einen Zauberwürfel löst, nicht unbedingt etwas Neues. Der Reiz an einem solchen Projekt ist, herauszufinden, wie das ganze technisch funktioniert, da es dazu kaum öffentliche Dokumentationen gibt. Durch YouTube etc. wusste ich aber, dass es theoretisch möglich ist. Bei einem solchen Projekt geht es darum, an seine Grenzen zu gehen, indem man versucht, einen riesigen Problembereich so zu zerteilen, dass man eine nahezu perfekte Lösung hat, ohne stundenlang rechnen zu müssen. Die Herangehensweise erschien vom ersten Moment an als ein nicht zu bewältigendes Problem einer mechanischen Umsetzung. |
Dementsprechend sind die Hauptziele dieser Jugend-forscht-Arbeit die Konstruktion eines
Roboters und die Entwicklung eines geeigneten Algorithmus/einer Umsetzung der Idee eines
bereits vorhandenen Algorithmus. Das selbst gestellte Ziel war, eine zufällig erstellte Würfel-Permutation innerhalb von zehn Sekunden lösen zu können, eventuell sogar den menschlichen Weltrekord zu brechen. Hierbei geht (momentan) fast alle Zeit für das Drehen des Würfels verloren, das Errechnen geht meist innerhalb einer Sekunde. ![]() |