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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

Uploaded CPython 3.8Windows x86-64

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

Uploaded CPython 3.8macOS 11.0+ ARM64

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7246790e3f96896d8b9ad6dec5a5d589f43ac4b26da25b4c9bec5588e56c9dd5
MD5 55ef117a575ea6bcbbb8d0c0fa62c75f
BLAKE2b-256 32189c34117eb44e514992101af48a04d2635b4d64a08161a09004d46ac22fcf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1064a51c37f3bcd487f328b6a78523d4c83d00a799aef04afd9925113e14d7bf
MD5 42fee6b05884c62a1ad8d17ff9cca956
BLAKE2b-256 327be175034e838d79356eb980e51a47aca19bc3838e542cb72ae62185c3c26e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f3794f468bd57d5d59cd3001f79acb8cb726cbb23754eaf85620b724a619a425
MD5 69ea5da14ad7f879271b8a2e62fbd44e
BLAKE2b-256 d8f7ac27685693b7fa7ad9bb1c9af25858823d3398d3e11a601c916dd5a8424e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 564c1902be7df12512974bd4e3ba436d48edf1f16476551f6d8e6e814c53ba8b
MD5 33a94b87c6f4d9869ba3cef416fa422b
BLAKE2b-256 d7099bdee1e478097556af0f8e9ca875491d79b4cb8b33a68e366aa8f31d4c79

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1293772479f8f4212d232059574974e17f23c1742ca3c45f5dded311ae80b4d7
MD5 b90a319d6f857b63dab8ec902f04e418
BLAKE2b-256 fa75e8be41e3a237ae2880607d67977f2587dcda0c8208fde71d841aa554621e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 21ab8900e2c4ded2a8b1b8417d91963f30673e0bba2990b1407aa20236e177bf
MD5 6e4393072dd805dafba8fdba2488ec3f
BLAKE2b-256 70fbb287db9a4f25e978561c39cc0bfa75c87d66bd85a0b600902f95dbe2cf72

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 445e3f6041e77c84bcad80797277dd2080327a537f8b6e61610311d0cd766831
MD5 5406d1630df6b3b866d2ec9c72fe0a98
BLAKE2b-256 365f8aeaad581a0bd6f54c718cefce90ecd5cd78b5c1ec431f957cdb45452690

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d12f01c5ea78e73e9ff801274b01bb207f80ef5ebd03a2b47c7fbf6e69018552
MD5 530d3a1f524627abdeea87bd9464fa95
BLAKE2b-256 251295261da1195876cb72dbf73276ccbb71004b39ea6699d819f1b2d870d220

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3fe0dfd7cc8509c09305718d8031e5e9daab7dd011f2b298e5b907d317ddde2a
MD5 84ce716e0f5e6849c433486a0eeec3a7
BLAKE2b-256 01972ad9246f9228b62520f2ea4726844783cd75ea784a5ba3076c0221d0dd37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 11a8c66e7e3cbe220e12687f04636c3ae2501aa3a8d2da989d52e378af096608
MD5 08e5b2b77f8fd04652ea03a26cc3d042
BLAKE2b-256 77774cd039abbeb3086c18af658ce56ff3890a8f54c83e957010cd38868736eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f2521fa6cc4560ba3b5add11283ecc2a4635780eff7fe55767e44c3e9cd3ad3b
MD5 79a3c192db296bd22732fa143ebd4970
BLAKE2b-256 606014727cddf796f6edb0ef17dacb330471de4256a503b451156a4e0ffb5401

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2d16aa4b08885e848e18f7bbcae9479471205477f1a7d61493bed2562cedaa75
MD5 ed4cc22ae924d209bde77cb2feb9aeb5
BLAKE2b-256 8483f22f970c02b1e0a55ddd3f19145886308266d005390d3482eb49b0f901e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 304e65699cee06f941bb5c9c0f054d039ed9f03ab65babedbc724ca2a8cefec7
MD5 b2444f3c2652a095308d5dda47f31c14
BLAKE2b-256 a37134329f90b906c080f196ae6a11596a2de5327d7fca22d281bdbd052d9deb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b508b5a7fde61498fe0707107d45bbc8e9f1cfafcd4d7eee33cb853ab64d85d1
MD5 70f8bc17574074218da2e4f088830fa7
BLAKE2b-256 c4f5dc7cc1d62901bb8ab91874ab1ae434015be9b6739f7e167c340888289111

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 00630e8f53dc84c14d5958386a2d0e85d30e4a90f1dfa611007036488e79f01a
MD5 9470a138a057efba334458556a557b77
BLAKE2b-256 319930e8f2888aea5d8104f625520b22665bddfdce06321ad513d010f6e093f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 0285213ccbd659212e13d25329ddb35ea214fe393f4c28d75badd852a2a4d08a
MD5 60f331a7c9eb59fe70fcdf221f82eb64
BLAKE2b-256 2fda7330a8041794463e4d53a5edccf473f95939768ebea62d3e3c6ee8349d11

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8035942b9d08440538f5256e1ecea61396e5124db1f0c635fec6307b865969f5
MD5 cebc18647e7c2e66ef5fbe9d2ccafc4b
BLAKE2b-256 9021a956c95da2eccf2c5ea4f052c9306ec8f2ebb2446ab2aa4696c27614cce5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b56a08403f33bef77ad51ba199bd838e0758b99751fcff1aab11ed86e0f6e4d4
MD5 742f3b15a134dab8de9de2455f32b034
BLAKE2b-256 27308fddfe9c76f33eea7e3aec35fbcc13e81446351d24531485f512175f7fa8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5c4e26eafcfad12e9f52e6e4cf4e78fa47d61ca44e6fb60356acf16e53efdc66
MD5 6c4db130d44986dca3f9ea00c5190301
BLAKE2b-256 c23ddc5e607d7fbc15d8264ae65a4dceb321b03d73e46d2c80243814d47add36

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 702ee5860a0c63082fab4a0cd988d71f6d1d8a76cad575ee41d8d40eee3f6081
MD5 7166f05afee64cf52a47ac199f4e9900
BLAKE2b-256 f11fa809ef0f365d286910a2bcb1836a9c295a40f8245679c72ffc44c550b9f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 77babe575a3116387c4fad2b7f144d7ae582f51bbb55e09580a7da0c68391f3c
MD5 aead2f0ed5de743d37882e306f571aab
BLAKE2b-256 e572b3ae3b0bc06ef835a31c625230660499f2ee5ab38d7fbf7cd1002a2d09fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5493c88a42850160738f3a13684393ff5983aa604e8a5f5bd37936642bf0b859
MD5 082126b3cc5be8a8809a40dd2b5f0e1a
BLAKE2b-256 eac5382469e18705f39be277f0eac854f9bfa80e66d33aac49037fba43c4bee5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp38-cp38-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 92afc744ac280b026bd731b89b9a014763d263ec3c2981ab542657ec39335642
MD5 47c3d6c5de0654bf40b22a282258912f
BLAKE2b-256 47727045e296179a3c2dc76f40efdef610b983a23ed64aa86dc22f23dabafa14

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7eddc986df3077df05d74e7717129130a8f329d0c3cf11eb1211a8ef446d7d99
MD5 4d65b88dfa94647b5919bac22d11feea
BLAKE2b-256 ef223b0fbddaa99b601296a4a9a9c2be4e117acdccedb7688e21b3a3d3a81e9e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyAgrum_nightly-1.13.1.dev202405051713370971-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ce50fe3f0e343fa7b9663592f0f0b13c2defedaf63ef108df1f9837f5ec04a83
MD5 66cc066975099fb49a72f2894ac77bb0
BLAKE2b-256 2a6fa3f995fb9d6820df328d2e76e826ae45c3f48ecb1931bc65fef5510f0cef

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