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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404261713370971-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.1.dev202404261713370971-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404261713370971-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.1.dev202404261713370971-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404261713370971-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.1.dev202404261713370971-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404261713370971-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.1.dev202404261713370971-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.1.dev202404261713370971-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.1.dev202404261713370971-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 437659ee23b635a3de06f866fbc56442574d975462ceab664f005f7196fb6066
MD5 db313c45818582a13727089d04b5d582
BLAKE2b-256 6c46ac4a9a0c826051e234f17965954fa223a2f9d7ccecb0d2b6b803854263c8

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 53a70694f0de81e3b47972b5903130c0bfc8678ad3fbc80e49c321daf02439f7
MD5 6a370bfbe8381944afee6987fbfc0f89
BLAKE2b-256 9efca806945d93a09e2d3421be2a4740e94277afb19f56291f981ba949d36e80

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dba521c9bb99c52c100eb36fc6f73bcc78030ec9e51966c1ddd60a51966091fd
MD5 b3c13d1bc8fd5bd7fcd34e0df3c13c88
BLAKE2b-256 99eaa532767766457c8a19e0193f4730afc46c8be8026e22b1f580539e23f06f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4849727438462288a70913f0062a0a37a676fce7d70f1489fcda9532950b663d
MD5 298bc1491a86365d7039242be85832cd
BLAKE2b-256 135f2cf9f6bdd1c4d9e7aa5729a7c552db93eafd4551b83f64be81bd26e0a5c6

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3be2a6e9270bad91d2dcc37189e10db8468fa1c28376647f5337f2674198de26
MD5 c0ae93431e1b34d424e435866643563e
BLAKE2b-256 47c700b8b6b93b1d8311b97b6878322cc996a33f8e09c106027debdca463d3c7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9318c1a787da0917e965e7d13a566b3c6de57e8d1597c432b17532d67de6fa90
MD5 f21689c57fc0fd817e660afdbc97d376
BLAKE2b-256 36f15ccd40f1d80a93cc5605d618e20b9ca75987ba893e1d0fcc2accfa961297

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 578029d32456fc2fd203c3aa00f8b62f05d61d3eb3a21b6b881da027f883c56b
MD5 fc6a3024d48d16c1441dd60cd07fcde0
BLAKE2b-256 5b760f32fe24edd8209cdd28a5aae58a474074f52b3cde7b36e9ca77136182e3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 aded2e8e58756c24425c96d9055b23331a1103c34273bbd7ee32127ea3108494
MD5 dc71a18d19707ec0a8a14b5ab3ca0c7e
BLAKE2b-256 d5bd0bbdeb3f4d9e2875248feee8050ba10fe4a4224321c67654464c8ff118d4

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d224c24caa52fa2021c5ae89ebeff91e4356e5a471a38fa32707a42fe266bfa4
MD5 d1d3809903d46625b222d19bc74d0dce
BLAKE2b-256 cb64bf18c611bfb1b044a284e7c948cd63dedfb876d35164ddacac73402e0e2e

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ebf8068a30b76e798e54c53387ff4dd5af8ee42907b3b9ad72c68a499a6c5113
MD5 bc9fa6fdee27a180021d8443aac47a19
BLAKE2b-256 c123f8fa481b384d439c0cb93faade4ba400da3bdd9375172bdb361d43ff3d7f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 826e35acf79df8c88e5ff76f32641b9b0ad073e12ee80c42e502f211c7c9954d
MD5 bfb9f223db97d9cae1eb9048661f358c
BLAKE2b-256 6fdda0aa7d59b407b208779ec2d34ed022a04b7eaf6ea36d3dfaeb638d2f466d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ba6124d75a77b131db67538a0840755a044a5a5c61bba6b1948f69b0ed018cc
MD5 9c3c034ba34753acfc13ebf29f4a2850
BLAKE2b-256 71c9c2ec853ab594fe2667045b9df39377921a1a59a4823ee72cd2ee4d6669fa

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 df04b71cfb13a4eb646c83bc87e29f48368e6e00efe39e249389d3ef4f5f5dc4
MD5 6e22c6b2560dbc9ab614bba594a04b2c
BLAKE2b-256 00ea0908887662e5f8fa506e5ac1e640762b9e41aebce0f5942530f8c78e7cd9

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0896463133e85674c03c6602764022354a7789a2e7603d1ee6034e4fbd13a5d4
MD5 0f21d70d02c21137c1e3bc616a8e382b
BLAKE2b-256 e8bffa0b1c4a675cef7525752098745599b2cf9f70bf30b8cd52bad1a7d4c0d3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2e2fcfe60057d8e16b37136045c56468e7ea7ce80870762b5e4972145243b2e6
MD5 6d979ba14a63e9609b2e75e2867a2fff
BLAKE2b-256 4c25d304f7641556a8d3c45295e1a7f3f312a62760ed7ab575f1fad796efa86d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4476ab8d35a944ded7d3eccdc9a65bf4546f41c39dc87dfb71dba9d1fac7b2f1
MD5 787594625f92c0cce7fe9ade10610c6f
BLAKE2b-256 d55c20e49d9f12ece26bb4ed8dbbd9881fbb537c4d4c2f35aab2f4ddbe944fdc

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b424a32ded2b0fe0b7347213cb4c819983a25844a947adbd9b5f914f60c173b
MD5 974cff6eaad4170d5c807c023f9edd71
BLAKE2b-256 49322c73f8854fb42bcef8adabb0e20429c875f18368f66d5a94d5bdd7e92aa9

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 78f5c5b19302e6eca4b361afe99979c49d952a44e2e03500f992410e007fe37f
MD5 22e2cb7aefc55a03e1e1ab1d130a5159
BLAKE2b-256 84286e6d9d1b2b769c872d90cf4a0928f7059b48853def39d7eb9c0fab4cef8f

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7945f053aeb6445829be7fb8eb61312c37f3ae414834f5cafddf5a1d7496e63d
MD5 afd30251e414b2c250d42a7d82e89bc8
BLAKE2b-256 5b378dfa246f36d828ba496c42eadafa3bdad4618afa400af0e25de52caae5bf

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1abd68b0cab1c3126ab071b38ec8c604dc9470e663e923451f9db7a6faf3a7a4
MD5 9fe46c2952da56eb0975f2f57e8e2a20
BLAKE2b-256 e497931ed6077154237ef5e78c9c1f96a14ed22a929bd66a7918ee2883f0d789

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 91f74227554ae8f424221e404427ace10ff5bfd2803c5fb715b8869594c82c38
MD5 8bd16caf11ae6f57a58735909214ccd3
BLAKE2b-256 b7ddc37d82b03fe7c9281fe53e13fb32972cf09e11c054c1156c79d83333fac1

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd880235c93f36d1655b90d9ddce1f28643bf287884ed92571ab49d8e76ef589
MD5 75ab89355ceefa096f01a7802f4e9624
BLAKE2b-256 700c12d0824741184133eebbcc2cbe6aa8ec8126985b2635c31c1b83219218fb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4986318b54dc5b7391c5086d0301c27a75f98cb37ba104735b37337bfd61abf8
MD5 d8518cb79c1d9b444c3853fac0fc19eb
BLAKE2b-256 731acce6361f8d442f272e8bb415775ebc0eb0a8cc08c3f592552b3821507e58

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 13e9e94e7e1a6f3c1eade0845e34bfcc09b96128b1a05fd4d13e47e9591bb48d
MD5 578b7350727664883622069b7f94f4d1
BLAKE2b-256 8a4aa4ab645ccca3d66078826a81301559fbfb1be9ff6c46efb6a30858f69229

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202404261713370971-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a0851693e764d4b7f4b58d826d678395e256e3dc0712975e71761ebf2cd6858a
MD5 9a69aa151845b506db96bb8a01415804
BLAKE2b-256 66251c0f73f780261f626522bdd27906f900cbf23472bbd196d15dfa09ef2d3b

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