IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Intelligence artificielle Discussion :

Communication inter processus entre Ada et Prolog


Sujet :

Intelligence artificielle

  1. #1
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut Communication inter processus entre Ada et Prolog
    Bonjour,
    (Je ne sais pas si mon sujet est à sa place, merci de le déplacer au mieux si besoin.)

    Le projet est un projet personel pour le moment et je vous invite à participer.
    J'ai un problème je que souhaite étudier avec vous.

    J'écris deux petits programmes dans l'objectif de parvenir à un petit modèle d'intelligence artificielle qui fonctionnerais en binomme Ada, Prolog grâce au traitement d'un univers du discours dans un langage proche d'un langage naturel.

    D'un côté, avec Ada, je traite déjà le langage naturel d'une certaine façon pour dialoguer avec un réseau de neurones artificiel.
    De l'autre, j'étudie Prolog pour concévoir une machine rationnelle pour émettre un univers de discours et traiter "un discours particulier".

    Mon probllème et que je dois partager des information de type "texte" en fullduplex permanent entre les deux programmes.

    Je viens chercher les meilleurs idées pour le faire.

    Voici les miennes :

    - communication par fichiers ;
    - communication par sockets.

    Dans les deux cas, si vous pouviez m'indiquer où pourrais-je trouver des information sur les sujets ?

    Quelle(s) serai(en)t la ou les meilleurs façon de procéder ?

    S'il vous plait ?

    Merci.
    Logique sans matière est matière de logique.

  2. #2
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut j'ai choisie la communication par sockets.
    Bonjour.
    Architecture :
    - un client (Prolog) faisant appel à un serveur (Ada ou Prolog).
    - un client (Ada ou Prolog) faisant appel à un serveur (Prolog).
    - le serveur prolog -> faisant appel à un serveur Ada via client Prolog.
    - le cleint prolog -> répondant à l'utilisateur via Prolog.

    J'ai trouvé comment communiquer dans le système Ada/Prolog par socket.
    Je pense que je vais resté sur cette méthode pour la future première version.

    Merci pour votre patience. Et bon week end.
    Logique sans matière est matière de logique.

  3. #3
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut
    Bonjour,

    Je parviens à transmettre des phrase de minimum 10 caractère maximum 99, les avertis saurons peut-être me dire comment passer un entier de Prolog à Ada par socket...

    Voici un exemple de requête du programme intermédiaire anpe-0.4.4c.

    Nom : on-request-of-anpe-0.4.4c.png
Affichages : 135
Taille : 9,2 Ko


    En ligne 1 : ma requêtes.
    En ligne 2 : d'abort j'écris "no, " parce que c'est une phrase interrogativement reconnue.
    En suite la réponse du réseau en réseau.
    En ligne 3 : j'écrit "but :" parce que des fait ont étés enregistrés auparavant et match le requête courante.
    En ligne 4, 5, 6 : les faits matchant justement la requête courante.
    En ligne 7 et 9 : line new.
    En ligne 8 : le client demande dans une forme interrogative de confirmer l'enregistrement du fait courant.
    En ligne 10 : d'ou le prompt yes/no? |:
    En ligne 11 : je reprend la main.


    Merci pour votre aide concernant le passage d'un entier Prolog -> Ada.

    Vous pouvez suivre ce projet dans la section Mon programme du forum.

    En réalité l'architecture sensiblement différente de celle prévue.

    A part ça, je cherche l'architecture suivante, soit le Serveur Ada étant le Client Ada du serveur Prolog.
    Ici c'est Prolog qui va fournir un service au service Ada pour allimenter au mieux (logiquement parlant) la base de connaissance côté Ada et ainsi les client côté Prolog (utilisateur).

    Comme ceci, les utilisateur distant "partagerons" peut-être logiquement un langage commun.

    Good luck !
    Logique sans matière est matière de logique.

  4. #4
    Membre éclairé Avatar de Matthieu76
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2013
    Messages
    568
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 568
    Points : 890
    Points
    890
    Par défaut
    Citation Envoyé par arknos Voir le message
    un petit modèle d'intelligence artificielle qui fonctionnerais en binomme Ada, Prolog
    Je serais toi j’éviterais le langage Ada, quasiment personne ne programme en Ada, utilise plutôt le Python se sera beaucoup plus simple pour toi je pense et tu aura moins de mal à trouver de l'aide et comme ça tu pourras utiliser TensorFlow pour tes réseaux de neurones.

    Et je serais toi j'éviterais aussi le prolog, j'en ai fait en cours et personnellement je trouve cela vraiment pas terrible.


    Citation Envoyé par arknos Voir le message
    En ligne 2 : d'abort j'écris "no, " parce que c'est une phrase interrogativement reconnue.
    Pourquoi "non" et pas "oui" ou "peut-être" ou n'importe quoi d'autre ? Répondre non à tous les questions n'est pas une solution viable.


    Citation Envoyé par arknos Voir le message
    En ligne 3 : j'écrit "but :" parce que des fait ont étés enregistrés auparavant et match le requête courante.
    Pourquoi ?

    En faite, je ne vois pas à quoi sert le prolog dans ton projet. Et aussi pourquoi tu ne fais pas une communication prolog-prolog et ensuite utilise un réseaux de neurones pour passer du prolog à l'anglais et un second réseaux de neurones pour passer d'une question en prolog à une réponse en prolog.
    Comme ça tu aurais quelque chose du genre :

    question en anglais => réseaux de neurones 1 => question en prolog => réseaux de neurones 2 => réponse en prolog => réseaux de neurones 1 => réponse en anglais

  5. #5
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut
    Bonjour Matthieu,

    Pour répondre à vos questions, dans un premier temps je réponds no parce que c'est une phrase interrogative dans le cas contraire c'est yes, et dans le dernier c'est i dont know.

    Enfin la fonction principale du réseau de neurones n'est pas de traduire ou d'interpréter, le réseaux de neurone à vocation à modéliser l'I.A. sur un exemple effectif de discours dans un langage proche d'un langage naturel. C'est un réseau qui apprends continuellement, et potentiellement réfléchie seul.

    Edit Enfin REM_NN_Wrapper est ce qu'il est et moi je l'utiise de façon à ce que, ... ou presque.
    Logique sans matière est matière de logique.

  6. #6
    Membre éclairé Avatar de Matthieu76
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2013
    Messages
    568
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2013
    Messages : 568
    Points : 890
    Points
    890
    Par défaut
    Citation Envoyé par arknos Voir le message
    c'est une phrase interrogative dans le cas contraire c'est yes, et dans le dernier c'est i dont know.
    À la question "What is your name ?" ni "no" ni "yes" ne sont une bonne réponse.

    Citation Envoyé par arknos Voir le message
    le réseaux de neurone à vocation à modéliser l'I.A. sur un exemple effectif de discours dans un langage proche d'un langage naturel. C'est un réseau qui apprends continuellement, et potentiellement réfléchie seul.
    Et bien bon courage car ça ne va pas être facile. Tu vas galérer longtemps avant d'avoir un résultat potable.

  7. #7
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut
    D'abord je doit dire que mon prototype est plus que "potable", C'est un logiciel artisanal donc pour une utilisation artisanale, qui ne demande qu'à être enrichie de connaissance et qui déjà peu ne pas être idiot qu'il en à l'air.
    Sauf que pour le moment j'ai du bricoler pour communiquer entre Prolog et Ada par sockets. Ainsi que pour placer le bon signe en fin de phrase (interrogative ou affirmative) ; Et je débute avec Prolog.
    Logique sans matière est matière de logique.

  8. #8
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut Precision technique
    Le programme réponds "yes" or "no" or "i dont know" selon la réponse du réseau et non pas la requête de l'utilisateur.
    En suite la réponse est complétée par les info sur les faits enregistré avec Prolog.

    Dans la version beta 0.5.3 dispo sur arknos.net, en suite le programme relance.
    Logique sans matière est matière de logique.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Communication inter-processus et pause()
    Par jsebfranck dans le forum POSIX
    Réponses: 10
    Dernier message: 14/02/2008, 14h52
  2. [windows] Communication inter-processus
    Par litbos dans le forum Windows
    Réponses: 6
    Dernier message: 16/01/2007, 09h13
  3. [Perl] communication Inter-Processus
    Par MarneusCalgarXP dans le forum Langage
    Réponses: 15
    Dernier message: 14/08/2006, 22h43
  4. [débutant] Communication inter-processus
    Par tooney dans le forum C
    Réponses: 3
    Dernier message: 29/12/2005, 20h48
  5. communication inter-processus
    Par benoit70 dans le forum MFC
    Réponses: 1
    Dernier message: 14/04/2005, 09h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo