Langage de programmation probabiliste

En informatique, un langage de programmation probabiliste est un langage de programmation qui permet de manipuler des variables aléatoires et/ou qui permet de manipuler des modèles probabilistes.

La programmation probabiliste est un paradigme de programmation basé sur la spécification déclarative de modèles probabilistes, pour lesquels l'inférence est effectuée automatiquement. La programmation probabiliste vise à unifier la modélisation probabiliste et la programmation générale traditionnelle afin de faciliter et de généraliser la première. Elle permet de créer des systèmes facilitant la prise de décision en situation d'incertitude.

C'est pourquoi un langage de programmation suivant le paradigme de la programmation probabiliste est appelé « langage de programmation probabiliste » (LPP), en tant que langage dédié dont les spécifications sont conçues pour répondre aux contraintes d’un domaine d'application précis.

Exemple de programmation impérative

modifier

Par exemple, en Probabilistic-C[1], qui étend le langage C, on peut écrire des instructions comme

double mu = normalrng(1, 5)

qui crée une variable aléatoire mu de loi normale.

Exemple de programmation logique

modifier

Par exemple, en PRISM[2], qui étend le langage B-Prolog, les clauses sont pondérés.

Notes et références

modifier