• [^] # Re: De l'intérêt de ces paradigmes ?

    Posté par . En réponse au journal Des paradigmes alternatifs. Évalué à 1.

    Voici ce qu'on m'a dit sur le Prolog:

    En programmation logique, le programme sera capable de tirer des conclusions logiques d'après les données présentes dans sa base de règles et sa base de faits. Contrairement à la programmation classique il ne se contente pas de suivre les instructions pas à pas.

    Prenons par exemple le cas d'un programme permettant de conjuguer tous les verbes de la langue française. En Prolog, il suffira de lui décrire comment se forme la conjugaison d'un verbe (radical + terminaison, selon personne et selon groupe, avec quelques exceptions), et grâce à ces règles et au moteur d'inférences il sera possible de lui demander :

    • de lui donner un verbe à l'infinitif, un temps et une personne pour qu'il le conjugue
    • de lui donner un verbe conjugué pour qu'il te dise quel est l'infinitif du verbe, le temps et la personne utilisée

    Ceci sans écrire plusieurs fonctions, ni de fonction de parsage. Le code est plus compact.

    Autre possibilité (encore utopique) : le cyber-médecin. Le médecin humain observe les symptômes pour essayer de déduire la maladie (fait 1: il tousse, fait 2: on est en novembre, fait 3 : on est en France dans une région où une épidémie de grippe a été annoncée = conclusion 1 : c'est sans doute la grippe), et à partir de là recommander le traitement le plus approprié (conclusion 2 : le médicament X à telle posologie sera le plus adapté selon son âge, son état physique, son dossier médical, etc).

    Avec un programme logique, on entre toutes ces infos dans la base de faits (symptômes, maladies reliées, médicaments, posologie, diagnostics d'autres médecins, spécificités selon l'époque et la localisation, etc) et le programme sera capable de déduire la ou les maladies les plus probables selon les informations qu'on lui donne, ainsi qu'un traitement adapté. On fait appel ici réellement à des fonctions d'intelligence artificielle et de logique floue, pour lesquels la programmation "classique" est bien moins efficace.