IA Symbolique
Ce que vous saurez dans 3 minutes
L’IA Symbolique n’est pas une antiquité poussiéreuse. C’est le socle de la logique informatique.
- Pour les historiens : Comprendre le rêve initial de Dartmouth (encoder toute la connaissance du monde).
- Pour les développeurs : Voir le lien entre un
if/elsegéant et une IA. - Pour les critiques : Saisir pourquoi cette approche a échoué à reconnaître un chat (le “Symbol Grounding Problem”) menant aux Hivers de l’IA.
1. Comprendre
L’Hypothèse du Système de Symboles Physiques
Formulée par Allen Newell et Herbert Simon (Prix Turing 1975), cette hypothèse stipule que :
“Tout système de symboles physiques a les moyens nécessaires et suffisants pour produire une action intelligente générale.”
En clair : Penser, c’est calculer. Si on peut traduire le monde en symboles (Mots, Chiffres) et les relations en règles (Grammaire, Logique), alors une machine peut penser.
L’Analogie : Le Juriste Rigide
Imaginez un juge qui n’a aucune intuition, aucune émotion, aucune expérience de la vie. Il ne connaît que le Code Civil.
- On lui donne un fait : “Jean a volé une pomme”.
- Il cherche la règle : “Article 311-3 : Le vol est puni de 3 ans”.
- Il déduit la sentence : “Jean = 3 ans de prison”. Il ne se demande pas si Jean avait faim. Il applique la règle (Inférence). C’est de l’IA Symbolique.
L’Arbre de Recherche (Search Tree)
La force brute de l’IA symbolique réside dans l’exploration de toutes les possibilités.
graph TD
Root[État Initial<br/>(Échiquier vide)]
Move1[Coup A]
Move2[Coup B]
Resp1[Réponse A1]
Resp2[Réponse A2]
Root --> Move1
Root --> Move2
Move1 --> Resp1
Move1 --> Resp2
style Root fill:#fef3c7,stroke:#d97706
style Move1 fill:#dbeafe,stroke:#1e40af
style Resp1 fill:#dcfce7,stroke:#16a34a
2. Appliquer
Les Grands Succès du Symbolisme
Cette approche a dominé pendant 50 ans (l’ère GOFAI - Good Old-Fashioned AI) avec des succès retentissants :
- Deep Blue (1997) : Bat Kasparov aux échecs. Pure force brute (calcul de 200 millions de positions par seconde). Pas d’intuition, juste du calcul (Minimax).
- Systèmes Experts (Années 80) : MYCIN (Diagnostic sanguin). Des milliers de règles “Si le patient a de la fièvre ET des taches rouges, ALORS…”
- GPS (General Problem Solver) : Tentative de créer une IA universelle capable de résoudre tout problème formalisable.
Exemple Code : Un Moteur d’Inférence (Prolog-style)
L’IA Symbolique utilise souvent la Logique du Premier Ordre. Voici une simulation en Python d’un petit système expert familial.
class KnowledgeBase: def __init__(self): self.facts = set() # Faits connus (ex: "Luc est un homme") self.rules = [] # Règles (ex: "Si Homme et Parent -> Père")
def add_fact(self, fact): self.facts.add(fact)
def add_rule(self, conditions, conclusion): # conditions est une liste de faits requis self.rules.append((conditions, conclusion))
def infer(self): # Boucle d'inférence (Forward Chaining) new_fact_added = True while new_fact_added: new_fact_added = False for conditions, conclusion in self.rules: # Si toutes les conditions sont vraies et que la conclusion n'est pas encore connue if all(c in self.facts for c in conditions) and conclusion not in self.facts: print(f"💡 Déduction : Puisque {conditions}, alors {conclusion}") self.facts.add(conclusion) new_fact_added = True
# Initialisationkb = KnowledgeBase()
# Faits initiauxkb.add_fact("pluie")kb.add_fact("dehors")
# Règles (Si Pluie ET Dehors -> Mouillé)kb.add_rule(["pluie", "dehors"], "mouillé")kb.add_rule(["mouillé"], "besoin_serviette")
# Lancement du raisonnementprint("--- Début du Raisonnement ---")kb.infer()print(f"Base de connaissances finale : {kb.facts}")Pourquoi l’IA Symbolique a décliné ?
Elle s’est heurtée au mur de la complexité du réel.
- Le problème du sens commun : Il est facile d’encoder les règles des échecs. Il est impossible d’encoder les règles de “Comment tenir une conversation normale”. Il y a trop d’implicite.
- La fragilité : Une seule règle fausse, et tout le système s’effondre (alors qu’un réseau de neurones est tolérant au bruit).
3. Aller plus loin
Le Retour en Grâce ? (Neuro-Symbolique)
L’IA Symbolique n’est pas morte. Elle revient par la petite porte pour corriger les défauts du Deep Learning. Les LLMs (Neurones) sont créatifs mais menteurs. Les Systèmes Symboliques sont rigides mais véridiques. L’avenir est à l’hybridation : utiliser un LLM pour comprendre le langage naturel, et le connecter à un moteur symbolique (Wolfram Alpha) pour le calcul exact.
Le Web Sémantique (Knowledge Graphs)
Le “Knowledge Graph” de Google (qui affiche la fiche d’identité d’une célébrité à droite des résultats) est une technologie symbolique. C’est une base de données de faits (Sujet - Prédicat - Objet) structurée logiquement. C’est ce qui permet à Google de comprendre que “Tom Cruise” est une entité “Acteur”, liée à “Top Gun”.
Points de vigilance
Questions Fréquentes
Quelle est la différence entre IA Symbolique et Machine Learning ?
- IA Symbolique : On donne les règles et les données à la machine, elle donne les réponses. (Approche Top-Down).
- Machine Learning : On donne les données et les réponses (exemples) à la machine, elle trouve les règles. (Approche Bottom-Up).
Est-ce que Python est un langage d’IA Symbolique ?
Python est généraliste. Les langages historiques de l’IA Symbolique sont LISP (Processing de listes) et PROLOG (Logique). Cependant, on peut faire de l’IA symbolique en Python (ex: bibliothèque networkx pour les graphes ou algos de recherche personnalisés).
Notions Liées (Spider Web)
- Successeur : IA Neuro-Symbolique (La réconciliation)
- Technique : Systeme Expert
- Histoire : Hiver IA (Causé par les promesses non tenues du Symbolisme)
Ressources Externes
- Reference : Stanford Encyclopedia of Philosophy: Logic and AI
- Outil : Wolfram Alpha (Le moteur symbolique le plus connu)