Elevator Simulator – HackZurich

Just like the last two years, I’ve sacrificed one of my weekends to fly to HackZurich, one of the largest hackathons in europe. I brought a couple of my fellow students and the plan to create something fancy during the 40 hours of coding time available. But for some reason, we couldn’t really agree on any project – so we tackled a very unsexy topic: elevators.

What’s wrong with elevators?

I have no idea. We just felt like the logic that is currently in use to control elevators could use some improvements. Currently, elevators stop on the level where the last person got out. That works ok and consumes the least amount of energy. However, it’s not very clever. Think about an office building where 50 people would start their work day in the 3rd level, all arriving at about 9 am. People would have to request elevators back to the ground floor when they arrive every time.

A smarter logic

Our approach changes the behaviour of elevators when they are not in use. Take the office example mentioned above. Our control logic would send idle elevators straight back to the ground floor, ready to lift the upcoming group of people up. We predict the levels that idle elevators should move to by looking into the past. We are tracking on which levels people requested elevators (depending on the time of day) and assign each level a score. Based on that score, we can evaluate which level we should send elevators to.

Web simulation

Of course we needed a way to benchmark and showcase our logic. I decided to render an abstract 2D view in a webapp, using plain JavaScript and the HTML5 canvas. It can draw any state of our simulation and thus visualizes our logic over time.

Elevator Simulation

Above you can see a comparison of our smart elevator logic (left) and the default elevator logic (right) at 200x speed. We use gaussian distribution to generate a number of people (rendered as squares) that work at specific times on specific levels.

Benchmark

Imagine a building with 6 levels, 4 elevators and 500 people using the elevators over the course of a day. With the default logic, we measured an average waiting time of 27.6 seconds. With our smarter logic, the average waiting time dropped to 14.8 seconds! This time saving adds up if you think about it in the long term.

Chilling Vibes – Chillstep Radio

Today I released the first version of my web radio station Chilling Vibes. It’s a dynamic page that combines relaxing tracks with beautiful photos. The simple user interface fades out automatically to provide the maximum chill factor.

Chilling Vibes

The music

Chilling Vibes offers tracks from different genres, including Chillstep, Deep House, Drum & Bass, Electro, Funk and Hip Hop. You can filter songs by genre and by speed level to match your taste of music.

The photos

The site shows high resolution photos from different categories. You can select your preferred categories and filter photos by the time of day. Let’s say you only want landscape photos shot at sunset, Chilling Vibes will show you exactly that.

Chilling Vibes

Minesweeper Reloaded

Meine erste WebWorks App für das BlackBerry PlayBook ist ab heute in der AppWorld verfügbar. Die Rede ist natürlich von Minesweeper Reloaded, wie bereits im letzten Artikel angekündigt. Es sind seit der letzten Preview einige Neuerungen hinzugekommen, darunter die Einstellungen, einige weitere Dialogfenster und die Anbindung an Soziale Netzwerke.


Online spielen

Wer kein PlayBook zur Hand hat aber trotzdem eine Runde Minesweeper spielen will, kann dies Problemlos im Browser tun. Auf der Produktwebsite gibt es diese Möglichkeit. Optimale Unterstützung bietet nur Google Chrome. Viel Spaß!

Midis Net Chat

Zur eigenen Website!

Dieser kleine Messenger fürs lokale Netzwerk ermöglicht die Kommunikation mit mehreren Computern auch ohne eine Internetverbindung. Er basiert nicht auf dem Windows Nachrichtendienst und ist daher auch in Netzwerken funktionsfähig bei denen dieser deaktiviert ist (z.B. in der Schule).


Beispiele für Einsatzmöglichkeiten:


Allgemeine Funktionsübersicht:

Screenshots:

Da Midis Net Chat erst in der Beta Version zur verfügung steht, sind Programmfehler natürlich nicht ausgeschlossen. Wenn ein solcher Fehler auftritt, Sie andere Anregungen haben oder einfach nur ein Feedback abgeben möchten, schreiben Sie es in die Kommentare.


Midis Net Chat Version 0.3

Version 0.3 von Midis Net Chat kommt mit einer überarbeiteten Benutzeroberfläche und einigen kleinen Optimierungen. So wurde beispielsweise der Vorgang zum empfangen von Dateien verbessert. Es werden neue Ports verwendet, ältere Versionen sind nicht mehr kompatibel.


Neu Funktionen in dieser Version: