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.17.2.9.dev202502251739452835-cp313-cp313-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-macosx_10_13_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-macosx_10_13_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 10.13+ x86-64

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 eb22888a696a4991b76a531d5e9552acb9158fbbc1a30951935475b6ce0da0b5
MD5 0ab05804adf7d0cc331fa99be3110b65
BLAKE2b-256 e4c5a3e5c78a51b525ab0194d3e15631e0c6b0bf7fa03b527e77ab527c2fc143

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0c0c5491b94b64f14b979e52e406fa17befdbdccc34656aae078abff2cb04caf
MD5 cd3832be3d3f8619a7010b07a3eb0cc7
BLAKE2b-256 a487c47714fb71450e8d2e3f29f61bd81da67b76096816871c99f3d1caf227fb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 81e46a482aa382e0779b0278ec0e2844d5c9b01c5338faf99831c6e51112506d
MD5 91b1f4e756caefde239cc1022ca2d464
BLAKE2b-256 a9cd5cb6294d7dd6e751e9e027392c75bd48c8a80dc53e45ed590e2b5c4fc473

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4aa62851dc70fde2c7328569e16e4388ea22aeb743683ff0c7d898d38fa8791d
MD5 709e0831486c8abbb9e4a613a3a06ffb
BLAKE2b-256 dd38a0fda7529d4a2b9dc67ac97dca55ac484571908ea7dae1fcd7125bf9e443

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 75fa4d6ebb88fc91971510dbae5f67278ce134a06124a3615a265d41b2e10969
MD5 e960e29a179645cf7b09ba3a707a6830
BLAKE2b-256 d7cb0e3394c330578adc9383401225e9cdd134a8dd026e61fc28f556e6cf197a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 08ed83daea19dd2789daf8a0167dcdd14bb27d4834c103c21a50067aaee1f604
MD5 9c81cf81049f80d525370e7702c6a9b5
BLAKE2b-256 70fddfa2edbeb344ca60b93cb19d55365cd562389ebee630d05a603cf9eb6fd3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 32edbdcc9cbb74bffca74b7f0a8380b88095acfbd6c461a5b751dacd0294cda9
MD5 043e2b0cbc843d99f3fe65df7dad5870
BLAKE2b-256 fad9e9d05b434138f60376620202e5c225832c660f32b6701ffb191db8c531c7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 642a592cf4b60ab563f78d70b404ff7668f258ddede8cba5e9b488b7a90d2b95
MD5 98ae99af04d8de041bc5463c9abe7bc0
BLAKE2b-256 1988d162513048a73bd01dbe0bc860d36797e014c79d1a2b13b33924610d6e30

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 931a9e3b42283e96bd18f7c20b296a76dad248d25c658e38a85f16d1d0c66aa0
MD5 c45d5cdd5c40eb23ddee0e95908665f4
BLAKE2b-256 f4ba923f0237e634d4b146a57eece777f52019bb6ad88ea805c92329c60f1b0e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bcd6be91b1afd9d22ca5fe035298beb44bc09143451836ff6379acc35670d3dc
MD5 0b9f0b09ef693183d40e3249488d3487
BLAKE2b-256 a64bed8b2661bd0b3f962c34840b0bc1ed3443ffc984e1eb707c3b3a258e0ba5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ef02620e7e9471acb8cc27c2053a2323325a6ba325e3475981d5d8ef60c7207a
MD5 89871da78975a0cec8f8444f65c6148b
BLAKE2b-256 8fe702bc30b5d1f592f0b8b519a0f42210fb7f6ff3da81e0e6a9a235e1b74301

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d3f7292d2600827f11296ca1f278057a6045d101605299b45f94aab3dc337ba6
MD5 326a84687a08eb2e44a0d1a1dec22fe9
BLAKE2b-256 753f1daece9c3ab65396598b184585827a8a0e2c9db300794f1a847df46cc4a5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7457da6d8d58c118c23ebe54dadbbccc7e3f6337317c9624b86e1083b3b49dfe
MD5 31573bb82da7c99f368b08d52da625ae
BLAKE2b-256 5ee25113adbbdd89a6351d7a1686650f2c8cb9bb712c5fc3b335b10d2bd0243e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42a2aed5f765c6197e801f9fd86b0e3711358284ffd783029b4c1524425acd68
MD5 557a662c14d87edbee267a6b8d8de3b1
BLAKE2b-256 a571b70c22f8803e341e530c476c1c14f8acacb9a6c9727c755d8708fe595adf

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 923fe7172d4bdfda1dcf3f1ab408d01e9777421afeb229d932b1e5d1e7fff1a8
MD5 d545d046da865f1ba41f4503e3094efb
BLAKE2b-256 e73afa07dd17552fef9695185517b577d063a9ded0a44fba6c35647360a50d6b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9283a8d8b5175d26804c1c98a4d0bc72261ea05e383053dd2a7fb898669e9652
MD5 9480a905c382627276ee7d5314b28710
BLAKE2b-256 1ff28d432e82814bf3960cc6921dd2b8a49bcc66c35e34a1c35abd30c3234865

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2dc97dd5fce9edf54c0b704da02929991bda0cbec1c9e5e6534a4e06e97dccf6
MD5 1260f92df7d1108d1d5e3c9f95f39c8e
BLAKE2b-256 c74918f37bccf8fd6d7a8c113dd4c721afd363bb0d0d1e18ca429669c2bd40e0

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 035088ef5ab6750c3c992f55cb1bd7358c9659de9e6c9108d0fce772d6dca863
MD5 ef776bd30d93148f05eb8060929b150d
BLAKE2b-256 b2759cc40f7c8fd9b2635f4b4b7754aca8d48b38ed55807e2dcb1cc1fc747af8

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 290bef1e29ee046b840d4c9b2f56597364e0b2ffc24e0225400d2b450477ff0e
MD5 1ebde8054393df77745d41054b254da7
BLAKE2b-256 29467b7eb6ba8d84dfb3015dad9f61e9794d1422a765c78939ff54dbc2b39e40

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502251739452835-cp310-cp310-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e56cd5f3c8bd3c87db2fda0f98c43a470d2c4b586cb2c8536f08682cbfe60aaa
MD5 86d23a8e1e06170968cd887cceea547c
BLAKE2b-256 9ae9bb84925a1da169f5d7728137a3a42d51449b0036d94be4c76adc707dade4

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