Skip to content

Commit 5d2d301

Browse files
committed
fixed new name
1 parent ff63abf commit 5d2d301

File tree

11 files changed

+40
-40
lines changed

11 files changed

+40
-40
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "FactorGraph"
22
uuid = "528f6532-2a0d-4856-bb42-8bcefd89a10f"
33
authors = ["Mirsad Cosovic <mirsad.cosovic@gmail.com>"]
4-
version = "0.1.0"
4+
version = "0.1.1"
55

66
[deps]
77
Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,40 @@
1-
# GaussBP
1+
# FactorGraph
22

33
[![Documentation][documentation-badge]][documentation] ![Build][build-badge]
44

55

66
<a href="https://mcosovic.github.io/FactorGraph.jl/stable/"><img align="left" width="320" src="/docs/src/assets/logo2.svg" /></a>
77

8-
GaussBP is an open-source, easy-to-use simulation tool/solver for researchers and educators provided as a Julia package, with source code released under MIT License. The GaussBP package provides the set of different functions to perform inference over the factor graph in a static or dynamic framework using the linear Gaussian belief propagation (GBP) algorithm. The linear GBP model requires the set of linear equations and provides the minimum mean squared error (MMSE) estimate of the state variables.
8+
FactorGraph is an open-source, easy-to-use simulation tool/solver for researchers and educators provided as a Julia package, with source code released under MIT License. The FactorGraph package provides the set of different functions to perform inference over the factor graph in a static or dynamic framework using the linear Gaussian belief propagation (GBP) algorithm. The linear GBP model requires the set of linear equations and provides the minimum mean squared error (MMSE) estimate of the state variables.
99

1010
We have tested and verified simulation tool using different scenarios to the best of our ability. As a user of this simulation tool, you can help us to improve future versions, we highly appreciate your feedback about any errors, inaccuracies, and bugs. For more information, please visit [documentation][documentation] site.
1111

1212
---
1313

1414
#### Requirement
15-
GaussBP requires Julia 1.6 and higher.
15+
FactorGraph requires Julia 1.6 and higher.
1616

1717
---
1818

1919
#### Installation
20-
To install the GaussBP package, run the following command:
20+
To install the FactorGraph package, run the following command:
2121
```julia-repl
22-
pkg> add GaussBP
22+
pkg> add FactorGraph
2323
```
2424

25-
To use GaussBP package, add the following code to your script, or alternatively run the same command in Julia REPL:
25+
To use FactorGraph package, add the following code to your script, or alternatively run the same command in Julia REPL:
2626
```julia-repl
27-
using GaussBP
27+
using FactorGraph
2828
```
2929
---
3030

3131

3232
#### Quick start
33-
Following examples are intended for a quick introduction to GaussBP package.
33+
Following examples are intended for a quick introduction to FactorGraph package.
3434

3535
- Synchronous message passing schedule using the native GBP algorithm.
3636
```julia-repl
37-
using GaussBP
37+
using FactorGraph
3838
3939
gbp = graphicalModel("data33_14.h5") # initialize the graphical model using HDF5 input
4040
for iteration = 1:200 # the GBP inference
@@ -47,7 +47,7 @@ displayData(gbp) # show results
4747

4848
- Synchronous message passing schedule using the efficient GBP algorithm.
4949
```julia-repl
50-
using GaussBP
50+
using FactorGraph
5151
5252
H = [1.0 0.0 0.0; 1.5 0.0 2.0; 0.0 3.1 4.6] # jacobian matrix
5353
z = [0.5; 0.8; 4.1] # observation vector

docs/src/index.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
GaussBP
1+
FactorGraph
22
=============
33

4-
The GaussBP package provides the set of different functions to perform inference over the factor graph in a static or dynamic framework using the linear Gaussian belief propagation (GBP) algorithm. The linear GBP model requires the set of linear equations and provides the minimum mean squared error (MMSE) estimate of the state variables.
4+
The FactorGraph package provides the set of different functions to perform inference over the factor graph in a static or dynamic framework using the linear Gaussian belief propagation (GBP) algorithm. The linear GBP model requires the set of linear equations and provides the minimum mean squared error (MMSE) estimate of the state variables.
55

66
The software package includes algorithms based on the [synchronous message passing schedule] (@ref synchronous):
77
- [vanilla GBP algorithm] (@ref vanillaGBP);
@@ -16,28 +16,28 @@ The software package also includes a message passing algorithm that allows exact
1616
---
1717

1818
#### Requirement
19-
GaussBP requires Julia 1.6 and higher.
19+
FactorGraph requires Julia 1.6 and higher.
2020

2121
---
2222

2323
#### Installation
24-
To install the GaussBP package, run the following command:
24+
To install the FactorGraph package, run the following command:
2525
```julia-repl
26-
pkg> add GaussBP
26+
pkg> add FactorGraph
2727
```
2828

29-
To use GaussBP package, add the following code to your script, or alternatively run the same command in Julia REPL:
29+
To use FactorGraph package, add the following code to your script, or alternatively run the same command in Julia REPL:
3030
```julia-repl
31-
using GaussBP
31+
using FactorGraph
3232
```
3333
---
3434

3535
#### Quick start
36-
Following examples are intended for a quick introduction to GaussBP package.
36+
Following examples are intended for a quick introduction to FactorGraph package.
3737

3838
- Synchronous message passing schedule using the native GBP algorithm.
3939
```julia-repl
40-
using GaussBP
40+
using FactorGraph
4141
4242
gbp = graphicalModel("data33_14.h5") # initialize the graphical model using HDF5 input
4343
for iteration = 1:200 # the GBP inference
@@ -50,7 +50,7 @@ displayData(gbp) # show results
5050

5151
- Synchronous message passing schedule using the efficient GBP algorithm.
5252
```julia-repl
53-
using GaussBP
53+
using FactorGraph
5454
5555
H = [1.0 0.0 0.0; 1.5 0.0 2.0; 0.0 3.1 4.6] # jacobian matrix
5656
z = [0.5; 0.8; 4.1] # observation vector
@@ -66,7 +66,7 @@ marginal(gbp) # compute marginals
6666

6767
- Synchronous message passing schedule using the GBP and Kahan-Babuska algorithm with the plotting of the marginal mean through iteration.
6868
```julia-repl
69-
using GaussBP
69+
using FactorGraph
7070
using Plots
7171
7272
gbp = graphicalModel("data33_14.h5") # initialize the graphical model
@@ -82,7 +82,7 @@ plot(collect(1:50), x6) # show plot
8282

8383
- Synchronous message passing schedule using the native GBP algorithm in the dynamic framework.
8484
```julia-repl
85-
using GaussBP
85+
using FactorGraph
8686
8787
H = [1.0 0.0 0.0; 1.5 0.0 2.0; 0.0 3.1 4.6] # jacobian matrix
8888
z = [0.5; 0.8; 4.1] # observation vector
@@ -108,7 +108,7 @@ displayData(gbp) # show results
108108

109109
- Synchronous message passing schedule using the native GBP algorithm in the dynamic ageing framework.
110110
```julia-repl
111-
using GaussBP
111+
using FactorGraph
112112
113113
H = [1.0 0.0 0.0; 1.5 0.0 2.0; 0.0 3.1 4.6] # jacobian matrix
114114
z = [0.5; 0.8; 4.1] # observation vector
@@ -137,7 +137,7 @@ displayData(gbp) # show results
137137

138138
- Forward–backward algorithm over the tree factor graph.
139139
```julia-repl
140-
using GaussBP
140+
using FactorGraph
141141
142142
H = [1 0 0 0 0; 6 8 2 0 0; 0 5 0 0 0; # jacobian matrix
143143
0 0 2 0 0; 0 0 3 8 2]

docs/src/man/graphicalmodel.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# [Graphical Model](@id graphicalModel)
22

3-
The GaussBP supports the composite type `GraphicalModel` related with the [synchronous message passing schedule] (@ref synchronous), with three fields:
3+
The FactorGraph supports the composite type `GraphicalModel` related with the [synchronous message passing schedule] (@ref synchronous), with three fields:
44
- `FactorGraph`;
55
- `Inference`;
66
- `SystemModel`.
77

8-
The subtype `FactorGraph` describes the factor graph obtained based on the input data. The GBP inference and marginal values are kept in the subtype `Inference`. The system of the linear equations being solved is preserved in the subtype `SystemModel`. Note that the function `graphicalModel()` returns the main GaussBP composite type `GraphicalModel` with all subtypes.
8+
The subtype `FactorGraph` describes the factor graph obtained based on the input data. The GBP inference and marginal values are kept in the subtype `Inference`. The system of the linear equations being solved is preserved in the subtype `SystemModel`. Note that the function `graphicalModel()` returns the main FactorGraph composite type `GraphicalModel` with all subtypes.
99

1010
In addition, we also provide several functions for factor graph manipulation.
1111

docs/src/man/graphicalmodeltree.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# [Graphical Model Tree](@id graphicalModelTree)
22

3-
The GaussBP supports the composite type `GraphicalModelTree` related with the [forward–backward message passing] (@ref treeGBP), with three fields:
3+
The FactorGraph supports the composite type `GraphicalModelTree` related with the [forward–backward message passing] (@ref treeGBP), with three fields:
44
- `FactorGraphTree`;
55
- `Inference`;
66
- `SystemModel`.

docs/src/man/inference.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# [Inference](@id vanilla)
22

3-
We advise the reader to read the [theoretical background] (@ref theoretical) which provides a detailed description of the inference algorithms. To exchange information over the factor graph, the GaussBP provides three inference approaches:
3+
We advise the reader to read the [theoretical background] (@ref theoretical) which provides a detailed description of the inference algorithms. To exchange information over the factor graph, the FactorGraph provides three inference approaches:
44
- [vanilla GBP algorithm] (@ref vanillaGBP),
55
- [computation-efficient GBP algorithm] (@ref efficientGBP),
66
- [computation-efficient kahan–babuška GBP algorithm] (@ref kahanGBP).
@@ -47,7 +47,7 @@ messageDampFactorVariableKahan(gbp); meanDampFactorVariableKahan(gbp)
4747
---
4848

4949
#### Marginal inference
50-
To compute marginals the GaussBP provides the function:
50+
To compute marginals the FactorGraph provides the function:
5151
```julia-repl
5252
marginal(gbp)
5353
```

docs/src/man/inferencetree.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# [Inference](@id inferenceTree)
22

3-
To exchange information over the tree factor graph, the GaussBP provides forward–backward algorithm. We advise the reader to read the [forward–backward algorithm] (@ref treeGBP) which provides a detailed description of the inference algorithm.
3+
To exchange information over the tree factor graph, the FactorGraph provides forward–backward algorithm. We advise the reader to read the [forward–backward algorithm] (@ref treeGBP) which provides a detailed description of the inference algorithm.
44

55
Each of the inference functions accepts only the composite type `GraphicalModelTree`, i.e., an output variable of the function `gbp = graphicalModelTree()`.
66

@@ -23,7 +23,7 @@ backwardFactorVariable(gbp)
2323
---
2424

2525
#### Marginal inference
26-
To compute marginals the GaussBP provides the function:
26+
To compute marginals the FactorGraph provides the function:
2727
```julia-repl
2828
marginal(gbp)
2929
```

docs/src/man/input.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# [Input Data](@id inputdata)
22

3-
The GaussBP package supports HDF5 and XLSX input files or passing data directly via command-line arguments. The basic input data structure describing a linear system of equations includes the `jacobian` matrix containing coefficients of the equations, while vectors `observation` and `variance` represent measurement values and measurement variances, respectively. The functions `graphicalModel()` and `graphicalModelTree()` accept `jacobian`, `observation` and `variance` variables to form appropriate probabilistic graphical model. Note that, with large-scale systems, we strongly recommend using the HDF5 file data format.
3+
The FactorGraph package supports HDF5 and XLSX input files or passing data directly via command-line arguments. The basic input data structure describing a linear system of equations includes the `jacobian` matrix containing coefficients of the equations, while vectors `observation` and `variance` represent measurement values and measurement variances, respectively. The functions `graphicalModel()` and `graphicalModelTree()` accept `jacobian`, `observation` and `variance` variables to form appropriate probabilistic graphical model. Note that, with large-scale systems, we strongly recommend using the HDF5 file data format.
44

55

66

@@ -41,13 +41,13 @@ The type and structure of the arguments must be:
4141
---
4242

4343
#### Data structure
44-
The GaussBP package uses `jacobian` input data format for all analyses. Jacobian input data contains coefficients of the linear system of the equations. The structure of the `jacobian` variable being loaded from HDF5 or XLSX input files is given below:
44+
The FactorGraph package uses `jacobian` input data format for all analyses. Jacobian input data contains coefficients of the linear system of the equations. The structure of the `jacobian` variable being loaded from HDF5 or XLSX input files is given below:
4545
- column 1: row indices of the corresponding jacobian matrix;
4646
- column 2: column indices of the corresponding jacobian matrix;
4747
- column 3: coefficient values of the corresponding jacobian matrix.
4848
Passing data directly via command-line arguments allows the use of a sparse or full matrix to describe the `jacobian` variable.
4949

50-
The `observation` and `variance` input data are used for all analyses available in the GaussBP package and contains measurement mean and variance values.
50+
The `observation` and `variance` input data are used for all analyses available in the FactorGraph package and contains measurement mean and variance values.
5151

5252
---
5353

docs/src/man/output.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Fields `mean` and `variance` define state variable marginal distributions.
2020

2121
The `Inference` field contains the GBP algorithm results. To describe the outputs, we will use the example shown below.
2222
```julia-repl
23-
using GaussBP
23+
using FactorGraph
2424
2525
# x1 x2 x3
2626
H = [1.0 0.0 0.0; # f1

docs/src/man/outputtree.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Fields `mean` and `variance` define state variable marginal distributions.
2020

2121
The `Inference` field contains the GBP algorithm results. To describe the outputs, we will use the example shown below.
2222
```julia-repl
23-
using GaussBP
23+
using FactorGraph
2424
2525
# x1 x2 x3 x4
2626
H = [1.0 0.0 0.0 0.0; # f1
@@ -95,7 +95,7 @@ julia> [T.fromFactor T.toVariable T.meanFactorVariable T.varianceFactorVariable]
9595
```
9696
The first row defines the message from factor node ``f_3`` to variable node ``x_1``. Zero rows are initialized for messages to be calculated in the next forward and backward steps.
9797

98-
The message passing steps from variable nodes to factor nodes and from factor nodes to variable nodes are then applied recursively until messages have been propagated along every link, and the root node has received messages from all of its neighbours. The GaussBP keeps flag `gbp.graph.forward` to signal that moment. Therefore, a complete forward step can be done using:
98+
The message passing steps from variable nodes to factor nodes and from factor nodes to variable nodes are then applied recursively until messages have been propagated along every link, and the root node has received messages from all of its neighbours. The FactorGraph keeps flag `gbp.graph.forward` to signal that moment. Therefore, a complete forward step can be done using:
9999
```julia-repl
100100
while gbp.graph.forward
101101
forwardVariableFactor(gbp)
@@ -135,7 +135,7 @@ julia> [T.fromFactor T.toVariable T.meanFactorVariable T.varianceFactorVariable]
135135
```
136136
The first two rows are obtained using forward steps. The third row defines the message from factor node ``f_2`` to variable node ``x_1``, the fourth row keeps the message from factor node ``f_2`` to variable node ``x_2``.
137137

138-
Thus, the backward recursion starts when the root node received messages from all of its neighbours. It can therefore send out messages to all of its neighbours. These in turn will then have received messages from all of their neighbours and so can send out messages along the links going away from the root, and so on. In this way, messages are passed outwards from the root all the way to the leaves. The GaussBP keeps flag `gbp.graph.backward` to signal that moment. Therefore, a complete backward step can be done using:
138+
Thus, the backward recursion starts when the root node received messages from all of its neighbours. It can therefore send out messages to all of its neighbours. These in turn will then have received messages from all of their neighbours and so can send out messages along the links going away from the root, and so on. In this way, messages are passed outwards from the root all the way to the leaves. The FactorGraph keeps flag `gbp.graph.backward` to signal that moment. Therefore, a complete backward step can be done using:
139139
```julia-repl
140140
while gbp.graph.backward
141141
backwardVariableFactor(gbp)

0 commit comments

Comments
 (0)