Programmer. Hiker. Cook. Always looking for interesting problems to solve.
After performing some experiments with Q-Learning algorithm, reading tons of research papers and finally realizing that evolving walking in Aibo is a research project on its own, I decided to change the simulation to e-puck.
I’ve been looking more into motor actions and their effect on Servos. The initial position is always zero. So each time a new action is applied to the motor (we_servo_set_position()), it is interpreted as absolute position. In order to emulate a relative position, I’ll have to store the last value passed to the method, and then just add that value to the newly computed one. Not sure if this will improve my algorithm as it seems that relative position will eventually result in maxing out the joint position.
It turns out that the infra red sensor does not work as I expected. First of all, it interprets lighter shades of various colours as red (e.g. yellow!). I’ve tried to modify the lookup table, but could not find the correct settings. Second, it does not work in fast mode (vital for evolution!). To sum up, it’s not a reliable sensor to be used in fitness function. I will definitely implement the red ball seeking behaviour, but instead of using the infra red sesor, I’ll do some simple camera image processing. However, before I jump into that, I’d like to make the dog move and not jerk in a random manner!