Jörg Denzinger's
Research
 
      

The TEAMWORK method for Distributed Knowledge-based Search

Our TEAMWORK method was developed to distribute a certain kind of search processes, namely processes that represent their states as sets of objects (like, for example, genetic algorithms that use sets of individuals). The method was inspired by so-called project teams, temporary teams in business companies that are put together to solve one specific problem (like, for example, developing a certain product), a project. But, since computers are different from people, we could start with some kind of ideal project team and then add features that are of special concern when implementing such a team to solve search problems efficiently.

There are three types of members in a team:

  • Experts: are responsible for the actual search.
  • Referees: try to judge the progress of the experts.
  • Supervisor: coordinates the search and controls the communication.

Each expert initially gets the whole problem to solve and it can work on this problem any way it wishes (remember the puzzle example: each expert gets its own copy of the puzzle to solve). In order to achieve a cooperation of the experts, there are so-called team meetings in regular intervals. Prior to such a team meeting the success of each expert is evaluated by its referee. In addition, each referee selects reasonable partial solutions of its expert. These solutions are sent to the supervisor together with the general evaluation of the expert. The supervisor determines the most successful expert, adds to its partial solutions the selected partial solutions of the other experts and sends this actual problem solving state to all experts. Since ther are often not as many computers available as there are possible experts, the supervisor has the possibility to exchange experts that were not able to come up with usable partial solutions. This results in a kind of competition.

The following picture depicts the described cycle between two team meetings: Scheme of TEAMWORK

It is important for a successful use of the TEAMWORK method that the experts use different methods and strategies for generating (partial) solutions. In computer programs this is achieved by using different control heuristics that represent different, even contradictory, knowledge. With only one computer one would have to decide which of these heuristics to use. Furthermore, the selected heuristic may be totally inadequate.

For complex and hard search problems there is typically no heuristic that is capable of solving the whole problem. Some parts of the solution are always found very quickly while other parts can only be identified by an expensive and systematic enumeration of all possibilities. The TEAMWORK method allows experts that find different parts of the solution quickly to combine these parts thus achieving synergetic effects.

For more details about TEAMWORK and its application to different search problems, please refer to the papers cited on our TEAMWORK bibliography page. A list of the persons that are or were involved in developing TEAMWORK can be found here.


to our TECHS approach.

Last Change: 5/12/2013