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

Uploaded CPython 3.12Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-macosx_10_9_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e8a40e31d891a00ed812825c52f9f7c037e9c939da996b2f8f3570f9ab1a7532
MD5 447a6a480aea0eade47b1b00fb54a53d
BLAKE2b-256 b2b1bf05e5f9e8f5b1d88f62d1458b577fffb2f72d60f4417b412337a2c75ccc

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ccc2e5171526cd2d8900054ed6a5a069753d208d31c111d56ff6bf940b955718
MD5 a4213f789133112af5bdda7138787f7d
BLAKE2b-256 567e48a34d068bdf57920bf3c4a2f64e2b880ac3740f72fee0790cf6fb9975eb

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4f3789a8e78ac7d0096c83a2429299ed85d1848d4c933f307a74fcc760259f27
MD5 3c70e41913899cf388fa0aeec49f019c
BLAKE2b-256 d84b59cac6869f7c36d799080624c27e489fc4b92c7a204da22b5532b3b697a5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 291170526b813a1058fc2ee75f5f2b4af3d7354ee40e3bb6fd4e398e4a7cf435
MD5 4e42064f7c01eedaf3e8fac97767e1bf
BLAKE2b-256 89d6879cf26d2ed0e2ed052a6d873fe651f3f21a248b3aa2402900826e973fc5

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bfb30358bc8d3043109ee4f493af03c8f7f4ee813d09be0507e17717814fb8d9
MD5 6961f0c8f3400ab4b04bfd4ab5d70851
BLAKE2b-256 f2c94a0c227a64bb8ff2d6f7c43a78401d3671be8af3020a0b65d6abe758be23

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b5c2fffa3df0cf937f6a109f16ce1e8bf6351c740bae0154c66163a3b7fad978
MD5 de0fb3813bd9de02a43cdaa8dbafce06
BLAKE2b-256 3626ee0ffd72642acbd10474947106c59c5dccb79e42afbaea5238339463b456

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2d8cf6d81b109de3971e04c258dbb3742e90d89ef3ead4e7dee517e1a0fa3075
MD5 a82df425723165f684e08126c839dfcb
BLAKE2b-256 1412e2b6aa496ec3a050ff6c69beb78ab69ae8ef3c766dc74271b37a0f155e6b

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6f51c3f4e3dab388330dd25a12e2253cae75d08a35d186f4ae5a1bba41333acc
MD5 9c6548fbfe2aa3b017d471f0c5a80b60
BLAKE2b-256 d9a69521070eb2bafd9b838631fa1408996320cdc448bcb09d8ed90af51f2562

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00aa8cc241e5734ae69d2215418038b807e7470a3d24a4c568fae56c26ba0851
MD5 6019c25bf09f43ab2b8ab69d801ed43f
BLAKE2b-256 349bfac9d07a4d2b7a5b6d0fd5b4a7f5420510da8e23c9724c029982a9654b6c

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5e0e11c89d86662671906c8729b459436665fc7a2cedb97fa7748077314316f8
MD5 127c09f279a89560becbd5897b2da053
BLAKE2b-256 ad711ed24456a4895295e94ef9a61d9a0b556b42af6bc28fce794f5a65759039

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a725acafe2261403c45eac91ed780fd6dd2bcc4d18d644e415f3945f07e223dd
MD5 c0331ca268917bf6b7160a9950941e5d
BLAKE2b-256 9b96e2d3f8a1acd4602b3a533e78a48ef47298967d77949425659c0c5b4013a6

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f4b68744dd3c251727af27193515d08b790f58fda6760ba4141f8d7fff299944
MD5 0827d513233f13629cfb3826f91f0297
BLAKE2b-256 f9d68d086dd195ff79cd2f48ff31aae48f3da6b4b80dca4aa8c983d79055a875

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a40e0ad6cd820c176226f35a234036bf5b637d587993fca96c2f4c7bb2a4ea12
MD5 e2cc81dd9f6eaf1b7f1a3f02d5c87e15
BLAKE2b-256 0f269c3df768113068f2c97df0a980099910abeed5fd1d48d8c33fbabca618ff

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d9f04f43b664b543464417cbd216b7b0a3111e59a8d8ab4d4792beb7d86705e4
MD5 e11840e8952ae8523c66d20e17d17acd
BLAKE2b-256 3195339ae28854a7c431c0252200eb4c518ebdfa474c6379e71f6b8971b30686

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0752b59c5a141aadaef27eb3bdd352fd39fa77e31aed10f978a44f3b043007bf
MD5 bc4c29042dfa945d3f31b4f6f5f617a4
BLAKE2b-256 c8de6746d7ae03ba52d088e176031f35ea942ede6a6058f2bd6452d4637f81bf

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 76d3c814d8ab424d7e315dba28e99532f99bb213f4517a0f5060896d6b5e17a7
MD5 00a2ccc998ec6dee12741cb47e69e487
BLAKE2b-256 9fc816b449eadbbb5b5c0311bd408f8c4b4ae5d279134c3e38e9a9a307657a52

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 82ad6ca46131d4291154f68af18ed9552a369e00a9d1484ba0f03e2dad875079
MD5 e81206785ddc7f4a0ddd4bf3ffb2ac91
BLAKE2b-256 d8195fe4529ad2967a133ccb9ae8e86b00bfa3d91e620d2bf0259c7466abe72d

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d8482e3f6d0dd89171b9756484bea0f1f6d4cedab4b6ba043281f2b70c41bc11
MD5 0cb25201973a21af4a00ed9170d5e5cb
BLAKE2b-256 1f8a4c638aac9e780a1464830e8339efeb0553fc771ee5ecd8cdb285582197d6

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8caa780a07be43f5819017c2322f2e4f087f6def73ce65514bda46eae837e714
MD5 fdd6b5b6180fa01cb6706df5d11d2811
BLAKE2b-256 b8dc53a96e5952787646f18f69e78c7b93adb8dd4f4f4149abe7a779d55a1df8

See more details on using hashes here.

File details

Details for the file pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyAgrum_nightly-1.15.1.9.dev202409161723794729-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 49f81b957d21f7d39d6651a893b8a4b39bc9a910996e6926dc78010ec7d19537
MD5 c46e216bf6ffba9f6ab2bc03014a4fa3
BLAKE2b-256 d9232bb478df68b18a4ad696811d9a5907908685e45741d1e332fdce3a4a8b9b

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