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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-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.2.9.dev202406011715182293-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-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.2.9.dev202406011715182293-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-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.2.9.dev202406011715182293-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-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.2.9.dev202406011715182293-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.2.9.dev202406011715182293-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.2.9.dev202406011715182293-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 dfdcd09f903e566a312ccb9de1d0ad7d9b25836981a10433727122279404477a
MD5 83ea76ac5a4edaec3915892daba8a9d9
BLAKE2b-256 abdbb2d6ee4e1a7378e9e9b3162d59f952e76a3696e13c7f067561800f59c677

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 83cd10ca5328a7df18b0965bd6d0848c558ac041ea72aef934a6ecf193cd5fa0
MD5 555f0ec37d7f179f82efbec105a55483
BLAKE2b-256 aa05ba929323c7f07a08ab5669fc0e586c984261ed2c86de937956a4f8dc61db

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 22c8c4c680a842530497362dfd3046e1ce8141ae163ab8339a09ea66a718749c
MD5 048dfbf1a4b56f80b45bc91786777f9f
BLAKE2b-256 e5f120c93180bd8425f5bf1e065524b253cf83c34af5e467f89ca46082692e4e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1c2d96826e370215a12d9e1574643f5da82c4502ce73fc525bf600bc33593c26
MD5 1c83808e0c7756d00a3983cc4c6d1df9
BLAKE2b-256 30e1d55373fc46de2ebc657d141512872e0a4903d00c7873a3297cac12bedfb7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8feb98a390facb0ecb678eed4b43447c6a20cf75263d8e43e131755d29473389
MD5 3976872a2035ba715e2ac59ea952e27e
BLAKE2b-256 ac5f73363dc89b855953c95e5c1374f2911cc9ba50789c8215469955041d7fb2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b23fb325f42896e201c43dddff8f8c712c700af2f5f6a626aa15685dc60e3778
MD5 3e3fee0244f9f90f663e20a71de12d38
BLAKE2b-256 26840bafd05e9ff986f421b750db388eb27fd9a9a864617e8a5c694aea401136

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7894e749ef05339576b8b209a515b78a21e0b5db90b517e65dbe9a195d0fccc4
MD5 3bb30bcf92f5e3f6c7b3e10d2c31fbb4
BLAKE2b-256 ae9170d574a73de41a8c88759889e7829601ba3c6a85842d93a7d6edf67bcf23

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 038852f6503a2284d97a80a9e6444d93180e7c54c97297792e2a46c1caee04e4
MD5 cbd605e91ad3b5d6e0ac1cb39bfeb49e
BLAKE2b-256 04451d96f1b351bc8fc69f7390b7bcf0885a90fb4ad8336447336af3e5cc4b75

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59042b2861cf2ab43ad584a3d811fa635a151dd28954ffb59805393f76bf2448
MD5 83f65e6f62f34970af73d152be29891d
BLAKE2b-256 cb31f3d28799ecc07311244e88012bdd9e12f222fa5c91743c32ab1e16cf324a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ef871fae6aed4c8fa8da65edd0bfd6a0d13f5565183dafcf400d5840357a7ce4
MD5 c8cf01abf6198acf4e27cfdb76bc6d24
BLAKE2b-256 76b474f108618bfe3b7b46f34b1ed201ea89abdc8ac24d34e7ed18f206744a26

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 eab7e806e11be018adad410ba438cff91675bc130a14a5e3bdf7901ebe019de4
MD5 9eb870407cce134f3dc8667801e2a5e7
BLAKE2b-256 3566e626da780228845b8a80f59aa0343b85c4ff8c9ce6450f9e41eb8bb3367c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ee46f094e0f25589a7e376e8b9fe13385636fb318fd569e1d692fa9907c1fc1
MD5 0ca5b85a42935be5782986e5a917cced
BLAKE2b-256 bf7cadf2e4a8e3de736e86e7e0fde18e9cb1a32b6389b3ced1d726dc66c240a9

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3db379d7dcf03064201401f28f481daa79c7a5594151428cb81bf9fb6b3d6d56
MD5 aeb8d1ce263fd5b7c539b0e26623545e
BLAKE2b-256 0c986b9e653f3430c6d808a6b54cb1b6190f95234e67f55afa14bd5cc513d171

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b74442a91dc400439287852b29040855b633377f58e05ffbb3c7a9f18b25824
MD5 c6b5a3d29d99fae9e45b8370772ad075
BLAKE2b-256 c69c3abc256b9224a1a390a4c4bf19580b5730895ea0f720c4bcb94a363c46f6

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4a4070bec4f21b00ec7d84671486d4ea8452c0f1afde0a6fd6ab21330eafba3d
MD5 ce11c0b767cf6fb8a44a6799b0da5024
BLAKE2b-256 f55c2c1cf9d9e6571487a8749a221ace3bda993a3c9791f5a894d8588dc6e55f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4d3db47369fe1461b37ea7253173357beb089aaf4bd1d6983ff305ad027125d7
MD5 9d47c38d7deb1f89e54aa210003159e8
BLAKE2b-256 55e10bc970c4a8c387989d2b753e26f4063ee3d815497a910e79df7ef2cb68be

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cbdc22d50a33b37dba6579837fa0443ec189b140cc7e0376b8f417c671566858
MD5 f8dc847cbe317b90f2438c8d4a370a26
BLAKE2b-256 e6cf823b19ddd3c885d61a66c732c94f7665a1f6987af83e765ecbe442152b0f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0f81fb3065ec9a2a6232a2db96ff89b6ae61c4b3f1ed2bd38468f4ed1ea1ae21
MD5 903f302087a10f41bfbc355f95723d35
BLAKE2b-256 1975ae8e863d55807db023e480973976d34f9a9c0efc3a02757b582b300dc7a5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4d8ff56a91888e6b770cca8a23229e59124135c4153b9f9e2007b34495efda87
MD5 3f995fb5d540dffd9ceafd636d4fa5ac
BLAKE2b-256 3f67bca26bf7c050bdcd207cf15b45995b7a791a36dce57c58e11585b1cdbfb8

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 21d8d93a23c2aa0e9dde929c244f5f59270552b9cfeb630a6a2260c42b648d48
MD5 510f3adecb0353d23c94e8ec79b999d1
BLAKE2b-256 02e53a60f49b3f5d42769f612365c57715389ceb838a8dc86ed51990d4bc9a1f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 7ea3df184aa55e5ab4986614cd5cc50073c2d3df2354533f723b3a9c65dcc27c
MD5 69391ce0c729bd33fdc23130c92ee85a
BLAKE2b-256 8f55c6aebcda80b5da04618dad611daa63b77c7ed5165766c0abfb95e7737a89

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 94a95864fd90bef935e063c2aee225f63485fc131ce02f1f715843933248638e
MD5 26f0dabb67718df7ca303df74e7dd6af
BLAKE2b-256 7a27cf92b905c24ed9c5feb564435ba3e61a5542156555510c22bf1d235ebc8c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 612a7acbd3d959a1993a17b9c9f9d6f9a34840fb654547660114bbe2b859c9b7
MD5 693641fa3bbb20da346142059d6c9926
BLAKE2b-256 c67e8fccfe6aec7ea0b6c7997b676e64fe4498deb2b044a381d8fae335aed1e2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9e9c8a1c21bc297f6470f65f6c97472e21ebe4e0675669e8b76905b29257ec32
MD5 008f961701dba810a911a42e7cbceabc
BLAKE2b-256 7cf0921f973d179469ea660494f897960633ca46258b7d92181775644402008f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202406011715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 60ea4581ca083777856fb6441132afb5fc29a4d4799eb7cd7913365952e1985b
MD5 df77e62bc07be7fa324eb2a469a5860d
BLAKE2b-256 ee12ed263060a6423607f6f738846aeb05684f9d3af3a8d71646bbae7d500e89

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