Monday:
This day we started out deciding what algorithms to write based on a little research. We then decided only to write a depth-first search and started working on this. We worked on rough versions of a node representation class with its helping methods and on the implementation of the depthfirst-search algorithm in java. Herefore we have not used already tested and/or written implementations of the dfs-algorithm, but made a complete self-made implementation. Though at some moments we had some trouble to get everything working at the end of this day we were very satisfied with our progress.
Tuesday:
This day we decided to use represent a node as a position on the board and the configuration number to which the next move would be (see the table/picture in results). This was a good idea, though when checking for occurence of a node in the path, only the location is ofcourse important. We didn't think of this at first, leading us astray for some time. At the end of the day we wrote a gui-animation for a found path. We worked at home this day, so we made it a long day, to get as much as possible ready. At the end of this day we had a completely working program with gui animation.
Wednesday:
This day we worked on porting the calculated path to movements in the robot arm. With the experience of the project before this wasn't much of a problem, though we worked sometime on the esthetics of the knight's move. We tested the moves a few times on the real robot to see how everything was being done by the robot, and if our implementation of PP.java worked correctly. After some adjustments we were satisfied about the robot's movements, but because we were ahead of schedule we had to think of something to do the next day. We came to the idea to write the code more generic to solve boards with different dimensions then 8x8. We found on the internet that boards can be solved with dimensions 5x5 and higher, and started working on this. At the end of this day we had most of the code transformed to a generic form and still working (because when changing things sometimes the program stops working correctly again).
Thursday:
This last day we rewrote the last parts of code to a generic form. This also worked correctly after some time and then we came to the idea to solve 3d-boards as well as a little off the record project. We didn't expect much trouble for this, and didn't encounter these either. Because of the generic code only our node-class really had to be changed. Only a few small adjustments had to be made to the inner workings of class containing the dfs-algorithm. At the end of this day we had everything working and were very satisfied about this week.