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,2023 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.13.1.dev202404201713370971-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9a8ae0a48b01812b8f972e9360dca58a6a78b64e38ded9931a0b5cc086e5ba35
MD5 4414967ef785eece4be3c2ad5f7cba65
BLAKE2b-256 d4f7dd9b4a1d02523b7bb0ba4ecb9327f0a6d124905819cd80809f688b6e2f7c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0fd3230b050bec4ed6fdb7fd17a65e843f30eba30fe2ca29d90848db69162726
MD5 19f8da56f7bd2322109cd8cbf453d436
BLAKE2b-256 71fe2bb74fd2d6c4e5333dd2655183501f6ba2ffb431de4b12b6f80a0c151259

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d02cf36803b2fa1d4c09c56d0d9a683e96b6275ee230619eceea6a41f528bf73
MD5 cdbd14db52317d66093803ae7fc9e2f2
BLAKE2b-256 10aab0c14666872bd0c2ab2ee65cdc000ca484fed5b732c08f6354725da0871c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1d9997b8ab55d8c33ae15a557e28f268d1993e6c96121e6ae1b6d7dc99ab6c08
MD5 31e2892ece0fb489f367bdcc37d0325c
BLAKE2b-256 5e2109b73827657a0201042caba10b5081c87e4ac9baf19dcd5f4f31220eed94

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5e48266f109301050ac12897d6bc2cc456968f7062e78b1a08e2479e0aaf6a45
MD5 1f5c736d36cc83a14a1f43b9fe044f14
BLAKE2b-256 29b8e1b332db26380b164af4a4e898fdfbab46d06042b13765fc8dc50822de73

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7d4f38ccda60182d6ecbc3e7ff3a22a9eb86edbc44f745364efa5164815dc9c9
MD5 7725c67f96a57c2c3e173b11d522ce67
BLAKE2b-256 fd9dfab31df3c87cb73758d897efdc565725c15c6d335af02e89cae6af5f9026

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 279cca66affc4e775e4bdb138d4760b7265cdc638f033e33ce759a9c1b2f8ae4
MD5 73a7ef342e5f8c6d5c8d4eeaed2d9cea
BLAKE2b-256 d47cb9225b0195b61c93547c4a673fb62f7181fd9b7a9fe828851299edc95487

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c089285f52a7a7488153eb3b8e516588cc91a03b8571a621d08698d9ad23ce3c
MD5 6f57f9b93e4ed2cfd21076af92786cce
BLAKE2b-256 bd22130642cbcbfdf2eefb8e5aa944fe8d1355c3c4dcb6b80f2ee18a6bd84517

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d69fd2909d0eec230659278e395b2ce96ac1da0894cbcb53cae97cbe8769b32b
MD5 7619089b7811840d978e0cc8364008e1
BLAKE2b-256 b7396fc620d5310d8986e7d403fa69c28777def8c64c11df32bcf1dbc82f6b14

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f4ee77a217380f3cd313b6aa77152de8a8a92ff9517d6148510642a9864864f0
MD5 ee6715ede72c59eecf3a92566f4cc896
BLAKE2b-256 416c9aa38169dadf3777513254be7262f272b8c85971b62cc8845bf43d24bf31

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6a81077b33ed5a03907573a3ae16472b1700c327a59d674b8f59195cd2629c08
MD5 ad74333df9f5cc21152efd50fb2c5578
BLAKE2b-256 b4c230034b04c9b035d0197e8d6ca2a29a7430281e9424b01d902cfdb296dfee

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b2b8473184948f2b61ce8f58a542f8b77b31df7c42f96f5c3fc6bc747f60eda2
MD5 277728abed3136cd4e4089ba277649a2
BLAKE2b-256 4c56d03859dde7fb0c15ba5b438adc7d0dad2832ff1acc1bf716abfab8f7a27b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b967efc228b80cf559b9917da6726425a8d496f031f2db51602f4188a44c73cd
MD5 cc3605a4201d97fc36e567246089362e
BLAKE2b-256 b692051c80d0aca0a916d7845f65f7a066faeb8090d90ddbce3ac176b5ad8182

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e85364ff7a296c896120e3f8ee65c220b0f43b061e7669c7b4a990562c5b1abd
MD5 3a21044dbaabcc56e5291a76728e974a
BLAKE2b-256 93718fa668af6615151a59be79ec09d35967e5d82de01d9d513af595a191be01

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1e8549b66c6289f6611453647ad5d6aa900d2a2dea495481567df9008a8c3be7
MD5 a3dacad994387869567917e989ca34af
BLAKE2b-256 1641ee84e4b3b503eac43fb30d17a4ba39597e8e30c6ce2a931dc7fbf3a2d176

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c5f892751e0861a5bc0728553c22bf4bce247ea044ac2c58c6edbb1e01fcb3ee
MD5 8cbf03107f6c07aeb5ec9e3c710afa5f
BLAKE2b-256 fa3601e42e166ef3df28b2077437c9827827e18523aa7c8d284efc1874fe7c8e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0329d6c826129eab19f832e8230cccabe89885eb7256fb1c866b0033f3d9833
MD5 04213a9cb9cdb37c1caf93ebecdb6b3e
BLAKE2b-256 040eeb945475740a750c8f7c7aa1a25d62b27f790061b069d9000ceedf3c6876

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 48ef2d4080480593d31aebabfc3ae0be224399aefacf1a68976296cb3f26b0a0
MD5 0a05a1fd2e903ddf78e241a7c37997c6
BLAKE2b-256 6a6cda288502f1416849fd5a5be7d49ffb817e04bbd60658d21d67451bc06848

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 40a044d48ccee0d75cb7fda70d2826568822dc8f3e6d01fcbd10d7e9513a63c9
MD5 7a8953df0a920584d0bcd7726c5e7362
BLAKE2b-256 34dd2be72d035e849028e72859e285d132788e2b1af751bcdf16af048cf3e7f8

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f1b68e7db5eef810737533eb03ac8d75e72aad127993afab6c3e1606e49fe800
MD5 3adf1941a7cd85f0b9466984b25ad1b2
BLAKE2b-256 1d1b996d6cd1094837c194acc49d4b7c836c4facb828ed52b7b9ef12095f7ca2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 9db8e5e349601808eae183155ebdfa255d962060f70bcd91dd9678173c373a99
MD5 6aba0893801e1272f307f1415f412151
BLAKE2b-256 dc1d8c6c966821b48fe911e938a22e77637e4215b5a8658ba17817ad9430018e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e4b6f3e43ccc3b27912c7c6ff7b9e99cda51392857f2c1650f3f039e8e167166
MD5 714e1c3045901aa3ea51fc7fc0096da7
BLAKE2b-256 4cfa1d4c6910bf615c0275755fb296a04a80bb8a1ed0e6afdb6601e7513e9ea4

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c980877fa49ffa244babe2d67b17d474b62fc3a91f8ddc77a24afa7462d32262
MD5 c459c069153de170e63d2ddddcc2b126
BLAKE2b-256 5313b3002d64e7f5ad2dfa55ca00b7ad186b4cf81d3b1d378401e47b270d8856

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe1630e3dc6db18fff1241cd79b6d18bd4a726ad5da1135855adfe12d7d6aba6
MD5 d1e4e4eebcac465470b0c0eba21e7b85
BLAKE2b-256 0ef3dcbba80a41e414bdd67032190ef1fead8c3058b00aa870607107c9e82a75

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404201713370971-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 db8656d907c17ac2a2116f11196af738b1be86cc9c4153cf6171c74ad856c9ed
MD5 ef53030898d5292d2368b9fbbb4e170a
BLAKE2b-256 f025acf6397982329c3162258071bcde809a2e0073323be1e14ec208be05366e

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