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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.8Windows x86-64

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8ec01d44895822f6a98628f629403406aa31585f8b896ede6b6b98e79e37396f
MD5 5aad1de5dea70add294166f4952ef90c
BLAKE2b-256 54eba12d64041b54b6f32fa21e80c4b185e62fb95b29566602482ea481d4f8fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3a8cd729868da46d66c42c24bff4ea621a1180caf632ebaafe840e11fb1c0067
MD5 e55316ad4a85ec4e167f0b4e5d0d0a24
BLAKE2b-256 b2969f6de620103b61a58fd425de35c008d7b687f1e2fa9ed1237eefe1295e4a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1d0f394eca5e632b7dc010ddbb2501ab51e6ffa68d67412f3ee47039f778f84f
MD5 2f6e3fc12a2f07e43928c8bbded195d8
BLAKE2b-256 ef73adfab105cf285eb4f95c901b07866076e7c8c4e87fcb85b4484595296ef5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4bc5c0661b19171623afa851a4f1ef298b85f53c93f49d85dd69252db15660e5
MD5 06c7da86707e82d797344f41cb8dcd3a
BLAKE2b-256 2652177da0069478cd963b8733318d8e4a4cb09878d8a9bf4ef19be466e14335

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ef7e9c36e088482950996a1e9a7a280a167f3d6e2eff8014423d04d55964c722
MD5 c1a682cecb03dcb66ef53d48ca5463b6
BLAKE2b-256 47b98b3c0e25dda116a19db67d93f76de58ea024613236843df0246eb450ed2a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 dec13dc41830fabe2d48189674fd0b6f6bcbfa9491d2f907664f92feab402324
MD5 67251cfb8731384a6fcbfc3c151c633a
BLAKE2b-256 00fdba900c7a9600e40ae609b448f9dae49bc8ed5bf402872da637bcdfc0937b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b3a887f6194e755f34bb88ec9f37867c19f271ec6bd9f1b7b71aef33ee202a24
MD5 fc83cefdd26225a5598a4555ebf63a79
BLAKE2b-256 23bc6daed441e3ac964146e6e1c7c0a480244d5aaedec1d2ccc7d1a5c90cab98

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b70ed4cd0859a195650fb9920086fb01c2078ed9a1e24f3626ac5df04805fed2
MD5 f52bfcf9dcf6558cf81277f0f7822867
BLAKE2b-256 fbca9957d6c27b213f8f93ae2502df912cd1cf6b4c7a6ca4cf019fb37f247968

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e529eedbc5ce02063639928e209bb4e050b6a58533907e241f855e4cbb7b1370
MD5 0e3fb22b1f47d59cd88688e3b59d8875
BLAKE2b-256 777183b7f0e64dcc73362809d7fa182d721411ca31c5c47bf5235b4f0cc9ce13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 286d1e688cdf30615db7b2edf6107e3fa69e351ba82cda5eda2ae434302b4c8b
MD5 47c67b3290bab5d83f845f5e45aa6090
BLAKE2b-256 1389d171ec506844fcd26d8c7b937b0269a8ac74f153ec3ccc6238f753707641

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 fddc8013a1ccc89ee7a89de98fd59045ba9451c6a992b22aa25602256c1a0019
MD5 c7359b07ecf086cf7f85c00df00671d6
BLAKE2b-256 3ea456322548d1155180a668a5d434315e0c03584e2f4a761d5ee51855d9764d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 723aa64b5e55f9a51ea1c637a1b4f691c8e18509eb47d3335e808d9f9380fc9c
MD5 6f80bbf91ed861b0e58f6c9ae63ad322
BLAKE2b-256 36944264803f73c4bedb26a6f67c58158a91b99ed47dfa78f75cc51a9a6a78ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d8127792295538dc68c0d99ec489c88bc1f93e4e58cd8c738a137bff7230112e
MD5 167effa0633f1e953c56a734d5335eb5
BLAKE2b-256 5eb365f967a7bf202339d1cba89154e395e64ca762a2e9b2a927fd63b0f4547e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7decc35252c6b66b29d74ce8f4eeb614bdde38aa4e425e2f3ef515217bbb4e0d
MD5 e1379300138aa7dcd8660db963cde1ba
BLAKE2b-256 8e0d1c416acb3a14d3e0755503387baabeb9de7f6896cafb0a67a7a0b332c9de

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 595e4eb43673fec2ad9484a036c09c3d658c3c81eede2c1f33e3c9eecdfd217b
MD5 eef5e4f2648a7b78bfecbbe67671fd02
BLAKE2b-256 120669cc98ea2992d55f3322920073023b4520ce10159692dd8c82b8e2fd99d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e4ca6c00ee94513de2c9f2c3c0775498ab7bfb22ca3100105035794c74d07245
MD5 5f3345d5b8a89726dead6fb170532477
BLAKE2b-256 e580d46cd9b3d4fb9731d92dd7e1d9c079b633b3223b887a26ddb228eba8224e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 adc9dc6c352de3f3305120451ddf9d6f764def52d3baf690b84ba2ca245c412a
MD5 a7186569eba49084584d930b5129769a
BLAKE2b-256 2cd3643ece591aee552ca30c09bbbfcae4291ec870ee924b7b454997c6851561

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 59c836ab0615d060ebd690113b1d9c0e012389e2aacf9946a783f1f13c29365d
MD5 5561814641bc00f16373071b2b3726c4
BLAKE2b-256 f711e662c25a04189a5148a6d74f2205fcc0845efa307a49731dd09f1c0ea01f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 163dac5628f305c7cd878dbf25cc57164ca1482b4aaea3569b67ca9c7fa78c25
MD5 0dc626d4273e668cfd965dc30b899b92
BLAKE2b-256 bb5b0aee9879dc7a9cd2bc6d3ec0a84477b6649e80fc666dad735aa05655c638

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9ad91f8005500870654bc62ad1c9de2e6018f048d0d643bb64f26b3f92bf1200
MD5 7df184452a0048c4a7f30fb3b6d4437d
BLAKE2b-256 04c676fb5a2e8c26cf85c9574a420316e8aed45e3e457bd07bab1be90129d43a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 01e34a03ff0cf87a774114d26b000159d31dcfd304abb38d03a484f7c7f9637c
MD5 dfaeef9d07d4e38e1e5c22c04cbc5419
BLAKE2b-256 b6671f8a7f0162f9556c9854a3ab0f6eb0252d39295f91566ff23770aa2ba1ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ac677c7882ea703fc152345c31d63e2ee33cc0872c501c59b565676d0979ddf1
MD5 9eff824e7383de0c5498dd46df2e672b
BLAKE2b-256 6d66749b06ba4f2f047874980cefd4eb571b7e73abee863f735dbb62a9a9027e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1300486dd9ea1dce0729be4deaa5d76a90c591dfe14fdcc9d9117e4d9a7348c6
MD5 cee9dcbd498d3eb8cb9151fd7addb208
BLAKE2b-256 e7d4ebc0c85722167dc1c36047396fbfe669197f130b4c2a866bbeab09bf2d94

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1bf43508d2366991bba584bc0fa3d22c0577e8db25ba9c50bc5afaebf9b8569c
MD5 f0326599210d96e58d32d70d18aeca00
BLAKE2b-256 20261fa5f7ffebc26dcaffd8ccff206a3d887dca581457fd69cd53701bd49272

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.2.9.dev202405191715182293-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0c34b0d57e69485deacff18152213ecdf8d530fbccfb92d2188ff3c11fcef822
MD5 b7edc3a90894395fe721c5156ef4f964
BLAKE2b-256 aaaae718d514996d685da0aa06e1ae5610e9f88a8aacddfd3969e23dfceef178

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