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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.8Windows x86-64

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 748fcbc16c580b1ead5ad542530661cb3eb01ad5a0ee59ff3a284cd43641ce39
MD5 d22493498e38587c122f8584df698231
BLAKE2b-256 fb20764477f83eb2caf87bfdb46d24b8865cc2b90c38e464964ccbfe81e00049

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8377b879d950835faacbbf947208062f179d4f2340d9a29fce1530e2e75d62af
MD5 d1b12b20f44c2ee200a55ca8d9513231
BLAKE2b-256 c62e727a1b60d3acf2248bb439dc27861869d3ac129c5ada2c43948a85df5a06

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2860da36ca8f900b3520ed18b6cb7d5b569fd74e252cc277840c2c7618954a90
MD5 0987d975e86917d43cae8687cec90d74
BLAKE2b-256 a1c2c543f2ded5056ffb7d66bb28e288793426f0fa86686541962b27f36026e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1b60d7e891d1be4fead17309b1a1078f2f5684b1790cbc418302df1c586e61be
MD5 c12382e8cce789251cd62442992fbdde
BLAKE2b-256 ad7e45b2ce2f945b86cf79c732ccb3945f72daa352d3259b8e3cda09b6b7e73a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1837b322493b35cba7ca9fd8ed694274fc7266c973683947f9fd2fc13d0096cf
MD5 82011c537994c11083e192b2913e02cb
BLAKE2b-256 0d3afbf538157a37d93ef74cfb68a902bad60638cc8fd0fdf147da2964dab407

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 dea85e14e4e030b06cb911d223477d614d400d9882b0a5f1e96ddca2ba804823
MD5 172df3f65ac760ee81deec60d20aa1cc
BLAKE2b-256 c07658f77fc9f37947b3850d1c3759885d0ccbc80868fb12c00b3dfc9e3382e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f3b871d6d6f68fde9959a5fb086143c2c299bc9a077846f779789ae1e72d77be
MD5 a6623256fb1154b84446a35d47288445
BLAKE2b-256 fcc1fca3cf408e8c17c8aa88ec3dfcb50419732623cccbee47c24eabf88a31ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5d0c159cb10ff1a904fc72f0b2c872b7e79fa06c729037f303a3d796fe560018
MD5 c696e2cad113477071131edcf60b4da8
BLAKE2b-256 5e6ac5c6a6038e6d949d56e19353862ce42bd246e5e39cc0873aa250bb062bc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eae4c27673576e2870af15ca25e94e5c1dc270de7b8cb838b2cf8862b13f09c8
MD5 cfa5cd85e190fd01af821eb085e61227
BLAKE2b-256 e6bf77970bc39b52aac2bf2daa3c6e9426cc9486fcefc1d94a646f049ffb296d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 da2c3866fac6de4060f81796ccabfc481d0b326af6c6bb6f9c1d6894318abdb4
MD5 2da8b7b1dde2e42ea8874758da72515f
BLAKE2b-256 69df7a313fa9aa6db33c2325985e0288dd2a966e4c3999c946444ec2309bb966

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 34f8e1bbbab10b5c277cdff9e5516fbad0536caeed5b15522747e53d19f06c46
MD5 8778ef738479c185353b53b41f6f9add
BLAKE2b-256 5cd662f0116f31f84bcbe962096381206f4007a0cb5460bceabec82a99485cc2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9130f074abfe6a641a3da2195fb0a8eb626cb803dc6cfc68499e717513b30183
MD5 3980ecf29c0069fde21ce4169be344dc
BLAKE2b-256 15b4d6e9ef6f5f5ec0cb9b180e03aab7cbcc32ba1835cbf2ac279c97bbc6c5c8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 291c67e410e00b3113b8e385454c2aa4edf54551744c25cb37dc20687fc29b95
MD5 d3f80840e8275c107369a7c04d195b07
BLAKE2b-256 6c65922b9a17dc68757b6a00f46b86ef1e6a9aa4f50f2778d5c3ed9981f13a15

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4e33dfa3bfb97e8093d054eb52b4e444b0b611a642b4497bb1b7c262d29d60ec
MD5 7bcf446f4f385e61489e386fd3ef7939
BLAKE2b-256 46169301bdc0131aa86eab89df579cb97ce353f5f169ba0620005376d92c6c77

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6dca4876314764c189ed207414ae374c3e8efcc87e0d9bcf03e700e87955ba53
MD5 6d0ed69b247840ed48350f1d95df74b4
BLAKE2b-256 15ae023bb5f1a6dd6c6292c154c10be1c89b3171978a02418097bbbfb34b0bcd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 df2ee888cee85abc63471383ef95665e9edfa77bbb93aa20174629c56d07a9c6
MD5 46e62fb2283a9d65a9e0eca140d4a075
BLAKE2b-256 49efbe46d57f25ee3fa573727be1e8c05f01432db45d51da784f3c7486a4a8fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9c6505c5acad7a520fa871c322e8cc0fccc23a45ef65e910a0315738f5450d7
MD5 721cc0f48dfabee64ed8e2d13e7dd625
BLAKE2b-256 b6d70f8dcd13b8cb695b14365de463ebb498d6aa05ce2c87d80ef8d4a959f20f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9de62a87fa0f8427b33ea4aee4bc1fa327484867b98f941a529ce7bd224d277c
MD5 87f008b35ef1ba5030a52387172ff62a
BLAKE2b-256 5457e6b7f2d282d3554da7a23fd70f6105e85f689712c229432a293cef883994

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 114d5f96347a3d74d26e20435d3a1bb7e8761ec69425236c7593bbfe36c1b942
MD5 16d2b59727c8a7b9d8f526cad363ad4b
BLAKE2b-256 43a1f14902d0d8aeeb34fae02035e504dfe12080c50224ccc3798c9fca3886fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6894cab9baa6987793f12d43095a055b0a745f0eb7472d766d4ed5e0c2187e67
MD5 e809a9dd12d00c966d75db70d7cd56e6
BLAKE2b-256 a366168ca55cc6cf01e4c9e673aac66769eeb39f4a85b60036ea9787fe6a0b34

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 97b5eb7376a71f89c30cf29df57d929155d8e15c5687e26a44615df4f538a520
MD5 346fef639179602ce3742c14cddbf197
BLAKE2b-256 ad7a4f6a9dae404e6dca97942589c0b3c7c3ce2d06d70472afc498d1665c6ca1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3f05947c851fa2684184c3b6e8f7561d3e37ad10e4771a3cdd48ff45ebec57f4
MD5 eadc8855980a8ec19c39fd88be78d266
BLAKE2b-256 d84c69523267a63e52758f5d93d86aef74495a740f4ad38c848d067e6699cf49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 32035ac7723cbd6e765784e8e628354fac0d2078b278dc7ed6398668548d0f75
MD5 ab2d991bc3e32371d08e53ede5d9f484
BLAKE2b-256 52e3b8d3c6a70334821958b8d21fd3acdcaa212bf26876fb063f7198c36f2152

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5c7c6c6523bfd34aa9e4eec36001a95c2a965581fc25f632f66a8b9550ced638
MD5 e0244ddd0736847ba2e529dc371043b6
BLAKE2b-256 35af2a6aa3f61b58a886025adc7516e5703b368cf49dfd1576991100b28c29f5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405131715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 766240a05840f8ae4e6456aa87d6c70745e1718ea60a21c25be9fd07a6fce2d4
MD5 d86d51096e034b99bab4e0d60a94feb6
BLAKE2b-256 0057352be580ee58d4b247499d2f054f5bc9640feb5d999bf1925024820d3198

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