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.dev202405061713370971-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202405061713370971-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.dev202405061713370971-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202405061713370971-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.dev202405061713370971-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202405061713370971-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.dev202405061713370971-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202405061713370971-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.dev202405061713370971-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

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

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202405061713370971-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.dev202405061713370971-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 16822123e449459d909efed889a5c4db9b83c360da413eeaad883994479d54ba
MD5 0f0e24e4e97c3f5d054a3784a1976b96
BLAKE2b-256 802bc8ff91e2750bf95b00c84165d20347535f514e2d1d2cdfa2aa03b2d3af70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eabefc9a32eb08554a9486a64fe7d88a609c4cee5f332e2941c1444b665ba96e
MD5 9c167b9ef91b296d9148596235233adb
BLAKE2b-256 3aa3c6ce53643a36738f9d1541bd97078ac363f684ad23f705cb65fbab2e451c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 58e70d15ba23f77da73bcc3dc23ca864e436a3537b0fcf39bc77f8a6bc5ec1e4
MD5 f9193ed1b6b0b557f7675d2456f8874c
BLAKE2b-256 0d8e880570cdac0c455f4869fbb470fb9201cf9aac6e4a4a85e271625b81fc3d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d10d27536bd486be3456ae72fc03b63bad9eb08280e0ea46cc5a4c3d94e407cc
MD5 a87b4e5c908a9dc353bfcc0c9957bc0e
BLAKE2b-256 9f1bc650c58cc112181e13391974c208bdb398cef4d0b2a53360a7b02a87b9ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9f6982c65ebad847f5940569ec06b780a0f66e13d0c2d7395db476546aa6b51e
MD5 dafb09a54e8cdc74de9c61a72d59873d
BLAKE2b-256 8aa2fa7202110c874c39b347e826f53f908bf2740f1d51c6b09aba8a99449363

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d7dc7bb66df47c6fa26017eef5a89984d91ea289bbd14f2e5b6f0340b7cda129
MD5 625725210100e9a3a8082b9b19f89407
BLAKE2b-256 b49a0e4f94f9850fa02613080ffbd16fbca6e36bccbe7304512bcc527a7e1ac4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 149ff1fc2ac2c7c9c0271905d3b023379703e7845d099ee1545cc973c11eaa4f
MD5 f7d8633e8ea78e4951d3f3ad8fbfc3ac
BLAKE2b-256 3e4540a3e524d6f05e52833203abf7ab345fd5e19c0ea2e601c9dd79806968d3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fd38f20d4882dcb5e975e5d8d17e662b4b84ededbfe735713d9d4969b2caad7d
MD5 b44b47998c8b772646a5848e180615ef
BLAKE2b-256 056ad5691193c4b1b48a8a4304ef9a38d41ccd503fbbf34cef009154c1ca1a65

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 870264c9edfcfd52d0c3bc21bf71ad01c92d5e266364653090506ba6c85c35e7
MD5 3b08a61945293e0c2853ad490e711ade
BLAKE2b-256 e41ff5bfcf7a25457171987886ff1c13746397eede0da6b02936968c992769d1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 50a03762cdea43874de1a02add6e140c7409ec9f750964387b61d061078d62e3
MD5 6acfa10b330b0bce5751024f6746dc65
BLAKE2b-256 3ab4d83d20ec08bbc9614bdc0fbeb5981f1ae320f6787407fdae1ab4f1fa6137

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 dfb0da5894205098a8c953fdd2bd08366a3c9ce6dc73fecce539357c1345d69c
MD5 12aed20d7f9bb3d78ef7c95d597a9110
BLAKE2b-256 bc8686dd464e3c54ce742cec69f1325c5a1018ac9ac0c3865c24b126549f2731

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 76f4d01a1ea11978adff302adabf6fb247e4ab1d327a8462b97d9c2107b51dad
MD5 ff776381ddd3aa726cf498b19ba22980
BLAKE2b-256 88dcc4cba12f49339158d5edc19fc04eadb743e35424016fac0d06d68471f403

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 082b657469067fadc5ef0de5798631e45258fcbdd000594d7780e32bff7b8392
MD5 645cb6f1f26cf92e2a51eb2e6fc0605c
BLAKE2b-256 727f0887fa97a2ca93c5a9eea4080dbf87b54c8e31501bc3ede7014659c381dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6231a55a6b4cce43d40858f019b20ea0938d82a26350d25664611dfc9f839a73
MD5 a454ae518518bb547e944b836ebfdfca
BLAKE2b-256 8cfb025147e83e76ca03f7fb9af3664335a97f5aa225eeedb8748d459bad7040

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 46f729b22673f69696b037ab6caf91bd26b13481dc6ce76b19e376196ca2d028
MD5 9786494d3e9dadf34d152c7bc7be4d14
BLAKE2b-256 7fa6a5fd827014bd14820eb543f7f24819b60f5aed22dd609675fc96c52b2c73

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 03ff3aea6b24550af1838b3eb1a0db0af2621399ebee3ec6dbe986cd8f04dc30
MD5 bfbece2157046acd0b954b09dc6694a2
BLAKE2b-256 9a3fdb1cb9cf33d18b55a93b4774c4af001fccaadedeba05b85a4f661ff254b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 43722f9d0ffbbc53c74160b297ef0bc6f1b37d0df6fc64040746ff3b86480801
MD5 6ca0f7c4387a7da4d915ba87a2f6ae31
BLAKE2b-256 926402e4d1d56bf4549bc2b866d09adccbdcc2d6753a3fa5ff5b90d24e51a882

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cf3421cbb663516882d027ff553dceaa71f04e28af110ba235a3f91b4c774cfc
MD5 77c81c6fe1c70aa70f1e1954fe99fcd5
BLAKE2b-256 fef835c200f01f224f51dd01b6d8d2c2298f8ea93f4a674a2c1dcf5c74e8ace9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d1e691d1d87981256164d2556f2a6574f4f412f5261ba39b7e44653f82f72fb0
MD5 e53df9e83ebd7227f440defe631a96b5
BLAKE2b-256 e4eea27f8ce58d2275552babee0f543885d3e7d0f8009dda8233e7b93e7172b9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 51032f45aabef8ceee5926be84dc2b84d331d69641e7bc49426f2d00fcf8934c
MD5 32b76c1defd533df7a72c440cd5bc320
BLAKE2b-256 535a4b048add01c7db187da1171e9f974d73e3b9f810a975c59e965b510b48bb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 a62a832f6bef5f0dd9ffc40b6625a2e8fa7774ed4626c26387937e01a3d2aea1
MD5 7029d468c2c2f781797b3e67530b89c6
BLAKE2b-256 325a6f787fbdea7100686696a68436a9d1ddde1d23d23871f3b4add6f0738eb2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9db51fccd6e9d017598adb5621f64763c3da41baf6f9db08395c54c472c489ae
MD5 3eb1817e96762f155f0755de1e977d14
BLAKE2b-256 1b48537462e6c2bd331b27d70aa7c15d8dd30f4ee4574f5a002a8093f6d08b38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c9b7d85eac9379e39d733ceeae88e7137d22f4370d36f00d67b20291b57e8e80
MD5 d9821e5811be7dffb1b74ede483c5916
BLAKE2b-256 3ae9f2ff2ea0d9fd5410697d1eca296ff6d7721dc763d41ae4ed30d7d9220555

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7c05be8f31dbe350290c7dcbbc5e892b886b6638a6c7f1ec963d6d422ace2549
MD5 3e56b823bee4ec9c70266287d1d67df0
BLAKE2b-256 07890f8cdddaacbc10a3144dddd969d15a5b85f8cdc50650314f23f419317700

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405061713370971-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 01d0db34e9805ea43e9dbf0d0ed9651698bfc999ac724b53e3d5ce17c738bc9e
MD5 4abb2f708fcd98a627050510b789e9b0
BLAKE2b-256 6c18ea9a0ae16dda4947989759dfa26f284450ad7d0cc96d5d54ef953c4fc910

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