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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.dev202403301711457924-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.0.dev202403301711457924-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.dev202403301711457924-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.0.dev202403301711457924-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.dev202403301711457924-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.0.dev202403301711457924-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.dev202403301711457924-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.0.dev202403301711457924-cp38-cp38-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.8Windows x86-64

pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyAgrum_nightly-1.13.0.dev202403301711457924-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.0.dev202403301711457924-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7c396fc43754aa483c703040c30c198072e9ea26ee9ff367c1c6a76fbbd789bb
MD5 1d2ec4b2d6be9479b8abca20d4fd35e6
BLAKE2b-256 2d1e8ca4e78361301514d23200bbaeaccde59fed70c0054b1cb8b474f4ffe959

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e575eed5fec32a19652997dcbc5c768fa16f954208fd66e36533a01f1402c689
MD5 d93b34e79006236d763abf922ee8f655
BLAKE2b-256 a020e74ab989238eb123091a4f5d817c17312ad065b7d1f682d294ff6a9cc041

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 319b29fe5b9820bfeca168591ef1320ae22e07a2baf096199d474ce4329bc170
MD5 e081f4448e721b0d4c9a5b4e84108e94
BLAKE2b-256 774a4b42949356ce0918d1b5a08d2b6137b80c85a10dbffbc459b0ef54c90682

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cc07c56fb9fca02dfaa9138f5f4f5e963bd39467dd41da823c667ffa99bad43e
MD5 0f0284ffc88925f05fa88590b6126021
BLAKE2b-256 f764f0bebc4995c68a2106a1d7e611e693525245ae3fcf72f1f67afc651bd39a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2d128218de9e00c326f304fdfe5ed5929c88dedbc769b3edce68a4934ca6fffc
MD5 4e3ed94bcfcb5e9eba3b4f89d4e690ba
BLAKE2b-256 45ef547c672848aa7f8e8a3453deea1d9b7b3faa048acb9cfc73616e6ac877c0

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 845dce0d89af28bfb9da3ecbeb8bcbbee0fd149eda04e2262c888fad0add04a8
MD5 966a0e12945c1c4a05a3a6c0bd1536b7
BLAKE2b-256 54dff4b93b305d88dc1c686c7e345aac6c98ebfd64b5f88a675198254cb43a81

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cfb64f9934c3a6787376551a41328c56b19e5bff22a9048e9e32a17ddde725d7
MD5 d0c7da1011587b3fb37ca140eb191f54
BLAKE2b-256 62f5d66d9b0a11f6a292711b805f25e47a5b5bd186db53d62f5af9ad0c35a061

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b9c66feb08b6303a5b603912a20130ebdae721a7263c9e2e427256fb15e4d746
MD5 91843098a2507e93f31d26fbe2f18133
BLAKE2b-256 2315658fc81d708e82d1679e4e5d09007293319c1203f121c1a6f88b35de65c7

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9c2bef03522e0f774b6578b28c9d20614623586be54d6cd3f64c8243b3965059
MD5 92472c73db425bcfb3e900930877da88
BLAKE2b-256 03d954134515fc0e5fb0c456211dfc98feda1c880400912a3787241494646fab

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 727e60dc0cd99bb08f1cc44f83d466313d7a70f1fab01d31a1a1675853c7895a
MD5 f025e3db0109354e89f172823d97b979
BLAKE2b-256 608ee8143778b31a1bb9eb27dad567c0f05c2112c15c7a5b9471e3a93a3f1a13

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5d30fea4518bef7d6eb50dc1b7a208e6289523eb8a3908f54d03717ed5e223c3
MD5 cf7c56d123b6166927370424a323ec0f
BLAKE2b-256 ae0345b023ea4456986056de4ecab174c35bed8322d2e93bcd3355997d1d5044

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5b6d19b71c14be886c19e81618d4e4005d4d82ea71ce6db5c55fca24db109c0b
MD5 347b9f1a091dcd3ab5d0a441dc4df1e8
BLAKE2b-256 520edb85a6c88847f4f2c363b0095f84c9e121dbc1fd8818c0b001f3eee795bc

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 17c12f2b0ce4091b312ea038a296ce1596c635f3cd179da4a8108378f899a000
MD5 7e0ad05e78ff6f767c5e379dab29aeb0
BLAKE2b-256 b6b684da28fe829246d44fa29ecb4904c112b1868d9d1302629abc5b70cc9418

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 500205c80e5553b1796d6ecbdc3f10a52ca48ab31dcbb22dfed9b57507ac1bca
MD5 d7ded22d37362265ead65979ba481c04
BLAKE2b-256 f236699f6cf4d452a8f29fbfa3d9ec8515ae940b3b67833256da736fb1a6b45a

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a76469b071083b0b4b98961f5eaeeff87f4a2403eaa5ae6adb2e3e3a0c7cc744
MD5 1a965a8f63d729825a67177b743f897f
BLAKE2b-256 df11886bcc38062fd260639b87ba718a5e202869c4dde650c790e8df8192e880

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e583df1c147730915384e1c1835e7f08cf5fd8688bde737f8090b3df7801c601
MD5 8b881fade2e236c2549e92d4d2db67d7
BLAKE2b-256 dd03d3cd6cc6832a3e4f7510ea47b8a3202907ce2448d252ef311072c4792496

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4d495dae11923c241687d1da72522c2f0826b5995aa87909e70031083fb012f2
MD5 3b62cc2e80404a77636de9e69fe13100
BLAKE2b-256 dbfc6fdd101c54929fd0f208959bccadfb3d2acbe927c59e972042c74105ffac

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3d6ab5ff20d04c00c8420ac68a370d23d6202c8159ebcf5ce8f7c9dca1297a4b
MD5 88febc2ca3ae8d75dc14b55fe5af16c9
BLAKE2b-256 776d58cb4487429f548fc37eb2b9745881c79e0656ccde37a14619c563531da3

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f9dc170635a5ff13a773bf508ef830ccbee1ebe6ab0d624227a4daaf000f3ce6
MD5 996fe99b4257f2aed746e187f2ed5067
BLAKE2b-256 aa22a7d33e1da83efa95a70d102c949d520397ba43c6e8bf4f527a3ad31f0cf4

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9f689c0ecd64b6ba7d3457df16a0dc78bebf6f2d1dbdc2719ce030d70112051c
MD5 b0eb2a4edf9e668e2144c8d741f82897
BLAKE2b-256 d4eefb520786ecd149d263ac4fd8530539bca97a25f541cdeec1ed738f0d6faf

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 815e50422da1e2e6877e7366f646156dc2926ce2fb639cae2bac6549448dc3be
MD5 dc67ad5cee3f0693af45c09471ab8dac
BLAKE2b-256 48d6c27c20509e14377b753a6b9edb634aff09718498b51063f9f6dfa03da0da

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9a6170e45a01a3efb4d68a6e7689ad6a04a02efde76482b5696cb5efc79d107b
MD5 999512c89f084a17e0b4a3b72dcb31c1
BLAKE2b-256 38ac07d96417fb553b3a2cfddbf1e7a470e0d7ee138562507fc57f6e7310cf02

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fabf28ddd18093a67e57ac6478fe89d8ff7ff328bbecafe8cde96dd488942fbc
MD5 d79bd751072cd5467ce049605e4ddf94
BLAKE2b-256 d072c215b0445c67794e6fa2371ce11e9943fb34d9495cd5fa653e065ff2fc4c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ebe4a97da62e5bf066846e9cd07b01e0e8510ad882e0befe9ce4f2bc5e77d8f
MD5 41c3f1eb376c177333c659daf4bff2f6
BLAKE2b-256 73490351f66c6f428e6e8b34c63e0fa7287ffc02bfbd3ee47bf26bea2d8232fb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.0.dev202403301711457924-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2276d7f57039d23b07efc50fca850636ad3233ceec4acd4d9c0abbc7350ca01a
MD5 a6b2ed4e30d023c0744cba2f26af3c87
BLAKE2b-256 e81af0bb9f93cad205040375dab6f752081b72a41fd23e9756dcbc7eb84c24eb

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