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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-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.0.9.dev202404031711839473-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-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.0.9.dev202404031711839473-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-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.0.9.dev202404031711839473-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-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.0.9.dev202404031711839473-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.9.dev202404031711839473-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.0.9.dev202404031711839473-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b53fc915300e2dbb072583676f519bc14d00619c4119fbc0f4e429f5173bf841
MD5 230ff22d6ae39cd78e3f6b87a792a62d
BLAKE2b-256 b5a01f5c576082bbffac01e3dd689915a9504facd171fe350a6dcc17e59df457

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8499e22b15af537eac964c32615606c312c068f04757db8da792be71693fd473
MD5 ee0a4b83a3e0abc6d3d05c7cdc8343d0
BLAKE2b-256 eafc05744950b526dcd8f75bcd037702f03d05dcc1bcb7a82e493c4d828ea836

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4839caad34f35f13bd0fdeab99d6abcfdaba0321f118258d59733d8f4be7cdd7
MD5 c76c518eacc760cb043aeda0dbe5adc3
BLAKE2b-256 c4090ecc2c84e81699f0071463e12441a593a1ccb80564520ec670084b1c3cdb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4577ceec8244a8b1ba72544f9d4c0c7c7272f620edf11347f8e2cbc834230fde
MD5 0d2dd9c22c2629facfb41df0636acc21
BLAKE2b-256 f53bccf9aa2701857ee90dc275b69657ba6b3e5d7ae2fd455d551db9050a47ec

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dcb4bc5a536dc29ea10c7f523d0005c976c654e75ecbf2855df8913e0cd502d3
MD5 015206043aeb15b7950ee2062b071cf2
BLAKE2b-256 0020bcab1a25328872658090e8d7774d9b986327f2a58757911c6b91ee55a7ca

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 32a154d47e9445a7731af6e5b0b36f39e6517216db3ea6f2a6a743aab8448f9a
MD5 ac0bb39ba037f0580229014a62e897ae
BLAKE2b-256 3038a4336f3a07e9904a2beee43f2e8220dc0aad77f000259238a5c11cba2a17

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1bde83b294c35a1c79b2c4abd6e19e80b06c2e3ad219dfb585494c2645b96ce1
MD5 d2143a34491d06ce29a709db2c3fa08c
BLAKE2b-256 4e6a70de17ca55ceb349da918f400b4e8adee4352476b6b0722a3015227cbbe2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a1b02d462c69232c0b7f04cfaae10c6ea85d1f9a74e81cb2354136b61c53a9e1
MD5 af121c5fdd2b41de43ba54e9ace45f1e
BLAKE2b-256 a84fb51ab3d4c374a6546b7652e8d1a332c13d3c392fca00527d155ccf93b58d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 106bc34c3dc48bb9e5aacab55e794a4cc5949f1060bf5f6cf22ba100ab28cf12
MD5 2e0390ff35fc751962b755f8217fb517
BLAKE2b-256 f86237f08f0f31c0f68018ed228e8e3c3cb4e216424351be48fa0e5ff86c8bfb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 007068974cf5210ff2b98b9a3122de97b8d7266ee333bb9140b0a06bbaa13ebb
MD5 1acfdf0bc0eac749127c107e54e04d53
BLAKE2b-256 388734b2df6780db891c3cd71aad4a4e88f820215edc2dee3cf738e35d66fe8e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 951d73aeaf950c2b08a2fc9f81a8433f57a38448b8f0b28a9aeba51960e5cdb4
MD5 a23adf9565315c55c1a8cecffd57e565
BLAKE2b-256 4cd4495f66d23e504fd6bcc21840d6f9a58e2a6d8f8790b4fa9d1a253c199201

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d7b72e99cbc1ff3ca821e11510f706afc1070a306e51dca58f4e4929fb315a65
MD5 3788bb6adfe12753ba980c1c2196fe96
BLAKE2b-256 ba3ac115cf0d603d64420617bce569f1207b72b8c0ea8aa4104f355ddb555835

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ca29a09702da0cc537adc17c748a39fed9e4ed4cc659b12742804708d8a9ffd1
MD5 06557d371657363413955a861ac913b4
BLAKE2b-256 d0671e93ebd585960bdb7968c23cbb6f242c2c93687392043e677885150437f9

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8e5fde0908400db771f6ea41d2b52885761083c6b6b10debcb013669c02911be
MD5 e88965355cf1c73d7c80221c160306a1
BLAKE2b-256 c71976adca8ee396b40e7f4bc76dd0af269426b2b59ad9e6c56a608d709ac20f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6b2203effe32ea73b58756e6b935584a9e70c128ed0bfb29b961daab1fbe21f3
MD5 f5bdbb2d56625ba682b5052ed6d1d1b1
BLAKE2b-256 c3bbabefc6dd0d8c2040571c0f17d3e903bf5c0e089b05901db18f731bcdff19

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3247266ae0d458f8bb072ccf84c28cca68d186ecc1557c950ed2fb133fd15769
MD5 36d09db27e8c8c3517ffa39a9d7444ad
BLAKE2b-256 a2115c766462401c3547883a6e0f3691083bcb260dae9b2c635fdf47eb2279fd

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b86c865f5fe7ad9a5b7558340bdbf82891a13b0546709ebc13b4d3054c45ecaa
MD5 c37be362ffd7d1ada1b21dc340c64d10
BLAKE2b-256 686d0a7e778aa8c0d8f707f1dfa61f40a439414c8a5162aee19a8458763e6bb5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a81f4c618bbadbfd5806a882ff1d0ee403563c5404d3761cf3bf98b78dd16be0
MD5 33d7481f421fb7f689dbdc9052f16ca0
BLAKE2b-256 129fb7fc3397cc85705bb9c01539efb880c0311419cb018ea7f0b2071bb42cb9

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bf3572efd52be751009639977986b407f7ece9a23b1eb5bba196a40c201d27f5
MD5 575fea44856ef154089098cca43ba6d7
BLAKE2b-256 021e17aa1f20c0f44e0ce5242f409d7328d38ee3d9902c5b785827abdd41d37e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 99eb96c34db0d91e06c276902ba6666c0d14c48d35037cdf25e83c528c0afacc
MD5 3b3a57848a205a5371c1f22bc2f32cba
BLAKE2b-256 c874071c923e79dacdfe1831872fb62b41cc61dbf208ee1f6297f904d2553a79

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 14fa2eeac2d9b585a9cdee98aa83893351b6e238a00b90724915abeda9949f1f
MD5 0510e80ccbd0ce8987fda55cdb6e13f9
BLAKE2b-256 95dd36350eb2d00e37274858236101aa10b4cc12e2b773eb9c6699535186dd92

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fc68ec11318e2f952df7c2eeef42fbae6c937e03c2e3155be9883afb860749aa
MD5 a04f79ec24348c8f7d3a4aeb6a7a858a
BLAKE2b-256 6701ca16f82eb8fac89edb5ee3663339c794145ef363909eb996d7990b63a2ce

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 352dbc1f480f1f3f4045127e34d8fe5b16e11b68e5fd67d8e4cb66c3c5042146
MD5 65379613b5e1eb16ea9ec3c7146085ee
BLAKE2b-256 9715c4bc3d950191b20c9d8d02e1585edefc45dbcc29c29c72de5a81c1e13eb3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 349876a28673ab6867a5bd62b78aae888db2c0596a3d3c8fd68efe8b12a16fcb
MD5 fdbf3a5d7f0fa3f76a5b86c28be337b4
BLAKE2b-256 5024fbadb2cf53596695c8ecb8e73cf998089401df1e20739de25014c0cbbb52

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.9.dev202404031711839473-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a9fc360656dcce8aa458226799e0ce17f9f498dcc314a25381e2d787b4d0a452
MD5 0a50b49106773598cb8803299bab8ce4
BLAKE2b-256 bd80e6c3944f11216327718307749e6d9e4972e128c6ea0afe72cd96fa8a8706

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