Press "Enter" to skip to content

4.3. L’IA dans les autres sciences de l’information

L’intelligence artificielle possède des interfaces avec plusieurs champs de l’informatique et des autres sciences de l’information. D’abord, l’intelligence artificielle vise à la construction de systèmes “intelligents” qui prennent le plus souvent la forme de programmes. Or, un programme “intelligent” est avant tout un programme informatique, et pour cette raison, sa conception, sa mise en œuvre, son analyse et son évaluation relèvent des concepts et méthodes issus de l’algorithmique et de la programmation, mais aussi du génie logiciel*. Réciproquement, le pan du génie logiciel qui porte sur la vérification formelle de systèmes

ou de programmes exploite fortement des outils de programmation par contraintes* (en particulier les solveurs SAT*) développés en grande partie par la communauté des chercheurs en intelligence artificielle.

La simulation informatique de nombreux processus de raisonnement et de prise de décision s’appuyant sur des représentations symboliques nécessite de faire face à des difficultés de passage à l’échelle, liées à la complexité algorithmique* de ces processus. Pour pouvoir faire face à ces difficultés, il importe d’identifier précisément les sources de complexité en présence. Pour cela, les chercheurs en intelligence artificielle utilisent largement les notions mises en avant et les résultats afférents des théories de la calculabilité et de la complexité, développées en informatique théorique. La notion de complexité paramétrée, permettant une analyse plus fine de la complexité des problèmes, est par exemple fréquemment mobilisée depuis une dizaine d’années en intelligence artificielle.

L’intelligence artificielle entretient également des liens étroits avec le champ des bases de données depuis très longtemps. La déduction sous hypothèse de monde clos* qui est au cœur de l’interrogation des bases de données relationnelles est aussi une forme centrale de raisonnement (non monotone) permettant de tirer des conclusions de “bon sens” à partir de connaissances* typiques. À l’intersection des deux disciplines, on trouve d’autres sujets et problématiques comme celui de la fouille de données ou encore celui des bases de données déductives (il s’agit d’ajouter aux informations de nature factuelle qui sont stockées explicitement dans des tables, des informations implicites, représentées par des contraintes* logiques, comme des instructions PROLOG* ou des formules issues de logiques* de description représentant des ontologies). On peut également mentionner la problématique commune de la réponse aux requêtes des utilisateurs en mettant en œuvre un raisonnement basé sur les ontologies* du web sémantique*.

Une autre discipline qui possède une frontière importante avec l’intelligence artificielle est la recherche opérationnelle. La programmation par contraintes constitue un sujet d’intérêt commun aux deux communautés (les principales différences se situant à la fois dans la nature des contraintes considérées – plutôt “numériques” ou plutôt symboliques – des objectifs visés – satisfaction ou optimisation – et des méthodes employées, même s’il y en a en commun, comme les méta-heuristiques*). L’ordonnancement, mais aussi la planification sont deux autres terrains d’application partagés. Très grossièrement, on peut dire que recherche opérationnelle et intelligence artificielle s’intéressent à beaucoup de sujets communs, autour de l’optimisation et de la résolution de problèmes combinatoires. La priorité est mise, en recherche opérationnelle, sur le développement d’algorithmes spécifiques performants pour des problèmes ciblés, alors que l’intelligence artificielle recherche plutôt des méthodes plus génériques et plus facilement adaptables et explicables.