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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-macosx_10_9_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.12.1.9.dev202403091709747362-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.12.1.9.dev202403091709747362-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 32adacc605b82afa7876808c42978de4ccb20504f279f4c8242e0e3021c7eb7f
MD5 57f2c9025336b06768237c8e1aae02d1
BLAKE2b-256 bda4acfd1fe3d957fd99d8a082a59a775cb431bf7e27d5a79e45b73c4d032c69

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aab14940ebbe8528d9e4443e7c415bfe670129c29dbc8f184955b19b3071c8f8
MD5 10a516ae2b128d52955ef561978d17a0
BLAKE2b-256 c61f75857b23f2a6fa469a5d884637fdb5c7894f2ea1593166359e1cf927941f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b9fa4188f8d10b8efa1fcc509e78b98b354ea7bcde8b6e6685dfab8d954d1049
MD5 b60eb8ec9725859666f749cb016bd137
BLAKE2b-256 38bcb7fbbeb49e6c85e72f25d77b35cc4f11e44dcf157752ea66207a695b560a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2be71ba1dc965b04e098f632cc668e3516a5fe393da52cf270c8e423607fd782
MD5 1fc06f3ca96c156b7beced7b08fd6c57
BLAKE2b-256 9ec948473d5ae15a2732c02aaf7ae1cca5f2bb9e967fc526aa8eb15c675f065c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e3b79cb65489268b52f4d0e020af152b56f5bcd206a10b1804b748e3fc67aa0f
MD5 359e4d1be67dd97abc4a29ee9fff839b
BLAKE2b-256 760b6a587472eb589b178dc3d8b3cb29c61a5c79dcf46a15526cee4d58529dae

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 74a9d8174e6137d83e3c4cd315da75ce53f5ce03a5fc10b6e89814e1a29e0303
MD5 af071a69d58703a67a90df4864930428
BLAKE2b-256 135771d6dbe0ca6c069c9cd804740657a3c9b4ea0795d03f725de79c31b4b106

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 57cc7509a93e00d5220b09453fd7edef35bb8ac2a1de9f9477f30998b7ad6866
MD5 e819782f872ceb9af8d35723f657be08
BLAKE2b-256 bcc72276ddf3cb2e3472458ebd815c18dd43baa000ad72c13d044fdfafbbca9a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a5d97b4a0a43b156a4fd96617952fc92331b1a05eb729ceeb051b7f150395010
MD5 3057c6bcf553ad146d28dfee01b23641
BLAKE2b-256 14e3af06aa441fd8cffafc320108666e5d173e0415c0f506d31396c45872b940

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83f197f22194e6088d3a673d2de417d8c03ccc7f4930bc91a96a7c292939d728
MD5 5728949430396857ae456ddb5b314328
BLAKE2b-256 02dbe115b964667711d1ed187d7120bc55c64b68696e9f07d0f0190c36e2d657

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 da453312f0104fbf30f93954305e022f47eca32dfa192dcaf13552df82de0ab1
MD5 1d80fdd49f5f530e40e5721c8eb610d3
BLAKE2b-256 b2859bb1a7d26adeed6a9b6c2824a24469930f2eefbadff7bf250b643e867c1e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ae438dc6c36eeff0abab2d84c4827a92c62afd3e915564fb8d76594620b5086b
MD5 cd9aafa0af543bdf28fc04cca30b86f8
BLAKE2b-256 b4d621d5daba0ca6fc6b67ec41568dafd5eccc3e76f791351e8a3d250471b244

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5177ded188ac105cb1097b30180bdc814832aec9c3258919ed57f26b103418ce
MD5 88577d00c172a22a41c438b21d58aa56
BLAKE2b-256 2200d6e40acec115a866d52ebb83057fe261a9c29d9551fad9f071885514ed25

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3c0bd91110e49a0a51e696fcfe07a88cc98bdea911fba8ae972745b6c1888f23
MD5 d79854767fab9484fef7d5bf57bde3c9
BLAKE2b-256 e8075c675ba8c581d2fdb76554243fc9a9258124bd05d5e28809032abd91930c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2860448ffdf6d1c63301e57f245f52e028bd1251e9a01624689f1ab51d3985c1
MD5 afc466fcad77e3b08a450a1c03e7c0fd
BLAKE2b-256 528e01ea43e9dc860e268b79337fcd50543f48daffc86639bf295a9e00ed901f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6a7a40fa72bf1747d5408a8f036dd8a754fbcede273711bae0de73dcaaf258f7
MD5 c78a95690aa5b1612327841ae1a35829
BLAKE2b-256 97cf2fe2e149178700308bfb74a24ebbb7bd859291e3dca9bebc2271e33e9e90

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 45e6701c66616bbdc034dfdd580d403a20ce1afb99f3dee3d6a4058f093c844c
MD5 a2fd376790ad8efec5f89e843494e123
BLAKE2b-256 ad52e922995f2010d142d772e1179e64c7d2465bff315f1f98042e5c98392780

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 43d0383b3a27e949b08df3109103f403b78f0ec5b9da50f8452c762bed205c7c
MD5 7986cfad5faeaa3284cf7df41219e648
BLAKE2b-256 8330b174b7322b3b5fe90b0bfec0861872a2a6152ada7b1a139aff8a08f3789a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b763b14646458a76490c8a2f59785a6a2580f53111f808bb83c62d7a22f2bd30
MD5 d92c607d934c7e36608e223803f163b1
BLAKE2b-256 e7db06f585946f9960fdcb7e9b97419146798c661293aa04ad8e67b1c203a336

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0dc7de70b835809fdb6f4006c619d3a0f60ecbb3e3dcea21f7e86a281e568fcf
MD5 568bf2c90a19d5c4e8879abbe52ffafa
BLAKE2b-256 b56867b0182ee5e3b28188a144f23350106e9dc6187a308a642b594cbb33b04e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9f5986f068dfae2d61144b60614cfd0bef10ac0d93e643a16d58b49a66988ba2
MD5 ed4e9788a291c589390b1f4541677acb
BLAKE2b-256 e3c97f7b59946ee14f17b73320693d58ba2def496ff736a8a87f17d85c9b42e3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 cfc084a5f4f3548ee3c707660b418c6b2b2733e38f9cd7d1f977e50bc0986bc9
MD5 75204a115c314324e791fdaf4d23bbf4
BLAKE2b-256 99040f802fe00c0f2bdbe909d2fc322e3398e7fdf0bc1647cc2bc8a2fcbde2cb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aa75b78c4af0c07a6c7ccaef8b7144693b44772d9e8a3d18dd1ae868b0f37bea
MD5 e0d62b7f26de340e81731f0d7ad337f9
BLAKE2b-256 fd8ef1547ae59923960c14a1cbc9002a4a9b11a99428cf2332a01276aad8a57c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d5a6f09373fea03bbe22faa433b674dac6808f2235a615842c85cb8553e167ac
MD5 d76df513cbf4fd37f1ff0733a09bf96a
BLAKE2b-256 b4434ddc1d20ae5b24674a24dc70fb6c0870ad2d0ea1d33c850c76f86531fcd7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9dc67b1bfcd0523a007d56715e297ded11c58145721d9a1445e18da2e3e5091d
MD5 49585a2362a2eebc6aa49af5e84d0bcf
BLAKE2b-256 4edd53cdd09e33f32cb96fbd85bc251f52c164729b4b49f14dcf9b7753b87ffe

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.12.1.9.dev202403091709747362-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e3a4785836aadbbe3667af011a6262aab58fe332c9ec1744470537055520129b
MD5 c0d340b487dca77d3c6ccf107958ce10
BLAKE2b-256 08dc92bc124e2d95fb7a1fe45b006bda917be8d7fc8ae987ad3c0c841b86dcc9

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