Skip to main content

Bayesian networks and other Probabilistic Graphical Models.

Project description

pyAgrum

pyAgrum is a scientific C++ and Python library dedicated to Bayesian Networks and other Probabilistic Graphical Models. It provides a high-level interface to the part of aGrUM allowing to create, model, learn, use, calculate with and embed Bayesian Networks and other graphical models. Some specific (python and C++) codes are added in order to simplify and extend the aGrUM API.

Example

import pyAgrum as gum

# Creating BayesNet with 4 variables
bn=gum.BayesNet('WaterSprinkler')
print(bn)

# Adding nodes the long way
c=bn.add(gum.LabelizedVariable('c','cloudy ?',["Yes","No"]))
print(c)

# Adding nodes the short way
s, r, w = [ bn.add(name, 2) for name in "srw" ]
print (s,r,w)
print (bn)

# Addings arcs c -> s, c -> r, s -> w, r -> w
bn.addArc(c,s)
for link in [(c,r),(s,w),(r,w)]:
bn.addArc(*link)
print(bn)

# or, equivalenlty, creating the BN with 4 variables, and the arcs in one line
bn=gum.fastBN("w<-r<-c{Yes|No}->s->w")

# Filling CPTs
bn.cpt("c").fillWith([0.5,0.5])
bn.cpt("s")[0,:]=0.5 # equivalent to [0.5,0.5]
bn.cpt("s")[{"c":1}]=[0.9,0.1]
bn.cpt("w")[0,0,:] = [1, 0] # r=0,s=0
bn.cpt("w")[0,1,:] = [0.1, 0.9] # r=0,s=1
bn.cpt("w")[{"r":1,"s":0}] = [0.1, 0.9] # r=1,s=0
bn.cpt("w")[1,1,:] = [0.01, 0.99] # r=1,s=1
bn.cpt("r")[{"c":0}]=[0.8,0.2]
bn.cpt("r")[{"c":1}]=[0.2,0.8]

# Saving BN as a BIF file
gum.saveBN(bn,"WaterSprinkler.bif")

# Loading BN from a BIF file
bn2=gum.loadBN("WaterSprinkler.bif")

# Inference
ie=gum.LazyPropagation(bn)
ie.makeInference()
print (ie.posterior("w"))

# Adding hard evidence
ie.setEvidence({"s": 1, "c": 0})
ie.makeInference()
print(ie.posterior("w"))

# Adding soft and hard evidence
ie.setEvidence({"s": [0.5, 1], "c": 0})
ie.makeInference()
print(ie.posterior("w"))

LICENSE

Copyright (C) 2005-2024 by Pierre-Henri WUILLEMIN et Christophe GONZALES {prenom.nom}_at_lip6.fr

The aGrUM/pyAgrum library and all its derivatives are distributed under the LGPL3 license, see https://www.gnu.org/licenses/lgpl-3.0.en.html.

Authors

  • Pierre-Henri Wuillemin

  • Christophe Gonzales

Maintainers

  • Lionel Torti

  • Gaspard Ducamp

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8b6f076690f0e91d70d4f1d4ecf078cc331b1a8d4d384dc1c9e2aa7aa1350f2b
MD5 31dedbbb659bcd0f4007353a9b307231
BLAKE2b-256 c7cea0b90fdc384f5c2082890e1d9de5dc0926aa7db8429aeb18a1e1bcea678a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 23c62bdbcf257f1baced361fbdda193fee6d3d23de70999c62ae98b330e6f535
MD5 6e3cbb0ce191ba520a4bdea49274ecf5
BLAKE2b-256 fdec375847a2c61c589efd908eb8b506417b7a0d333b34fa22c003fb5eb40765

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6c98817d916aaad90e516de0d3ee7f74de722d6d63845d1361bc52f4990416d5
MD5 3e1deb34e2d5adf32f900f97aed9e137
BLAKE2b-256 23e3ab761a3ba7d34140bd890bc3ea7fe399e2ea83cf332af9e84bb9fe2d354a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 df500a80c2e575b536bfd3512aee72d6e9a6bf58ad314f116be48fd90f3bd8b2
MD5 db0b55a699b616a24afd745875ff5f80
BLAKE2b-256 afe91b582a43ed1f36015e8f9483d4d72c793240491323cdd0cabc22bef9838b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dfeba927dff24a84951ffc830631b8acadaa38c55b2da7af8ef7f3310d10b4a5
MD5 f4f91e3d9eae76223858c898846a566c
BLAKE2b-256 daa1e4c914ff62c48aca0b650a2b37a5a90f68b9b87a2bea93c0ef7970468ad7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 52fbf637aafeb9911d959df1f8c8d2cb7549ce97f1dcbccb14a544c457873064
MD5 7410150455ff89b7351ea1189e2bb317
BLAKE2b-256 b1c64db4f2cc70335a0ff3aaf2d372730a5ae590f87eabcd90bc58b429a3ba27

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 043ae718ab843bccbd9c0c615246cb6d871d7461d3497c1d98ee180c283a7c28
MD5 efb955e814eb67aeed595cbe84791b0c
BLAKE2b-256 a16207d4cdbba28915c1658fadfd5b8032f44faf7f595077bb788bdd3272d47f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3a4f38f31c8578696f576ffdd12fe35e3cd2d62ea1520acc50a9430cd3267e7a
MD5 25f94fd9b9f87e3218587b6148451a3c
BLAKE2b-256 8d1e74afa8a00433cb0e8f0e68ffa2153c55a114b949ed814823e0e3b8143c2b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5d2bbc9726f854e9230181da0eaa9dca10b9638cc71a7762359743d20958c01d
MD5 a3f75cca44e779c89a49d573b2e09e6d
BLAKE2b-256 8ea5fa06157632c5ea5b02651fc92359f04cdabad1e0d27d63fe9c8c5706d0a9

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4d2b5dc6c011c060586d45be2a029e66557acf095db36d0c990e1ea914cef31f
MD5 9f1984afc7a950c41feef739c6b7d6c0
BLAKE2b-256 bf10a3082394fd50f9df8edce3fb72d3a20aac9faccd7eb6044e763fc2222023

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 928af793e25b867023bf4589b13dbc33ee1d681d6a95f5de0b8b59ed3402f787
MD5 373e2a0658f95992b7c1351f5e7a5875
BLAKE2b-256 21e88c3d1697852c2806867cafdf9122ed275a64106b42e64ab1106f9e8d950e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 46a324d17608b35cc56e6df2e0b5ffeba821db6401d4c2d9f723c963abe83a02
MD5 079b667154cd568fef1332ca3080c815
BLAKE2b-256 5389cdfa0e6871678d9dd1a5b38dd6998b7b38cd8e7fabf0148ccc5e30707867

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7fb93acc79928ac4a4b53a9bb96f99e4342a1994b744a751a9af84e2112404f3
MD5 c55571af52ca58ca404cec117b515653
BLAKE2b-256 927d76051ced18c8a528b23e8c1d4da3c7848523737b83e643b5af1e99cca92d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 276502c2c8d7be85932dd8d68598e0e019268486f3e1781d4e433598be2e6f36
MD5 03815c16da2456aaa68bc6eb058b1115
BLAKE2b-256 5bd95731acb889d95cc68982bcba54d6d060731a56343edc95f8b1b4b3e18ac1

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c607ed122f9fc6d2fa3634ccc2bd9c35102a03fe171ed313b30f1683f8881428
MD5 8563bc4a6e88d0a6b5c8ef313f15ada0
BLAKE2b-256 73aa4499a3cfac7a142854ebf0893d665280476fdbac32e474b38d4d241022fe

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3e792dfb4d5d91b81ecb2591277d8bb909c2b9d799dc44b270d35470d5970975
MD5 e35c5d80fd171232d1f6b1c57d959415
BLAKE2b-256 f82687f95ede96fa1f20f5f3624a622318149214d14bd01015fd54ac25218034

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f53e91ef0ee9d1139f00806df8dd04b9fb372ce417fed76cd483e4da2a0d2944
MD5 491a4a606af757d94c4962614a471a84
BLAKE2b-256 f13cca898904189693666418d50d84687e49be48c175f84ee078449953e57895

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5435d42d0e24ad24d4002d16ed7dd01afe0ea9d74542328fa2f1c3a7c9b88037
MD5 7fa2f608f2d093aa0cad3abcdcebfb43
BLAKE2b-256 c6ef3be3a543e5dcb1b956e0dba8c84b4e1f6359bd90e076e3b6e1143a76c96d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5845bb584232cb9a6d55bc7649ed51d305ce9debb92a6dd9371049c6967f3d10
MD5 d721db49154c7ba581cd8e9c2d4efecf
BLAKE2b-256 c5d0bf8afa2a1ac8536c551214efd4a1849552701556029a46af3762b17bd836

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409021723794729-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 de321d701c3fa0b648ec764cb06ebb32cd0fe20b6ef57cd913c80ac7e6bbdc1f
MD5 6736640b575465660a61cffd75b9ef27
BLAKE2b-256 dafdb9be181e0a43e6469f700c6858e6acd215f5f2ab3210e3d691d76acd582c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page