Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release v0.35.3-rc1 #1818

Merged
merged 10 commits into from
Jan 23, 2024
3 changes: 2 additions & 1 deletion NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ The list below highlights breaking changes according to normal semver workflow -
- Restore `DifferentialEquation.jl` factor `DERelative` functionality and tests that were suppressed in a previous upgrade (#1774, #1777).
- Restore previously suppressed tests (#1781, #1721, #1780)
- Improve DERelative factor on-manifold operations (#1775, #1802, #1803).
- Fixed a typo via deprecation, `solveFactorParametric` replaces `solveFactorParameteric`.

# Changes in v0.34

Expand Down Expand Up @@ -110,7 +111,7 @@ The list below highlights breaking changes according to normal semver workflow -
- Upstream `calcHelix_T` canonical generator utility from RoME.jl.
- Deserialization of factors with DFG needs new API and change of solverData and CCW type in factor.
- Deprecate use of `getParametricMeasurement` and use `getMeasurementParametric` instead, and add `<:AbstractManifold` to API.
- Deprecate use of `solveBinaryFactorParameteric`, instead use `solveFactorParameteric`.
- Deprecate use of `solveBinaryFactorParameteric`, instead use `solveFactorParametric`.
- Deprecating `approxConvBinary`, use `approxConvBelief` instead.
- Removing obsolete `approxConvCircular`, use `approxConvBelief` instead.
- `getSample` should return a single sample and no longer takes the N(number of samples) parameter.
Expand Down
9 changes: 5 additions & 4 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name = "IncrementalInference"
uuid = "904591bb-b899-562f-9e6f-b8df64c7d480"
keywords = ["MM-iSAMv2", "Bayes tree", "junction tree", "Bayes network", "variable elimination", "graphical models", "SLAM", "inference", "sum-product", "belief-propagation"]
desc = "Implements the Multimodal-iSAMv2 algorithm."
version = "0.35.2"
version = "0.35.3"

[deps]
ApproxManifoldProducts = "9bbbb610-88a1-53cd-9763-118ce10c1f89"
Expand Down Expand Up @@ -78,8 +78,9 @@ FiniteDifferences = "0.12"
FunctionalStateMachine = "0.2.9"
JSON3 = "1"
KernelDensityEstimate = "0.5.6"
LinearAlgebra = "1.10"
ManifoldDiff = "0.3"
Manifolds = "0.9"
Manifolds = "0.9.12"
ManifoldsBase = "0.15"
Manopt = "0.4.40"
MetaGraphs = "0.7"
Expand All @@ -91,12 +92,12 @@ RecursiveArrayTools = "2.31.1, 3"
Reexport = "1"
SparseDiffTools = "2"
StaticArrays = "1"
Statistics = "1"
Statistics = "1.10"
StatsBase = "0.32, 0.33, 0.34"
StructTypes = "1"
TensorCast = "0.3.3, 0.4"
TimeZones = "1.3.1"
julia = "1.9"
julia = "1.10"

[extras]
AMD = "14f7f29c-3bd6-536c-9a0b-7339e30b5a3e"
Expand Down
1 change: 1 addition & 0 deletions src/Deprecated.jl
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ end
## Deprecate code below before v0.37
##==============================================================================

@deprecate solveFactorParameteric(w...;kw...) solveFactorParametric(w...;kw...)

##==============================================================================
## Deprecate code below before v0.36
Expand Down
2 changes: 1 addition & 1 deletion src/ExportAPI.jl
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@ export approxDeconvBelief
export cont2disc
export rebaseFactorVariable!
export accumulateFactorMeans
export solveFactorParameteric
export solveFactorParametric

export repeatCSMStep!
export attachCSM!
Expand Down
6 changes: 2 additions & 4 deletions src/parametric/services/ConsolidateParametricRelatives.jl
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,9 @@ DevNotes
- TODO ensure type stability, likely returning types `Any` at this time.
- TODO MeanMaxPPE currently stored as coordinates, complicating fast calculation.

Related:

[`getMeasurementParametric`](@ref), [`approxConv`](@ref), [`MutablePose2Pose2Gaussian`](@ref)
Related: [`getMeasurementParametric`](@ref), [`approxConvBelief`](@ref), [`MutablePose2Pose2Gaussian`](@ref)
"""
function solveFactorParameteric(
function solveFactorParametric(
dfg::AbstractDFG,
fct::DFGFactor,
# currval::P1,
Expand Down
6 changes: 5 additions & 1 deletion src/parametric/services/ParametricManopt.jl
Original file line number Diff line number Diff line change
Expand Up @@ -562,7 +562,11 @@ function autoinitParametric!(
end


##
"""
$SIGNATURES

Batch parametric graph solve using Riemannian Levenberg Marquardt.
"""
solveGraphParametric(args...; kwargs...) = solve_RLM(args...; kwargs...)

function DFG.solveGraphParametric!(
Expand Down
4 changes: 2 additions & 2 deletions src/parametric/services/ParametricUtils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Notes
- Originally written just for Lie Groups to support legacy, but future needs may well alter the design.
- Original design driven by parametric solve and dead reckon tethering.

See also: [`accumulateFactorMeans`](@ref), [`solveFactorParameteric`](@ref)
See also: [`accumulateFactorMeans`](@ref), [`solveFactorParametric`](@ref)
"""
function getMeasurementParametric end

Expand Down Expand Up @@ -648,7 +648,7 @@ DevNotes
- WIP
- Relates to: https://github.com/JuliaRobotics/IncrementalInference.jl/issues/466#issuecomment-562556953
- Consolidation
- Definitely with [`solveFactorParameteric`](@ref)
- Definitely with [`solveFactorParametric`](@ref)
- Maybe with [`solveGraphParametric`](@ref)
- https://github.com/JuliaRobotics/IncrementalInference.jl/pull/1588#issuecomment-1210406683
"""
Expand Down
2 changes: 1 addition & 1 deletion src/services/ApproxConv.jl
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ DevNotes

Related

[`approxDeconv`](@ref), `LocalDFG.findShortestPathDijkstra`, [`evalFactor`](@ref)
[`approxDeconv`](@ref), `findShortestPathDijkstra`
"""
function approxConvBelief(
dfg::AbstractDFG,
Expand Down
4 changes: 2 additions & 2 deletions src/services/CalcFactor.jl
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ residual = calcFactorResidual(fg, :x1x2f1, [1.0], [0.0], [0.0])

Related

[`calcFactorResidualTemporary`](@ref), [`_evalFactorTemporary!`](@ref), [`evalFactor`](@ref), [`approxConv`](@ref)
[`calcFactorResidualTemporary`](@ref), [`_evalFactorTemporary!`](@ref), [`approxConvBelief`](@ref)
"""
function calcFactorResidual(
dfgfct::DFGFactor,
Expand Down Expand Up @@ -147,7 +147,7 @@ residual = calcFactorResidualTemporary(Pose2Pose2(...), (RoME.Pose2,RoME.Pose2),

Related

[`calcFactorResidual`](@ref), [`CalcResidual`](@ref), [`_evalFactorTemporary!`](@ref), [`approxConv`](@ref), [`_buildGraphByFactorAndTypes!`](@ref)
[`calcFactorResidual`](@ref), [`CalcResidual`](@ref), [`_evalFactorTemporary!`](@ref), [`approxConvBelief`](@ref), [`_buildGraphByFactorAndTypes!`](@ref)
"""
function calcFactorResidualTemporary(
fct::AbstractRelative,
Expand Down
4 changes: 2 additions & 2 deletions src/services/DeconvUtils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -168,12 +168,12 @@ Generalized deconvolution to find the predicted measurement values of the factor
Inverse solve of predicted noise value and returns tuple of (newly predicted, and known "measured" noise) values.

Notes
- Opposite operation contained in `approxConv`.
- Opposite operation contained in `approxConvBelief`.
- For more notes see [`solveFactorMeasurements`](@ref).

Related

[`approxConv`](@ref), `deconvSolveKey`
[`approxConvBelief`](@ref), `deconvSolveKey`
"""
function approxDeconv(
dfg::AbstractDFG,
Expand Down
4 changes: 1 addition & 3 deletions src/services/EvalFactor.jl
Original file line number Diff line number Diff line change
Expand Up @@ -620,9 +620,7 @@ B = _evalFactorTemporary!(EuclidDistance, (ContinuousScalar, ContinuousScalar),
# should return `B = 10`
```

Related

[`evalFactor`](@ref), [`calcFactorResidual`](@ref), [`testFactorResidualBinary`](@ref), [`solveFactorParameteric`](@ref), [`approxConvBelief`](@ref)
See also: [`calcFactorResidual`](@ref), [`testFactorResidualBinary`](@ref), [`solveFactorParametric`](@ref), [`approxConvBelief`](@ref)
"""
function _evalFactorTemporary!(
fct::AbstractFactor,
Expand Down
2 changes: 1 addition & 1 deletion src/services/FGOSUtils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ DevNotes

Related

[`getVariablePPE`](@ref), [`setVariablePosteriorEstimates!`](@ref), [`getVariablePPE!`](@ref), [`setPPE!`](@ref)
[`getPPE`](@ref), [`setPPE!`](@ref), [`getVariablePPE`](@ref)
"""
function calcPPE(
var::DFGVariable,
Expand Down
2 changes: 1 addition & 1 deletion src/services/GraphProductOperations.jl
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Notes

Related

[`approxConv`](@ref), [`proposalbeliefs!`](@ref), [`AMP.manifoldProduct`](@ref)
[`approxConvBelief`](@ref), [`proposalbeliefs!`](@ref), [`AMP.manifoldProduct`](@ref)
"""
function propagateBelief(
dfg::AbstractDFG,
Expand Down
2 changes: 1 addition & 1 deletion src/services/SolverUtilities.jl
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ Notes
- This function does not add new variables or factors to `fg`, user must do that themselves after.
- Useful to use in combination with `setPPE!` on new variable.
- At time of writing `accumulateFactorMeans` could only incorporate priors or binary relative factors.
- internal info, see [`solveFactorParameteric`](@ref),
- internal info, see [`solveFactorParametric`](@ref),
- This means at time of writing `factor` must be a binary factor.
- Tip, if simulations are inducing odometry bias, think of using two factors from caller (e.g. simPerfect and simBias).

Expand Down
4 changes: 2 additions & 2 deletions src/services/TetherUtils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ DevNotes

Related:

[`approxConv`](@ref), [`solveFactorParameteric`](@ref), `RoME.MutablePose2Pose2Gaussian`
[`approxConvBelief`](@ref), [`solveFactorParametric`](@ref), `RoME.MutablePose2Pose2Gaussian`
"""
function accumulateFactorMeans(
dfg::AbstractDFG,
Expand Down Expand Up @@ -150,7 +150,7 @@ function accumulateFactorMeans(
# first find direction of solve
vars = getVariableOrder(fct)
trgsym = setdiff(vars, [srcsym])[1]
val = solveFactorParameteric(dfg, fct, [srcsym => val;], trgsym; solveKey)
val = solveFactorParametric(dfg, fct, [srcsym => val;], trgsym; solveKey)
srcsym = trgsym
end

Expand Down
Loading