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.12.0.dev202402151707820181-cp312-cp312-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-macosx_10_9_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 483f2747d069bc0de2841ec5cc8b75358f42f12bf64c7ca36617d6b73d209d30
MD5 d9bfea4d075e342747e13dd86633fab1
BLAKE2b-256 40da317d1b9eddebf196df6621f7d87e42626211cd1979af5b801ba92fb44907

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7f5def9a114379f9ee7ff7fd8458c1e592081782322e286d0ba06bc719159481
MD5 d371973d112cc3b883336201998d13e2
BLAKE2b-256 73b36efc2000311b0320a1c94d6e474384b8400f1d5f3221ee497078d5607c81

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f0a6b7ae89d5bf2f52f078a53c48f92328ccc38f401e13c90b6517a64f59edcb
MD5 18d8a56551b45755c30a42d39bf322e3
BLAKE2b-256 5f45d94c7cdd09a1cb65c68f44c4a814c826f91a845804d41de3cdd4c52d2eb2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cbde48ed1f37431418b79fe168e6dd0bb4a18b51d8ebf4642f792b63286cd173
MD5 0e34c17ad7ce3441326addfb5ef09b60
BLAKE2b-256 0d9e6494c2736f5165894610171e143f6411c8c6c58ae781aa849d3ae8a5c533

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 577c2ee3414da2df5e1ce278d80a6a0aa8f26374e8a64dbdecb448b07abd8101
MD5 a1c1ef71652d9ee40ffdca547b488d8e
BLAKE2b-256 50c403486b4d5da5aa01c160b70a4c2d9b270ab96d6cb8ddc72a44920959261a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5ec4cbbbb567be6407b95141f6ac3077b19e17b26e2a3feb8865eaaa8005a836
MD5 dc4638a19ea9de5f0878a365dec0899c
BLAKE2b-256 f3bb933d0d92d16c8c601792c0249e594403497986d671c09862141b55e64074

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f866d304cc49ad5ee724a5bfd96d764f2e5cf596a453bad906c8e3a1a81d573f
MD5 ab2c3c32d700235af3add78859db77e2
BLAKE2b-256 4921c49029d6f07b64258aa8badac25d630d1e7eec83a48a9c2a7362d4b9c09d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ebecbbe7aa54c1ef40116f5cd68514c5eab2650d7b78ce375a9033195aa2b597
MD5 d38c63385a322a0a3016247396458933
BLAKE2b-256 9f0fe3c2b4d1ba857c64afe1a9d80364002fab41e9d637356b9d71add4138e43

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9dace4ac1eaed3a8d101a84d607c96c2433e1f5a94280ec6d8c845609d8f1762
MD5 06746007bceddec81083e23dc224a76b
BLAKE2b-256 f7d8e7b2a7fbcc8db40884150f778ef2d98aedf8478889a51d00941cd8164139

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 902b853195f7a05f9389db11d495c9f6c40e327f10ee97abab6fe3b903e3d43c
MD5 a4533b41859458fd85dc5e53bf303fd4
BLAKE2b-256 22497fe31c8d10b2cef7ac1c778b5cf9a51d2963896768a2c219ccf1d0e95fbe

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 eca136fde2b22b49ab0e78c6a47b5094f8d46b4ad930df18c355d48914aa7589
MD5 4e309e72ef44cdae41913ab08c2dc598
BLAKE2b-256 948e0516638359dae934268b938e6a610fae8542e8bb44bfe2c4a99cb46fcc69

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8659377460cc4246ec1d159e7404ba94442dbb683c28137ed221e9f13d1e636b
MD5 72d8abc3b7554ccadff7375569cb2d83
BLAKE2b-256 4d40e33b44478a9b28148f5961a349806cb4e9157888a01ca4c3be474edbadb1

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2098391cdbb053f298f51d68fbcc8085d75c40afa2126f1df991c12a6a00201d
MD5 0144bf39563facb4662ac92288b1f9e2
BLAKE2b-256 4fc36548e52b125f0044f25bc31f2a69df915d7ebc54dd477e26b28cab477fad

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0a1081de95a837a03fc31259515e4b9483ed8f431dd26f2d0204974c49d8990c
MD5 0e37362dbf3e7ee92b0ab3fcf6bf7618
BLAKE2b-256 97b805abf43e418026c4e44fc5bcf80ad62bddb6ade3b66fc209c036fc961b4f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 39a0d72e18c8f6ed3dc9ce6f3b1f8869a61014dca5e9d6e695f56773abdcae23
MD5 aaa8cf50949e3ee5ce98d39e433e6466
BLAKE2b-256 c89b92307d5667cd216645ea1e8d479e4a5695f44845960a8f0fe41dca9f5578

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 50b3a70ed9be6d9a8908d3b30740427d03efcb6c14ccb1329c1dd848eabe4794
MD5 36049d4cea04ce131e4cb3e81aa97777
BLAKE2b-256 728244ffb80872b8cb6631da65da598a3d128db41f024136681c577b2897b3cc

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5595deb353a61ab8aac5406dd70021aa925cec570182e626fa676f87c82bb3c6
MD5 36c2097bdffe5063769b63e874d3c92f
BLAKE2b-256 74bf6fa345cff8fdc6cbcef9ba5bf100cc8c03527bcc94ceb3aa6311edda8e17

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d02cdb44357083123e1706bbbc33a996b85e481ad4507b34ebd14bad6b10cb2c
MD5 8290d7cd1b50151447cdb701d0a8766e
BLAKE2b-256 50e9f7ac9c8c366641c8d98e13fba0cb4d93943934d8c63aef4f71b9bc711b78

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1327775ae9173b475cf7dbe59d8cdcb7272367173da1c7c258a1fd211c2beebf
MD5 dab7558564c30e0229a3b48d98aad6d7
BLAKE2b-256 8f52d4a59d14961147f9a5c28ed46d4b32a3a9b21b3c460dc993cd60342ce147

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b98c181606837d6bb19b034e04e647b9e69b4f9f44ff240422b7e565a88be33b
MD5 eb6cad2b11f8b1524e37b6f056a675a1
BLAKE2b-256 71e7a1982d8fca776a431091a8995e115e6801bf7b0f421cdf59f5650916b909

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 3303221e17a22b501fe4d0bb3581710127dab83e2d073b2e1582c27d7e05086d
MD5 bcc89df494179c7736503753c537c3cb
BLAKE2b-256 ca2eed6e0f29dc46412854338f502461051e7a48e5473cb35f0c6fc4f412b8a7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6b8073df2dc952d541b4467485e9a730ca93a39f628f48058fffe153cffb196e
MD5 cfa045aea54c11235284356b442264f8
BLAKE2b-256 c17264d5a2670c865e35517f76bb8ed0bb4a37c72ea44ba7e378637dc10d4900

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c85cd69cc6e340907cb2f4ec03e9d64f6eddbfe769dd08a0ba702b55556ad983
MD5 43da575740d16e20b549a6160ad2f229
BLAKE2b-256 211f1835a31a02fa4494602d025c9c4cea72d414dbacb17ab1b402f613d3b078

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c1374e88de35bcfde94901d16f84e24d365fea73d802b3de1ae3fd61c40a9ed6
MD5 784e51e8cd1aab9ca6b2e45b7fb8ee45
BLAKE2b-256 58e4fa8f700172c28085ee5269dde45c18e05d325045557949122ae2367b4185

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.0.dev202402151707820181-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5b59c89b8894c30f688550790e4e3c2490f02ba406dc3b4c14a1e185fda76da7
MD5 163123d9a32144028efa22a5dded6973
BLAKE2b-256 b0815a655e6bdc4fa16d078f97910a2d72689ff0d99771aeb64dfa52b09e7021

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