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

Uploaded CPython 3.13Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502231739452835-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.dev202502231739452835-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.dev202502231739452835-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502231739452835-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.dev202502231739452835-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.dev202502231739452835-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502231739452835-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.dev202502231739452835-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.dev202502231739452835-cp310-cp310-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.17.2.9.dev202502231739452835-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.dev202502231739452835-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.dev202502231739452835-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9299b5889618fc60b0784573506f67e9177d7d503bbebf49bbaf785fd332d6fd
MD5 6deb09bd065e71ce8b4446bde561bb8a
BLAKE2b-256 e56b412db6093bb610344de3c3be637caf3436faf6faacd326eadd00d7401384

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp313-cp313-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 85dcdb7f5bc577eee754c9664abefe01211b0295be70da53a2380461d64735a4
MD5 9c822feb04491d9b649615ae584fbba3
BLAKE2b-256 e6549bf23cd20326181548d23efa04d355f3f55be85944645011a8862162790d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp313-cp313-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 26949674613b41216a59ba7ab26f65e3afbf2b3b8cc14a28a75efd91f762be84
MD5 e13a1e0378ba335eea769e0fc3df2217
BLAKE2b-256 38f36020abe121107559cbdabadb1360059d08c3f98c80cb1fbdb2479606a925

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 246679a8715f6b8f390ef5179c4304b0025a7c380cde960a36ac5a52e79d4d63
MD5 5a7970df5c5159525a46b928ea622c0c
BLAKE2b-256 e0c9422297b30bde045412cc0acfb41fe6edf45c91d7656396c020180800a654

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b9bb2fc7b9b3d3a1921b9a6050fc6d593bcea6d2a3a97effcf397b200cb10848
MD5 4bdcb4028e5177f5619b32bab25c8576
BLAKE2b-256 0d1e0a9d7d3b7cc0bf53aa2386c4351811ef27c02a29d9d087bb94e9bb30f93c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 67da4f951b6bf3efba0480eadd56a3b99c948cb5bbf22ffcaaa835c0e64c6128
MD5 3d36289a7a4d7042aefd29057fb3dd43
BLAKE2b-256 377de82d1dd5d3270ceb5aed247f35350c4808af7cc7ba3d0bcd385225e6e853

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b15771cfb1cb68608b2bf3d40b27041e18ee839ec4c862df657e50054e361f4
MD5 957e9d67167a09d17e630254a3e661e6
BLAKE2b-256 8da9d9dbdcee3c1bb525961b9c6b662e5c1fcce11ab9f56c8d0364d5caa4c094

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5e13d6a6b56a37a07ece44a5fe6824fb18f964dfbda2f597e2b0495d65ea1fc8
MD5 7850cd3453c90c3cffa05ded787ef67c
BLAKE2b-256 fa43f4b6a4462f20666ad1f4e743c66901888db3aed17caa906f1de10ec1690d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc7d59d09b789a54a36b424ff29c3627c95efcf339bc6f24efc1e473d6b6be4a
MD5 5ab803b63b61572ad094ca29ecc04ade
BLAKE2b-256 bb88feab343e33cb1b3c1bc207e7f3a0cf6d9ce1155b299f36522f526412c7eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4f2abdbea11f3ab892918965ed38b0b4a9721e449a20ff50125232a19e6b15db
MD5 654f6c4842dcef53887c39d4c858dbcc
BLAKE2b-256 33ce25900747e8724bef9b3997c3682bc78648cf858ee2bc8d4b983d898b63c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5ebe1d56017b58afe8da9946f24b512e142ea3c641f2634c474ac48c29c0bdbf
MD5 adb72d11d6966b613ec2523442c5ec56
BLAKE2b-256 f14fde7c18a177d0e85ee4e77a29569a1257c1e7e246882205ca0fed0428deff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6903b3a5ede5e3f7c28d89982d292f7ba25fe0ad361048db709ef4ca7a448b5b
MD5 ac22f066b73c99a828e61133aa1e14a1
BLAKE2b-256 077342ecac25de962c48d12f8a6340283d1c5db2054f9a3d5d451ccf72f46671

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 948dcab76be3efd19c9b221a0ca7fdaf1ce2ac4084139aca486fc79075417bfe
MD5 8ac4c4a11142f5ed5851ea49ec78bafa
BLAKE2b-256 62b9bef888bcff66926628e6c23eb570deccc4fc80c0267f5d6f7713f996695c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e346f044419cec52abb1bf3cf1b3b5871eca5f2eedc9b8e8596b5fe64a3360c3
MD5 0441287e90a4fab2bb8deef532b04006
BLAKE2b-256 782a73a93cf7c19b0c9f5f9d38ed5daa83025d15884c7ab72b94610c8c423a97

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d259d61ef3c0a36da60c21d0d0bf56c072f64ecb220c8c5cb6d8d3caff8413ca
MD5 9b026b711e87fb68268d34b0ec045aed
BLAKE2b-256 874e844202d39cd93b0356b90c2fd393526a154e58957039beb14487cf4fa2f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d1c669fbe6135836d98f8e9e8f20180c3722c8863e15a1cd696592123f8b31ca
MD5 cd568d742103a4e86046ac447c18c3a2
BLAKE2b-256 97cfc589deeb7efff14231e15c3314e2336f100a839c0d8d514eddb549060e35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fa378a01f1c0df57dec2051c64e363600719a70f90fc68d12b19bdfda59815de
MD5 ea4f32dd3bf70941e0b9deecca35fab1
BLAKE2b-256 e468e18da4171e79c375ef1368a4e3d296bf17668963a2d6e782599a556c69d4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4841955b9b304c779bf73a8330c2c1be5f4ff3d0df03557053f580b84aa8acc3
MD5 c79c641721e1431ec886b6dd0b8a4d85
BLAKE2b-256 827944ea66451aa2c40b38cbb92d3cd993bcb4cfb27060d6c4d8a5edc635d57f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 34369cd8e4a9e96e5108ad6779866cf365a8ef9e334abd6e2acf5a9b1f76fac4
MD5 1d93b328f5156060043f9c89110f6818
BLAKE2b-256 d38c37dcc4e1176379954208c57ae6db2db432b4d3d4865433557e99c78f3e27

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.17.2.9.dev202502231739452835-cp310-cp310-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e742024eab5af794d0a8833137f3cdca8f496e232c518bf7142566d0de54c5ab
MD5 a82cb2e661d27738ded0b116e0df2877
BLAKE2b-256 920dfca22489490d05b00726d380a52e62b244f7b91283446e6d1fb00446f56b

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