Ergebnisse des Programmierwettbewerbs

Endlich ist es so weit – wir haben fertig! Aufgrund des nicht vorgegebenen Interfaces und der vielen benutzten Sprachen und Frameworks war die Auswertung komplizierter als gedacht. Wir mussten bei fast allen Implementierungen noch im Sourcecode rumpfuschen um die Auswertung wenigstens scripten zu können.

Als Basis haben wir eine Textdatei mit allen im Netz bekannten Chuck Norris Witzen Zeilenweise durchlaufen lassen. Gegentests mit Wikipediaseiten und heise-Headlines haben in der Tendenz das Selbe Ergebnis erzielt. Bevor wir den grad der Komprimierung getestet haben, haben wir auf Korrektheit getestet. Hier sind alle Kandidaten durchgefallen und wir mussten manuel nachschauen was da los ist. Raus kam, dass alle Einreichungen bis auf eine nur mit leichten Fehlern (aus „ö“ wurden „..“ anstatt „oe“, Leerzeichen am Ende, usw.) zu kämpfen hatten und wir deshalb alle in der Wertung gelassen haben. Die Prozentangaben beziehen sich auf den unkomprimierten, aber auf 5 Bit kodierten Eingabetext.

Hier das Ergebnis:

1. Stefan Friesel & Christian Mehlis- 65%
2. Alexa Schlegel & Malte Rohde 73%
3. Simon Gottlieb & Dimitri Schachmann 76%
4. Alexander Rau 79%
5. Patrick Teich 84%
6. Julius Plenz 86%
7. Christoph Husse 89%
8. Rafael Alberdi 113%
Michael Schmidt: Korrektheitstest nicht bestanden

Wir werden in den nächsten Wochen hier die Sourcen der einzelnen Algorithmen veröffentlichen. Dazu wäre es toll, wenn Ihr uns kurz ein paar Zeilen (vor allem die ersten drei Plätze!) zu Euren Algorithmen schreiben würdet!

Einsendeschluss Programmierwettbewerb

Es gibt 10 Einsendungen zum Wettbewerb und wir sind gerade bei der Auswertung. 10 Einsendungen finde ich recht viel und habe mich sehr darüber gefreut – wenn Interesse an weiteren kleinen Wettbewerben besteht, kann das gerne regelmäßig durchgeführt werden.

Erster Prototyp der Kugelbahn

Wir haben einen ersten Prototypen der Kugelbahn fertig. Die Strecke ist 30m lang und hat massives Suchtpotential, so das wir uns mit unserem Spieltrieb sehr zurückhalten müssen. 🙂

Brünierte Kugeln

Wir haben endlich mal ein Problem von unserer Liste streichen können – nämlich das „Wie färben wir 1000 Kugeln Problem“. Im Endeffekt war es ganz einfach und kann sich wirklich sehen lassen. Für relativ wenig Geld haben wir die Kugeln in einem kleinen Betrieb fast neben der Uni brünieren lassen. Das Ergebnis sind schwarz glänzende Kugeln die dazu noch Korrosionsbeständig sind. Die Kugelerkennung sollte jetzt als nächstes in Angriff genommen werden.

Kugelbahn unboxing

Leider mit etwas Verspätung hier die ersten Fotos von der Bahn. Der Lieferumfang war wie erwartet – allerdings aufgeteilt in gefühlte eine Million Plastikteile. Leider sind die Stangen für unsere Pläne zu kurz und wir haben erstmal noch 50m Edelstahlstange nachgeordert. Mit den ersten 60m Kugelbahn konstruieren wir jetzt einen Demonstrator und lösen erstmal die Informatikprobleme bevor es an die Konstruktion der großen Bahn geht.

Erster Prototyp des Kugel-Releasers fertig

Wir haben einen ersten Prototypen für eine Mechanik fertig, die die Kugeln automatisiert auf die Bahn bringt.

Vielen Dank an Stefan Pfeiffer fürs basteln!

Kleiner Programmierwettbewerb

Wir suchen einen Algorithmus zum Komprimieren sehr kurzer Texte (Es handelt sich um SMS). Die Texte sind
in der Regel in deutscher Sprache verfasst und ca. 80 Zeichen lang.
Diese sollen nach der Komprimierung über ein Netzwerk übertragen werden
und danach wieder dekomprimiert werden. Der Speicherbedarf der Software
ist für den Wettbewerb unerheblich, d.h. es können Wörterbücher und co
beliebiger Größe verwendet werden. Der Algorithmus soll verlustfrei
arbeiten bis auf folgende Ausnahmen:

– nach dem Dekomprimieren dürfen alle Buchstaben Großbuchstaben sein.
– Umlaute und das „ß“ dürfen nach dem Dekomprimieren ausgeschrieben sein.
– Alle nicht-Buchstaben – also auch Zahlen – ausser “ !.-:)“ dürfen nach
dem Dekomprimieren ein „.“ sein

Gewinner ist der Algorithmus, der auf eine Textsammlung angewandt das
beste Durchschnittsergebnis erzielt. Der Algorithmus muss unter GPL oder
BSD Lizenz stehen und wird von uns veröffentlicht. Als Preis winken
neben ewigen Ruhm eine Nennung im Quellcode, auf unserer Website und auf
dem LNDW-Poster!

Der Wettbewerb läuft bis Ende Februar. Einsendungen bitte per Mail an
mich. Der Algorithmus sollte am besten in c oder Java abgefasst sein.

Die Bahn kommt

Als Basis für die Kugelbahn haben wir uns für eine Mischung aus professionellen Kugelbahnelementen und einer Eigenkonstruktion entschieden. An Start und Ziel sowie am Router wollen wir die professionelle bahn mit Kurven, Loopings, usw. einsetzen und diese Teilstücke dann mit einer Eigenkonstruktion verbinden um Strecke zu machen.

Solche eine Bahn kann man sich in ungefähr so vorstellen:

Ein Testset ist bereits bestellt und kommt hoffentlich heute hier an.

Kugeln

Wir haben gestern zum Thema Kugeln recherchiert und mussten feststellen das Kugel nicht gleich Kugel zu sein scheint. Sicher war, das wir 13mm Stahlkugeln brauchen würden. Leider ist Stahl auch nicht gleich Stahl und es gibt unzählige Sorten, von ungehärtet bis durchgehärtet und von korrosionsunbeständig bis korrosionsbeständig. Noch mehr Auswahl als beim Material gibt es beim Preis, wobei eine funktionale Abhängigkeit zur Stahlsorte nicht erkennbar war. Der Preis schwankte von 0,12€ – 2,30€ pro Kugel.

So haben wir jetzt erstmal 500 vernickelte und damit korrosionsbeständige Kugeln bestellt. Trotz der Veredelung waren es die billigsten beziehbaren Kugeln. Dazu haben wir noch 500 einfache Stahlkugeln ohne jegliche Veredelung bestellt und hoffen diese irgendwie einfärben zu können. Somit hätten wir dann zwei verschiedene Kugelarten, die sich hoffentlich optisch per Sensor unterscheiden lassen. Zum Einfärben der Kugeln liegt uns ein günstiges Angebot einer Firma aus Steglitz vor, die anbieten die Kugeln schwarz zu brünieren.

Wir hoffen die Kugeln treffen in den nächsten Tagen hier ein.

Offene Fragen

Hier mal eine erste Zusammenstellung der offenen Punkte bzw. Aufgaben. Wer etwas zur Lösung beitragen kann oder anderweitig im Projekt mithelfen möchte, möge sich bitte bei mir melden.

  • Wie färben wir 1000 Kugeln in zwei unterscheidbaren Farben
  • Wie unterscheiden wir die Kugeln – reicht eine Photodiode oder müssen wir Bilderkennung nutzen
  • Wie erkennen wir zwei oder mehrere gleichfarbige Kugeln die direkt hintereinander laufen
  • Wie realisieren wir die Weichen mechanisch
  • Wie bringen wir die gewünschte Bitfolge schnell auf die Bahn
  • Wie transportieren wir die Kugeln zurück zum Start
  • Wie  komprimieren wir die Daten
  • Wie bauen wir 400m Kugelbahn stabil auf

Das sind erstmal die wichtigsten Fragen – weitere werden sicher im Lauf des Projekts folgen.