M.Sc Thesis

M.Sc StudentHaddad Nael
SubjectIntelligent Software Agent for Table Soccer
DepartmentDepartment of Electrical and Computer Engineering
Supervisor PROF. Nahum Shimkin
Full Thesis textFull thesis text - English Version


The table-soccer game (also known as foosball) is an interesting domain for the research in the fields of robotics and artificial intelligence. This work aims at designing an autonomous agent that plays foosball on a competitive level, with an emphasis on modular software architecture that allows for rapid response to dynamic events while executing game plans with longer term objectives.

We start by reviewing relevant principles and approaches to intelligent agent design. We then describe our proposed approach to the design of an autonomous foosball agent, as well as some implementation details.

The proposed hierarchal problem decomposition is featured by flexible control policy implementation and reuse. The software architecture consists of the Environment State Class where all beliefs about the state of the world are encapsulated, the State Evaluator which analyzes and reports game’s current state, the Mode Arbiter serves to measure the respond demand of the environment, the Reactive Controller responsible for the agent’s real-time behavior, and the Deliberative Controller that carries out the agent’s most cognitive and time-consuming operation.

Deliberation and reactivity are joined to better meet the environmental demands as suggested by the Hybrid Paradigm. The Deliberative component organizes three functional layers by scope of control; the Planner positioned at the top layer is in charge of strategic planning. Perceiving whatever environment data available, it attempts to select best target point to pass the ball, not before it foresees the outcome of taking such an action. The Sequencer inhabits the middle layer of deliberation and is responsible for skill sequencing to carry out the Planner’s desires. Finally, skills are the basic structures that equip the agent with ball manipulation capabilities.

The Reactive Behavioral Module consists of an upper layer that selects two active rods out of potential four, assigning to each rod a certain behavior. Three behaviors fill the role of the agent’s defense agenda while a fourth behavior is incorporated to provide a simple attack maneuver. These real-time behaviors occupy the lowest layer of reactivity.

The proposed agent has been fully implemented on the simulator platform developed at the Control and Robotics laboratory, and its observed performance will be discussed.