Mathias Bauer and Dietmar Dengler
Software agents are intended to perform certain tasks on behalf of their users. In many cases, however, the agent’s competence is not sufficient to produce the desired outcome. This paper presents an approach to cooperative problem solving in which a software agent and its user try to support each other in the achievement of a particular goal. As a side effect the user can extend the agent’s capabilities in a programming-by-demonstration dialog, thus enabling it to autonomously perform similar tasks in the future.