Welcome
to the site of Ontologies, Publications Bi-Weekly Seminars Software Tools Links Contact: |
Software Engineering for Artificial Intelligence |
In
our view, the impressive
modernization undergone by AI over the last 15 years in terms of ever more
rigorously defined concepts and scalable reasoning techniques [Russell
& Norvig 02] has not be accompanied by a corresponding modernization
in terms of AI software development methodology. AI seems to have integrated - and enriched for its specific needs - more concepts from mathematics, operations research, economics, sociology, linguistics and other fields outside of computer science, than it has done so with concepts from software engineering. Still, most practical AI is about developing a large and complex software, since very rarely can a small or simple software provide an intelligent service. The life-cycle of an AI software typically starts from poorly understood requirements. It ends with deployment of either a cognitive aid to professionals with no formal computing training or an automated reasoning component that is transparently embedded inside a larger software [MIT 97] such as an information systems or a game. AI software thus seems to perfectly fit the profile of
software which development can most benefit from cutting-edge SE
methodologies. It is thus puzzling to note that these SE methodologies
are largely ignored by the AI software research community. Even
more so considering that they incorporate many matured, practical,
standard versions of concepts that first appeared in ... good old
fashioned AI research! After spending the 90s turning AI software conceptually sound and scalable, we feel the main challenge for AI research in the present decade is to improve its reusability, robustness, interoperability, documentation and user-interface. One has to openly admit that most available AI software is still very lacking in these respects. We believe this is main reason behind the fact that AI software still remains today largely marginal to mainstream computing technologies, all the while intelligent computing services are ever more ubiquitously needed in everyday applications. |
|
Last updated: 15/01/2003 by Jacques Robin. |