The ROMANS Action designs and implements systems for representing,
storing, organizing and inferring scientific and technical knowledge described
using both symbolics and numerics.
These knowledge-based systems rely on an explicit separation between
the described knowledge and inference mechanisms in charge of exploiting
this knowledge. This distinction enables, on the one hand, to make knowledge
evolve more easily and, one the other hand, to trace the reasoning mechanism
until the solution so that explanations can be given. These systems gather
and structure knowledge of different kinds: descriptive knowledge
(about the entities and concepts of the application domain), functional
knowledge
(about the behavior of these entities) and prescriptive knowledge
(about the means to complete and characterize these descriptions).
In this context, the research themes of the ROMANS Action concern both
the design and the reuse of knowledge models well adapted to scientific
and technical domains, as well as the study of the interactions with these
models during their design and their use. In order to reduce the design
cost of these models and to facilitate the reuse of existing models, it
is our opinion that the numerical knowledge which usually composes the
models has to be associated with symbolic knowledge which will be
in charge of informing about the context of use, the domain of validity,
the modeling choices, or the accuracy of results. Classically, this symbolic
knowledge can only be found, at best, in the specifications and documentations
concerning the model and is rarely part of the model. This way, symbolic
knowledge can be seen as the flesh of the model. It permits to reuse
the model either for building a more complex model including it, or to
use it in different conditions.
The approach chosen by the ROMANS Action in the development of knowledge
representation tools supporting the coupling of numerics and symbolics
is based on the integration of three paradigms for knowledge modeling and
exploitation:
-
Object-Based Knowledge Representation
-
Relations
-
Algebraic Modeling Language
Object-Based Knowledge Representation: In this field of Knowledge
Representation, the object is the central notion. Knowledge is here
expressed by means of two kinds of objects: classes (which describe families
of individuals) and instances (which describe the individuals). Classes
are organized in hierarchies by a specialization relation upon which a
inheritance mechanism is settled. This mechanism allows a more specific
sub-class to inherit from all the properties of it super-class it does
not redefine. Inference mechanisms are also proposed in order to complete
knowledge: default value, classification, and procedural attachment. Classification
is a central mechanism which determines for an instance the set of sub-classes
of its current class to which it also could be linked. Procedural attachment
consists in specifying a peace of code to be executed in order to obtain
the value of a property in a class, if needed. Through this approach, we
extend the studies previously achieved in the Sherpa project from where
the ROMANS Action stems.
Relations : In this approach, relations or associations
between objects are considered as distinct representation entities
(like it is the case in entity/relationship models or in object-oriented
design and conception methods), and are given in models a place as important
as classes have. By doing so, it is possible to give associations a specific
semantics and to handle in quite an easy way relations with an arity greater
than two. Like classes, associations can be organized in hierarchies of
specialization along which an inheritance mechanisms is in charge to broadcast
knowledge from super to sub-classes. Thus, by distinguishing
between classes and associations in models, the ROMANS Action brings closer
object-based knowledge representation systems and modeling methods
used in software engineering, such as UML.
Algebraic Modeling Language: The goal here is to add to the
two central knowledge representation entities (i.e classes and associations)
a language in charge of expressing operational knowledge (algebraic definitions
of property values, constraints) as well as queries. First introduced in
Operations Research, algebraic modeling languages enable the description
of models or systems of equations and/or constraints in a formalism close
to mathematical notations. In particular, they permit the use of indexed
variables and expressions, of quantifiers and iterated operators,
in order to build expressions such as:
Concerning algebraic modeling languages, the Romans Action has got
a first experience through the design and development of the AMIA
system, an environment for knowledge-based discrete-time modeling and simulation.
Thus, coupled with algorithms for solving systems of equations and
for constraint propagation, this unifying formalism opens now knowledge
representation systems to simulation.
The integration of these three paradigms constitutes the approach chosen
by the ROMANS Action to reach the fixed objective. This approach is tested
and validated within the AROM platform.