My Projects

me

A collection of some of my projects
- both in and outside of school

Bachelor’s Degree Project

Genetic algorithms - How does its parameters affect evolution?

dkand

Abstract

Genetic algorithms is a method to solve optimization problems by imitating natural evolution. In the work that leads up to this report we use genetic algorithms to solve a complex problem. The problem is to develop a vehicle that can get through a predefined obstacle course. The main part of this report is devoted to examining which values that are suitable to use on the parameters that exist in the genetic algorithm, so that it will be as efficient as possible.

Project Report - Final Version (Swedish)

Robotics and Autonomous Systems Project

The task of the robot is to be able to explore an unknown maze and find tags on the walls and identify the type and color of the tag. After the maze has been explored the robot should then “collect” all the tags in the fastest way possible. You collect a tag when the robot drives up to it so that the camera can identify the type and color of the tag. How to solve this task in the best way possible was the problem of the course.

The project was focused on the software implementation of the robot rather than the mechanical design since that was the hardest part to get to work well. Another important aspect was the project process; by carrying out this project we were expected to gain some experience in planning and executing development work in international project groups. Throughout the whole project we have continuously had group meetings and produced weekly individual reports in order to aid the development process.

The video shows the robot in the test-maze during development.

Mandelbrot Explorer

raspberrypi

Mandelbrot Explorer is a small JavaScript project where I visualize the Mandelbrot Set in the browser and let the user explore the Mandelbrot Set space.

The explorer is written in JavaScript using an HTML5 Web Worker to calculate the Mandelbrot Set image for the currently zoomed area. The user can zoom by clicking anywhere on the image and the current zoom level and coordinates is displayed to the user.

Mandelbrot Explorer on GitHub

Live Demo

enChat

enChat is a simple online chat made with Node.js and the Express web application framework. It uses Socket.io for realtime communication between clients and the application server.

enChat on GitHub

enChat

Raspberry PI Server Project

raspberrypi

The Raspberry PI is a small single-board computer with Broadcom BCM2835 SoC. It has a 700MHz ARM processor and 512 MB of RAM.

My Raspberry PI server runs Raspbian, a Debian based Linux distribution, and is mainly used as a development and test server for my own projects.

The Raspberry Pi Foundation

Raspbian Linux distribution

Project Euler

Project Euler is an online collection of math and computer science problems. In my spare time I find it rewarding to solve problems from the collection, both as practice in algorithm design but also as a way to learn new languages. It is always fun to challange yourself to learn new methods of solving problems. Try it yourself, or just take a look at my solutions on GitHub.

Project Euler

My Project Euler solutions on GitHub

enChat