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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ce27234a927569da9bf38b978f6986d34a57be9f919ccfa9dfcb883270f7df0e
MD5 15ef83214b609788a2dcbf4eb7cdf00d
BLAKE2b-256 867760c9baca863c1582c3bfda3d9bc26a3d8200102fa0dc168840bb42116605

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 042380020ad5f8c24e24752f324a27e7ff4361580087c98970531a843c04776b
MD5 4c175526580e9821e6f055cda27d1255
BLAKE2b-256 c788259139352565437dc785cfc830c57edf2e08f73b361c4872bd3f65285227

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f251012f27e0a76dc1c8e425bd41b7e4904276922dd33e2110beb26f080683e1
MD5 6114566f65a825c8b96e814038e1452e
BLAKE2b-256 855bedb0c3b926a2dd1012826fe76b608133db39921e86cb4644647b3c064a91

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 039c95e863781e6b8a6faf5cc21db93e21a9579956ba590ec52e840d3962f289
MD5 e688de4c3313d2d1dde6527f0b44ee15
BLAKE2b-256 e19a1d7e3400d72f674003a2b3f64418f4687b8c1a82c8e3b0667259aa60df4f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 68adfa7d246e7f0b333f53a0766f2d1c87a0092366bcfa76de40409e29919c5d
MD5 cf72419ede27821090bd5f4c53ed38c0
BLAKE2b-256 5c0d908b0d4a1839ee8839b21abed6a66052a027d9d73589dcf3fe6d6f5196a5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8943985cf45ca62f1d046bb20946ddf7398cde8aedd69896981d34d13ec08bc1
MD5 336b4d63904d817511e25b8de99c9c82
BLAKE2b-256 4c4f5a8e8b43337a126a2614f361d1f6f547946bb20a303396f03d65afa69445

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cd8e4f078d5660d303240d20f2a7b56be05d0c07110659a65e24b056fd9fe492
MD5 dbcd824778b39da1c49616007580b217
BLAKE2b-256 ba8dcb669e119342888a66ee2b0a4564032fdb045d5bac0eddb4c13673bd7613

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b167a2fb9242e98da5021fd6219f14967383baedf286a4b928448cfb835582b
MD5 27e94414edd77c36e168c1986daeb98a
BLAKE2b-256 4272ca19e97b75fa6c6206178363f1c0627455de284da4a8f32d48f453fc4624

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 20cec8bf47fe683b6df7840b45b32f1dc0b11cb06f4ee4cebd3d387a934a5fc8
MD5 561dc3af4b263e418cc7c53e0bb8761c
BLAKE2b-256 b03ff6639eba75dc788666f03db097ddda13fe7b8e39a3508716c7fcc4470f29

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 493a245cdb89e1aa51ecc51744ba60b88d02b19c8feed61cc6ad699d472832ea
MD5 a85ed83b2e521037e0d1921a5ab0402b
BLAKE2b-256 ede77232a424d9527a32e20714e7460a0f1b687cd043e09310bb0409d61c78f2

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 db37a1019375b864dab8dd9aee12efbb5a128f8f530208b71e3fdb507084bf4d
MD5 3136faba50d50f95eec135249cbb23c8
BLAKE2b-256 5dd2b56854f45c628f6c09660feeb896c33c257c92ca356549076a36d77972ca

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c2e542c846b956c8d51eef4ddcd8691e18658865973042f6582990f0a6240a8f
MD5 116d771432efbb25cc2f47a09df5642e
BLAKE2b-256 d776c68d3afe126d20c5cd117e42176e7b7881180b84fd718013d0d0d8333a4d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 48bedc99c25e76828ef89cf76cfb4786c18954b97cc3de2d40eea6c758059b1a
MD5 6cbe764753fe7edfed5fb1e64106ad21
BLAKE2b-256 c4aaa24286da3bdbf0339cf6828dec54002b7e2f83b075e74b32b4b67c91dc8d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c154b664594da6311f05ee4a5a6c2dedd8107d8004c2192b4bcb5a318b958f19
MD5 82803c435ba1d612e0bc4b8c360c9ba6
BLAKE2b-256 8b9ce59c6d8f90885ed5666550a3414fabfa1b00dcfae5d3608cd7337e3d1abe

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 faffffac844f02e5834bbb8433fd5cca4d72424d7f1f9b59a092b2ccbdb885c9
MD5 c171e6d6751bd53dba8ca326bb3ad009
BLAKE2b-256 30fb281822a41d59d8537c36bb94bb2f32ae01bfdf1886dbba8cb551ea3851ae

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 745d4f69c7323933652875a24b2bc642dce8e8641c7fb6608cd5d9640d628134
MD5 78d799cf741c0b635b33473428b850a8
BLAKE2b-256 618db3082647dc049b5799a82dfbf5b29cdb51f542caba930fd824743903ec21

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb82683233f2f194d83f6e22721ad56f94e60a295e4cc7a0bde312cc420b3291
MD5 5dea55d5f13e6eea7c0750e74f2aed72
BLAKE2b-256 505883214df64cbe57b3b022200c8be360c1f39e0018e63426b468df45f92a3f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 445475574908afd939d3a5fa95ba63945aefc4ecd8f285a26fff1f535951aae8
MD5 569d01550121fed106730ece9b992500
BLAKE2b-256 1f3a845ae478b5ad71a434f2abd6edf3801738a592620d9c7c47bf81d514fc98

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe8c0885c5e22dbabb588de85387ed997a6f88581dae3975a979eff83fe71977
MD5 3de15870e1bc1256f0de5e9ae52bb246
BLAKE2b-256 06fa91f6de0eaf5a5b4fbcbd5ce66ec717de81bcf5939e05ced78af77ef2fb78

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.14.0.9.dev202406211718113029-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ef43c0f8207e45eec642f6453d2cae71ff757b118eefa21c95f67c0ffdaf484a
MD5 83da65b2af3afd70e87c5bb9771daad2
BLAKE2b-256 890aaca890db38018dc72acea864679223640078f850c375c3b876a9ccde2823

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