2010-09-13 23 views
0

J'essaie d'utiliser une couche java-prolog en plus de ma simulation actuelle basée sur l'agent. Je cours Mac OS X Snow Leopard et Netbeans 6.9 et j'ai essayé d'utiliser JPL de swi-prolog mais je n'ai pas réussi à exécuter un test avec succès en raison de problèmes avec les bibliothèques et leurs chemins. J'ai besoin d'une implémentation très rapide et je me demandais si quelqu'un avait des benchmarks ou une expérience personnelle avec des interfaces java-prolog bidirectionnelles.implémentation de prologue java bidirectionnelle la plus rapide

Répondre

0

Êtes-vous à la recherche d'un moyen d'échanger efficacement des messages entre un processus java et un processus prologue?

Je pourrais recommander Buffers Protocole de Google, qui fournit un moyen de langues neutres et efficaces pour l'échange de messages entre les différents systèmes ...

http://code.google.com/p/protobuf/

http://www.swi-prolog.org/pldoc/package/protobufs.html

+0

Je cherche principalement à construire un moteur de raisonnement pour les agents dans mes simulations. Je ne sais pas comment les tampons de protocole vont m'aider avec ça. Ce que je veux, c'est exécuter le code de raisonnement dans Prolog et récupérer les résultats dans Java pour effectuer certaines actions. D'une manière similaire, je voudrais exécuter des méthodes Java à partir de Prolog. La clé est d'avoir un moteur portable par agent qui soit très efficace. – Dimitris

1

En 2007, je courais le Prolog classique benchmarks (programmes tels que queens, tak, qsort, nrev et ainsi de suite) contre quatre implémentations Prolog écrites en Java: tuProlog, JIProlog, JLog et JavaLog. L'implémentation la plus rapide était JLog. Tous les détails peuvent être trouvés dans an article accepted at SAC 2008.

Je vous suggère de regarder également jTrolog, qui est officiellement né après avoir mesuré les performances des autres moteurs Prolog basés sur Java. Peut-être PrologCafe peut-être d'un certain intérêt, aussi.

Notez, cependant, que je ne suis pas informé de l'état de maintenance de l'un d'entre eux. Choisissez avec soin si vous avez besoin de soutien de la part de leurs auteurs respectifs.