Collaboration de solveurs pour la programmation logique à contraintes

par Éric Monfroy

Thèse de doctorat en Sciences appliquées

Sous la direction de Michaël Rusinowitch.

Soutenue en 1996

à Nancy 1 , en partenariat avec Université Henri Poincaré Nancy 1. Faculté des sciences et techniques (autre partenaire) .


  • Résumé

    La programmation logique à contraintes (CLP) combine la déclarativité de la programmation logique à l'efficacité de la programmation à contraintes. Ainsi, les programmes CLP sont flexibles, et souvent plus efficaces que tout autre programme. Le solveur de contraintes (composant essentiel d'un systeme CLP) influence énormément la déclarativité et l'efficacité du système. Néanmoins, il n'est pas toujours possible d'obtenir un solveur suffisamment efficace pour un domaine donné. Jusqu'à maintenant, les travaux basés sur la coopération et la combinaison de solveurs (concepts visant à pallier ce problème) sont dédiés à des domaines spécifiques, et ne sont pas toujours faciles à implanter ni à adapter. Ainsi nous est venue l'idée de Bali, un environnement pour la construction de collaborations (concept unifiant coopération et combinaison) de solveurs. Il fournit d'abord un cadre formel, ainsi qu'un langage pour manipuler et faire collaborer les solveurs. Cette phase s'appuie sur des primitives de collaborations autorisant plusieurs paradigmes (tels que séquentialité, concurrence et parallélisme, adaptés à la notion de solveur), et des primitives de contrôle (telles que répétition, point-fixe, garde, conditionnelle) pour composer les collaborations. La deuxième spécificité de Bali est de créer automatiquement des serveurs ayant une architecture distribuée et réalisant les collaborations désirées. Ainsi, les expressions spécifiées avec le langage de collaborations de solveurs deviennent directement exécutables. Nous proposons également un langage d'accueil de type CLP(x), qui offre plusieurs stratégies de résolution et dont l'implantation est un client particulier des serveurs. De plus, ce langage est générique: la connexion à une collaboration instancié le paramètre x par le domaine de contraintes de cette dernière. Bali peut donc être considéré comme un environnement pour réaliser facilement et rapidement de nouveaux systèmes CLP fondés sur des collaborations de solveurs. Ceci modifie la méthodologie de programmation: ce n'est plus le programme qui est transformé si le solveur n'est pas assez puissant, mais la collaboration de solveurs qui est modifiée à un haut niveau. Une maquette a montré la faisabilité de notre approche ainsi que son intérêt en pratique.

  • Titre traduit

    Solver collaboration for constraint logic programming


  • Pas de résumé disponible.

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 1 vol. (viii-231 p.)
  • Notes : Publication autorisée par le jury
  • Annexes : Bibliogr. p. 215-227. Index

Où se trouve cette thèse\u00a0?

  • Bibliothèque : Centre de recherche en informatique de Lens. Bibliothèque.
  • Disponible sous forme de reproduction pour le PEB
  • Cote : THE 96 MON
  • Bibliothèque : Université de Lorraine (Villers-lès-Nancy, Meurthe-et-Moselle). Direction de la Documentation - BU Sciences et Techniques.
  • Accessible pour le PEB

Cette version existe également sous forme de microfiche :

  • Bibliothèque : Université Grenoble Alpes (Saint-Martin d'Hères, Isère). Bibliothèque et Appui à la Science Ouverte. Bibliothèque universitaire Joseph-Fourier.
  • Non disponible pour le PEB
  • Cote : MF-1996-MON
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.