About 10 months ago I moved to Gent (see blog post), and stayed at facilities provided by the university. Now that the school year is over, and I’m not a student any more, I have to move again. I’m getting my own studio in the Zebrastraat, which is where my mom currently lives. i’m staying at her place for about 2 weeks until my studio’s contract starts. Read as: free food and no dishes -> more programming time
Some pictures of me moving, taken with my new HTC desire <3:
My old setup, stripped down already for moving.
My printer, which I was hoping might just appear at it’s destination due to uncertainty, but no such luck.
My new, temporary, setup @ my moms place.
Obviously, my final setup at my own studio will be over 9000 times more awesome :d
Never guess how many credits I got on SETI@Home. Syrysly, it’s over 9000!
Meanwhile I passed the 20k line with Milkyway@home and am going to soon with Einstein@home.
Don’t know what this is all about? Check out the Wikipedia article about BOINC and my previous blog post.
I’ve been thinking about switching to GMail for a long while now, but didn’t do this since there apparently was no way to forward emails from yahoo! mail to GMail without paying for it. I got so annoyed today though, I did some Google searching, and found a rather hacky, but working, solution.
Since I won’t use my Yahoo! address any more now, I’m also importing all my emails to GMail. Considering I have over 28k (which is over 3x >9000!), staring in may 2004, this is going to take a while though
I created 2 brand new Ohloh projects for Maps and Semantic Maps. This is really cool since I can now analyse my own commit behaviour for those extensions better, as well as see contributions by other people in a more graphical way. It’s also sort of a win that I got the project named ‘maps’ there. Now time for some eye candy widgets of these 2 projects
References
This diff, which I seriously made without realizing how epic it was at first, is definitely worth a blog post.
Since last week I have 1 BOINC project with over 10k credits – yay. This project is Einstein@Home, which is a distributed computing project hosted by the University of Wisconsin–Milwaukee and running on the BOINC software platform. It searches through data from the LIGO experiment for evidence of gravitational waves from continuous wave sources, which may include pulsars. Like the other projects I’m participating in, which are Milyway@home and SETI@home, I’ve been a participant for about 2 and a half months now.
What is Boinc? The Berkeley Open Infrastructure for Network Computing (BOINC) is a non-commercial middleware system for volunteer and grid computing. It was originally developed to support the SETI@home project before it became useful as a platform for other distributed applications in areas as diverse as mathematics, medicine, molecular biology, climatology, and astrophysics. The intent of BOINC is to make it possible for researchers to tap into the enormous processing power of personal computers around the world.
In essence BOINC is software that can use the unused CPU and GPU cycles on a computer to do scientific computing—what one individual doesn’t use of his/her computer, BOINC uses. In late 2008, BOINC’s official website[6] announced that NVIDIA (a leading GPU manufacturer) had developed a system called CUDA that uses GPUs for scientific computing. With NVIDIA’s assistance, some BOINC-based projects (e.g., SETI@home, Milkyway@home) now have applications that run on NVIDIA GPUs using CUDA. Beginning in October 2009, BOINC added support for the ATI/AMD family of GPUs also. These applications run from 2X to 10X faster than the former CPU-only versions.
(Above text comes from the English Wikipedia.)
I’m participating in these programs cause I refuse to be part of the “let’s waste ~80% of our CPU time” attitude most people sadly enough have.
I did a thorough overhaul of my wiki. I cleaned out the mess, put in some nice demo data, installed the latest version of Semantic Bundle, upgraded to MediaWiki 1.16alpha, put in a new logo and switched to the new (and awesome) vector skin. I also finally created decent templates and semantic data structures for my events and Semantic Maps demo’s.
Over the last week, I’ve been rewriting my Genetic Algorithm (GA) implementation of the Travelling Salesman Problem (TSP). I’ve rewritten pretty much everything, but the two most notable changes are:
1. I split the code into 2 projects: one holding the general GA code, which is now called GALib, and one holding the code specific to the TSP, now called Skynet (lol
). This allows for making any other GA implementation using GALib, even in .Net languages different from C#. The underneath diagram should give you a good idea of how the who thing works. The 4 most left classes are of Skynet, all remaining classes and interfaces are of GALib.
2. I rewrote the genotype of the Route individual type, the core of the TSP implementation. Instead of having a list of integers, referring to cities, I now have a list of Connection, each containing 2 instances of Location. I’ve done this to allow smarter crossover, decreasing the chance of not finding a better solution while it’s still in the converged search space significantly. As a result of this change, I also had to rewrite pretty much everything else of the Route class, including random initialization, mutation and fitness assessment. The biggest challenge here was preventing the creation of multiple loops in the crossover algorithm.
The interface of the TSP app (now called Skynet) also has seen quite some work. I figured out quite a lot of WPF stuff by further creating it. Some extra controls and progress indicators still need to be added though, and I also haven’t created the Cancel/Stop functionality.
Although the algorithm is efficient in the way that it takes relatively few generations to find a close to optimal solution, there remain a few mayor performance issues. If I compare the speed of evolution (measured in generations) with similar applications tackling the TSP, there are those performing up to 3 orders of magnitude faster. Although the fastest of those are written in C++ or C, I should be able to significantly speed up my application. Tracking down resource eating parts of code will be one of my next steps in developing this app. Another possible issue is diversity of the population. I have the suspicion that the diversity shrinks pretty fast, resulting into evolution driven only by mutation. I’m not sure of this though, and also have to investigate how I can prevent this from happening.
Here you have a few screenshots of the app in action
Yesterday I help a small party for my 19th birthday with some friends at the local bowling. We did one found of bowling, where I managed to get the score nearest to 42 (I know, I fail at it
). After that we held an airhocky tournament, in the form of me vs everyone. We played a total of 31 rounds (I didn’t manage to reach 42
), of which I won the first 16, then lost 2, and won another 13. If I don’t count the 5 rather annoying wounds I now have on my right hand, it was an awesome evening
Earlier today, versions 0.5 of Maps and Semantic Maps where released. Some mayor new features where added, and a whole bunch of things have been refactored. I also did some effort to improve the documentation by adding some screencasts and revising the developer docs. Version 0.4.2 proved to be pretty stable, since only 2 bugs have been found and fixed.
Let’s have a look at the new, awesome, functionality:
The list of all things that have been refactored is rather long, so I’ll only cover the most interesting things here:
As for documentation, I created 2 screencasts, both covering a different aspect of Maps. This way people can learn how to work with Maps in a more interactive way then just reading the documentation.
The developer documentation on how you can extend Maps using it’s hooks has been completely rewritten. This was needed since the previous version was created for Maps 0.3.3, since which a lot has been changed to the hook systems of Maps.
For a complete list of changes, see the Maps change log, and Semantic Maps change log.
Downloads:

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 