An autonomous robot playing the board game checkers

International Journal of Electrical Engineering Education, Jan 1998 by Zribi, M, Sung, E

7 ACQUIRED SKILLS AND PROBLEMS ENCOUNTERED

Some of the acquired skills as well as some of the problems encountered during the development of this project are outlined in this section.

7.1 Acquired skills

After completing this project, the students have learned several skills that are of great value to them in their professional careers as engineers. For instance, by working on the EYE module, the students learnt the basics of computer vision. In addition, they utilised the image acquisition software library given by the manufacturer of the DT3851 board. This image acquisition library is a collection of object modules intended to be linked with the application program. These modules consist of routines that pass firmware commands and arguments and receive data and status information from the board. Because the image acquisition library is written in Microsoft C, the students had to learn this programming language.

The image captured by the camera needed to be analysed. By analysing each pixel, the task of differentiating the black and white seeds, the game board, as well as the borders of the game board is accomplished. Thus, the students learnt something about object recognition in computer vision. Due to the different lighting conditions at regions of the four corners of the game board, as well as the occasional shadows falling on the game board, image contrast stretching and brightness adjustment techniques had to be applied. This problem gives the students a feel for the difficulty of real life problems; theoretical methods do not always work in processing real images.

While writing the software for the BRAIN module, several game-playing strategies were examined in details. The students ended up implementing the alpha-beta search algorithm because this algorithm gives very good results.

The students attempted to reduce computer memory use, and in so doing allowed for the increase in the depth of the search, hence making the software more sophisticated. To achieve this, the entire checkers programme was traced repeatedly to know exactly which module uses up most of the conventional memory. A Turbo C function was called in many parts of the programme to check how much memory is left. The implementation of the checkers module required logical analysis and problem-solving skills. It gave the students an excellent opportunity to develop an in-depth knowledge of the C language.

The students attempted to transform the checkers program into marketable game software. A graphical representation of the checkerboard, together with many user-friendly features are included in the software. For this task, many innovative ideas, such as erasing a seed by converting it to background colour, were needed. Like most marketable game software, the developed software included several options, such as `two players', `which side goes first', `save game', `load game' and `exit programme'. A midway termination key was also implemented to allow for midway programme exit.

The HAND module enabled the students to control the robotic arm using a control language called the Advanced Control Language (ACL) and an interfacing software written in C. Very good understanding of the Advanced Control Language was achieved through repeated trials of different programs written by the students. It should be noted that the ACL resembles the BASIC language and was not very difficult to learn.


 

BNET TalkbackShare your ideas and expertise on this topic

Please add your comment:

  1. You are currently: a Guest |
  2.  

Basic HTML tags that work in comments are: bold (<b></b>), italic (<i></i>), underline (<u></u>), and hyperlink (<a href></a)

advertisement
CXO UnpluggedSmart Business interviews on BNET

See and hear how senior level executives across the Asia Pacific are developing smart business ideas across a variety of sectors. The focus is on the future, and on how businesses need to evolve.

advertisement
  • Click Here
  • Click Here
  • Click Here
advertisement

Content provided in partnership with ProQuest