candidate knowledge units that have to be validated by a domain expert out of any context, which constitutes an important drawback.

Acquiring adaptation knowledge offline, i.e., independently of a particular problem-solving session, appears to be problematic. Offline AK acquisition forces the system's designer to anticipate the need for adaptation knowledge in problem-solving and to acquire it in advance, which can be very tedious, if not impossible. Offline acquisition of adaptation knowledge also makes difficult to come up with fine-grained adaptation rules, since adaptation knowledge is often highly contextual. For example, in the cooking domain, an egg can sometimes be substituted by 100 grams of tofu, but this adaptation rule may be applied only to certain types of dishes, like cakes or mayonnaise, and has proved to be irrelevant in order to adapt a mousse recipe or an omelet recipe.

Acquiring such a rule would require to circumscribe its domain of validity in order to avoid over-generalization.

Moreover, initial acquisition of adaptation knowledge prevents the system from learning from experience. A CBR system with fixed adaptation knowledge has no way to improve its problem-solving capabilities, except by retaining in the case base a new experience each time a problem has been solved, as it is usually done in traditional CBR systems [6].

On the other hand, interactive and opportunistic knowledge acquisition approaches heavily rely on the human expert but ensure that the expert is "in context" when validating knowledge units that are to be acquired. Combining knowledge discovery techniques and interactive approaches, as it is proposed here, could overcome one of the limitations of KD by dramatically reducing the number of candidate adaptation rules presented to the expert. By triggering the process in an opportunistic manner, the expert is able to parametrize the KD in order to focus on specific knowledge to acquire in context. The resulting AK
discovery process:
- is performed *on-line*, i.e., in the context of a problem-solving session,
- is *interactive* as adaptation knowledge is learned by the system through interactions with its user who acts as an expert,
- is *opportunistic* as it is triggered by reasoning failure, and, consequently, often helps repairing a failed adaptation,
- makes use of knowledge discovery techniques to provide *assistance* to the user in the formulation of new knowledge: the user is presented with a set of suggestions that are generated automatically from the case base.

## 5 Applying Opportunistic Ak Discovery To Taaable

In this section, an opportunistic AK discovery process is applied to the context of the Taaable system.

## 5.1 Ak Discovery

In Taaable, the AK discovery process consists in learning a set of substitutions from the case base by comparing two sets of recipes.