Releases: mcosovic/FactorGraph.jl
Releases · mcosovic/FactorGraph.jl
Release list
Release v0.2.5
Changed
- Added inference residual views to
graphFigurefor drawing current message
residual magnitudes and reporting residual values in edge tooltips. - Added Gaussian marginal variance views to
graphFigurefor shading variable
nodes by marginal covariance. - Added marginal value tooltip sections to inference-aware
graphFigureoutput
for Gaussian sum-product and discrete sum-product inference. - Documented inference-aware
graphFigureandsaveGraphFigureoverloads for
residual and variance visualization. - Added graph visualization documentation examples for inference diagnostics.
Fixed
- Fixed Gaussian min-sum frozen variable and edge message updates so frozen
outgoing quadratic messages remain unchanged until explicitly unfrozen. - Fixed inference-aware discrete factor updates so invalid initializing unary
updates are rejected before mutating the graph.
Tests
- Added numerical correctness coverage for Gaussian schedules, damping,
freeze/unfreeze message preservation, tree exactness and selected
step-by-step sweeps, root refreshes, warm-start updates, dynamic stale-state
rejection, residual partial updates, WLS agreement for correlated vector
models, and discrete brute-force references.
Release v0.2.4
Changed
- Removed the redundant factor node
IDline fromgraphFiguretooltips. - Replaced graph figure view
depthwithhops, using true bipartite graph
hop expansion from selected variables and factors. - Replaced separate unary and multi-factor graph spacing layout options with
scalar or per-gaprowSpacingandcolumnSpacingvalues. - Expanded scalar Gaussian factor covariances to isotropic covariance matrices
matching the factor mean dimension. - Added
messages!(...; schedule = :residual, updateFraction/updateCount)as
the one-step counterpart to residual-scheduledgbp!.
Fixed
- Fixed residual-scheduled
messages!for discrete min-sum inference.
Documentation
- Added a graph visualization example page covering figure layout, labels,
focused views, styles, highlights, and tree views. - Clarified when Gaussian and discrete flooding and residual schedule objects
are needed instead of theschedulekeyword. - Tightened Gaussian graph docstrings for labels, component lookup, factor
updates, and stale inference object guidance. - Tightened package docstrings for discrete graph construction, residual
schedules, inference updates, WLS helpers, and graph visualization.
Tests
- Added residual scheduling coverage for stale schedules, discrete min-sum tree
overloads, and zero/negative iteration handling.
Release v0.2.3
Added
- Added optional SVG hover tooltips to
graphFigureoutput for variables,
factors, and edges, with configurable summary and full detail levels. - Added depth-limited graph figure views for drawing selected variables and
factors with nearby factors and variables. - Documented graph figure tooltip controls in the Gaussian and discrete factor
graph guides.
Changed
- Embedded generated graph SVGs with
objectso SVG hover tooltips remain
available in generated documentation pages.
Release v0.2.2
Fixed
- Fixed generated SVG graph figures so Documenter includes them in deployed HTML
documentation.
Release v0.2.1
Added
- Added
graphFigureandsaveGraphFigurefor SVG factor
graph visualization.
Changed
- Changed automatically assigned graph labels to compact forms such as
x1and
f1instead ofx_1andf_1. - Renamed
isDampedEdgetoareDampedEdgesto reflect that the selector can
match one or more edges.
Documentation
- Added rendered factor graph figures to the examples.
- Added quick graph drawing sections to the Gaussian and discrete factor graph
guides. - Documented damping selector rules for
areDampedEdges,dampEdges!, and
undampEdges!.
Release v0.2.0
Release notes
This release is a major reorganization and expansion of FactorGraph.jl compared with v0.1.0.
The package now has a clearer internal structure, expanded Gaussian and discrete factor graph support, improved inference workflows, new scheduling utilities, broader validation and diagnostics, and substantially improved documentation and tests.
Highlights
- Reorganized the package source into dedicated graph, inference, schedule, and utility components.
- Expanded Gaussian factor graph support for scalar and vector variables, linear Gaussian factors, and Gaussian belief propagation in moment, canonical, and min-sum form.
- Added discrete finite-state factor graph construction and inference utilities.
- Added iterative sum-product and min-sum belief propagation for discrete models.
- Added tree-oriented factor graph views and exact forward-backward inference on tree-structured graphs.
- Added flooding, sequential, and residual message scheduling utilities.
- Added dynamic graph update support with stale-inference checks.
- Expanded weighted least-squares validation, diagnostics, and printing helpers.
- Reworked and expanded the documentation, including Gaussian models, discrete models, schedules, validation, examples, and API references.
- Expanded the test suite across graph construction, inference, schedules, tree inference, validation, diagnostics, and printing.
Breaking changes
- The internal package layout has been substantially reorganized.
- Some public APIs, docstrings, error messages, and helper functions were renamed, moved, or aligned for consistency.
- Code written directly against internal files or undocumented helpers from v0.1.0 may need updates.
Release v0.1.6
Release v0.1.5
Release v0.1.4
Remove HDF5 and XLSX support for the input files.
Fixed various errors.