Skip to content

Commit

Permalink
Merge pull request #703 from JuliaRobotics/master
Browse files Browse the repository at this point in the history
v0.10.1-rc1
  • Loading branch information
dehann authored Apr 5, 2021
2 parents 75441ad + 7b946d9 commit ea80932
Show file tree
Hide file tree
Showing 8 changed files with 538 additions and 18 deletions.
10 changes: 5 additions & 5 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name = "Caesar"
uuid = "62eebf14-49bc-5f46-9df9-f7b7ef379406"
keywords = ["SLAM", "state-estimation", "MM-iSAM", "MM-iSAMv2", "inference", "robotics", "ROS"]
desc = "Non-Gaussian simultaneous localization and mapping"
version = "0.10.0"
version = "0.10.1"

[deps]
ApproxManifoldProducts = "9bbbb610-88a1-53cd-9763-118ce10c1f89"
Expand Down Expand Up @@ -42,19 +42,19 @@ Unmarshal = "cbff2730-442d-58d7-89d1-8e530c41eb02"
YAML = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6"

[compat]
ApproxManifoldProducts = "0.2, 0.3"
ApproxManifoldProducts = "0.3"
AprilTags = "0.8, 0.9"
Combinatorics = "0.7, 0.8, 0.9, 1"
CoordinateTransformations = "0.5, 0.6"
DataStructures = "0.16, 0.17, 0.18"
DistributedFactorGraphs = "0.11, 0.12"
DistributedFactorGraphs = "0.12, 0.13"
Distributions = "0.19, 0.20, 0.21, 0.22, 0.23, 0.24"
DocStringExtensions = "0.7, 0.8"
FFTW = "1"
FileIO = "1"
ImageCore = "0.7, 0.8, 0.9"
ImageMagick = "0.7, 1.0, 1.1"
IncrementalInference = "0.21, 0.22"
IncrementalInference = "0.22, 0.23"
JLD2 = "0.1, 0.2, 0.3, 0.4"
JSON = "0.18, 0.19, 0.20, 0.21, 0.22, 0.23"
JSON2 = "0.3, 0.4"
Expand All @@ -64,7 +64,7 @@ Optim = "1"
ProgressMeter = "0.9, 1"
Reexport = "0.2, 1.0"
Requires = "0.5, 0.6, 0.7, 0.8, 0.9, 0.10, 1"
RoME = "0.13, 0.14"
RoME = "0.14, 0.15"
Rotations = "0.13, 1"
TensorCast = "0.2, 0.3, 0.4"
TimeZones = "1.3.1, 1.4"
Expand Down
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ A multimodal/non-Gaussian robotic toolkit for localization and mapping -- reduci

Click on the badges to follow web url links:

| Stable v0.8 | Stable v0.9 | Dev | Documentation | Public Slack |
| Stable v0.9 | Stable v0.10 | Dev | Documentation | Public Slack |
|:------:|:------:|:----------------:|:-------------:|:-----:|
| [![Build Status][build-v0.8]][build-url] | [![Build Status][build-v0.9]][build-url] | [![Build Status][build-img]][build-url] <br> [![ColPrac][colp-badge]][colprac] | [![docs][docs-shield]][caesar-docs] | [![][caesar-slack-badge]][caesar-slack] |
| [![Build Status][build-v0.9]][build-url] | [![Build Status][build-v0.10]][build-url] | [![Build Status][build-img]][build-url] <br> [![ColPrac][colp-badge]][colprac] | [![docs][docs-shield]][caesar-docs] | [![][caesar-slack-badge]][caesar-slack] |

## Get Involved and Code of Conduct

Expand Down Expand Up @@ -49,7 +49,7 @@ Consider citing our work:
}
```

Administration of the Caesar/RoME/IncrementalInference/Arena packages is currently done by @dehann who can be contacted for more details.
Administration of the Caesar.jl ecosystem is done by [NavAbility](http://www.navability.io) who can be contacted at ([email protected]) for more details.

## Stargazers over time

Expand All @@ -66,10 +66,10 @@ Administration of the Caesar/RoME/IncrementalInference/Arena packages is current
[cov-img]: https://codecov.io/github/JuliaRobotics/Caesar.jl/coverage.svg?branch=master
[cov-url]: https://codecov.io/github/JuliaRobotics/Caesar.jl?branch=master
[build-img]: https://travis-ci.org/JuliaRobotics/Caesar.jl.svg?branch=master
[build-v0.8]: https://travis-ci.org/JuliaRobotics/Caesar.jl.svg?branch=release/v0.8
[build-v0.10]: https://travis-ci.org/JuliaRobotics/Caesar.jl.svg?branch=release/v0.10
[build-v0.9]: https://travis-ci.org/JuliaRobotics/Caesar.jl.svg?branch=release/v0.9
[build-url]: https://travis-ci.org/JuliaRobotics/Caesar.jl
[caesar-stable]: https://img.shields.io/badge/2021Q1-v0.8.x-green.svg
[caesar-stable]: https://img.shields.io/badge/2021Q1-v0.10.x-green.svg
[caesar-slack-badge]: https://img.shields.io/badge/Caesarjl-Slack-green.svg?style=popout
[caesar-slack]: https://caesarjl.slack.com
[caesar-milestones]: https://github.com/JuliaRobotics/Caesar.jl/milestones
Expand All @@ -79,19 +79,19 @@ Administration of the Caesar/RoME/IncrementalInference/Arena packages is current
[r-cov-img]: https://codecov.io/github/JuliaRobotics/RoME.jl/coverage.svg?branch=master
[r-cov-url]: https://codecov.io/github/JuliaRobotics/RoME.jl?branch=master
[r-build-img]: https://travis-ci.org/JuliaRobotics/RoME.jl.svg?branch=master
[r-build-v05]: https://travis-ci.org/JuliaRobotics/RoME.jl.svg?branch=release%2Fv0.9
[r-build-v05]: https://travis-ci.org/JuliaRobotics/RoME.jl.svg?branch=release%2Fv0.15
[r-build-url]: https://travis-ci.org/JuliaRobotics/RoME.jl
[r-stable]: https://img.shields.io/badge/2021Q1-v0.13.x-green.svg
[r-stable]: https://img.shields.io/badge/2021Q1-v0.15.x-green.svg
[r-milestones]: https://github.com/JuliaRobotics/RoME.jl/milestones
[r-releases]: https://github.com/JuliaRobotics/RoME.jl/releases

[iif-cov-img]: https://codecov.io/github/JuliaRobotics/IncrementalInference.jl/coverage.svg?branch=master
[iif-cov-url]: https://codecov.io/github/JuliaRobotics/IncrementalInference.jl?branch=master
[iif-build-img]: https://travis-ci.org/JuliaRobotics/IncrementalInference.jl.svg?branch=master
[iif-build-v020]: https://travis-ci.org/JuliaRobotics/IncrementalInference.jl.svg?branch=release/v0.20
[iif-build-v020]: https://travis-ci.org/JuliaRobotics/IncrementalInference.jl.svg?branch=release/v0.23
[iif-build-url]: https://travis-ci.org/JuliaRobotics/IncrementalInference.jl
[iif-url]: http://www.github.com/JuliaRobotics/IncrementalInference.jl
[iif-stable]: https://img.shields.io/badge/2021Q1-v0.21.x-green.svg
[iif-stable]: https://img.shields.io/badge/2021Q1-v0.23.x-green.svg
[iif-milestones]: https://github.com/JuliaRobotics/IncrementalInference.jl/milestones
[iif-releases]: https://github.com/JuliaRobotics/IncrementalInference.jl/releases

Expand Down Expand Up @@ -141,7 +141,7 @@ Administration of the Caesar/RoME/IncrementalInference/Arena packages is current
[dfg-build-img]: https://travis-ci.org/JuliaRobotics/DistributedFactorGraphs.jl.svg?branch=master
[dfg-build-url]: https://travis-ci.org/JuliaRobotics/DistributedFactorGraphs.jl
[dfg-url]: http://www.github.com/JuliaRobotics/DistributedFactorGraphs.jl
[dfg-stable]: https://img.shields.io/badge/2020Q4-v0.11.x-green.svg
[dfg-stable]: https://img.shields.io/badge/2021Q1-v0.13.x-green.svg
[dfg-milestones]: https://github.com/JuliaRobotics/DistributedFactorGraphs.jl/milestones
[dfg-releases]: https://github.com/JuliaRobotics/DistributedFactorGraphs.jl/releases

Expand All @@ -150,7 +150,7 @@ Administration of the Caesar/RoME/IncrementalInference/Arena packages is current
[amp-build-img]: https://travis-ci.org/JuliaRobotics/ApproxManifoldProducts.jl.svg?branch=master
[amp-build-url]: https://travis-ci.org/JuliaRobotics/ApproxManifoldProducts.jl
[amp-url]: http://www.github.com/JuliaRobotics/ApproxManifoldProducts.jl
[amp-stable]: https://img.shields.io/badge/2021Q1-v0.2.x-green.svg
[amp-stable]: https://img.shields.io/badge/2021Q1-v0.3.x-green.svg
[amp-milestones]: https://github.com/JuliaRobotics/ApproxManifoldProducts.jl/milestones
[amp-releases]: https://github.com/JuliaRobotics/ApproxManifoldProducts.jl/releases

Expand All @@ -168,6 +168,6 @@ Administration of the Caesar/RoME/IncrementalInference/Arena packages is current
[rp-cov-url]: https://codecov.io/github/JuliaRobotics/RoMEPlotting.jl?branch=master
[rp-build-img]: https://travis-ci.org/JuliaRobotics/RoMEPlotting.jl.svg?branch=master
[rp-build-url]: https://travis-ci.org/JuliaRobotics/RoMEPlotting.jl
[rp-stable]: https://img.shields.io/badge/2021Q1-v0.6.x-green.svg
[rp-stable]: https://img.shields.io/badge/2021Q1-v0.7.x-green.svg
[rp-milestones]: https://github.com/JuliaRobotics/RoMEPlotting.jl/milestones
[rp-releases]: https://github.com/JuliaRobotics/RoMEPlotting.jl/releases
1 change: 1 addition & 0 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ using RoME
import IncrementalInference: fmcmc!, localProduct, prodmultiplefullpartials, prodmultipleonefullpartials, setfreeze!
import IncrementalInference: cliqGibbs, packFromLocalPotentials!, treeProductDwn, updateFGBT!, upGibbsCliqueDensity
import IncrementalInference: initfg, downGibbsCliqueDensity
import IncrementalInference: solveGraphParametric, solveGraphParametric!

using KernelDensityEstimatePlotting
# import KernelDensityEstimatePlotting: plotKDE
Expand Down
2 changes: 1 addition & 1 deletion docs/src/examples/parametric_solve.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ end
```

### The Factor
The factor is evaluated in a cost function using the Mahalanobis distance and the measurement should therefore match the residual returned.
The factor is evaluated in a cost function using the [Mahalanobis distance](https://en.wikipedia.org/wiki/Mahalanobis_distance) and the measurement should therefore match the residual returned.

### Optimization
[`IncrementalInference.solveGraphParametric!`](@ref) uses Optim.jl. The factors that are supported should have a gradient and Hessian available/exists and therefore it makes use of `TwiceDifferentiable`. Full control of Optim's setup is possible with keyword arguments.
Expand Down
97 changes: 97 additions & 0 deletions examples/dev/ParamSweep.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@

using ArgParse
function parse_commandline()
s = ArgParseSettings()

@add_arg_table! s begin
"--spreadNH_start"
help = "spreadNH_start"
arg_type = Float64
default = 3.0
"--spreadNH_stop"
help = "spreadNH_stop"
arg_type = Float64
default = 3.0
"--spreadNH_step"
help = "spreadNH_step"
arg_type = Float64
default = 1.0
"--inflation_start"
help = "inflation_start"
arg_type = Float64
default = 5.0
"--inflation_stop"
help = "inflation_stop"
arg_type = Float64
default = 5.0
"--inflation_step"
help = "inflation_step"
arg_type = Float64
default = 1.0
"--useMsgLikelihoods"
help = "useMsgLikelihoods"
arg_type = Bool
default = true
"--anneal"
help = "anneal the solve value according to param settings iterations"
action = :store_true
"fgtargz"
help = "fgtargz, but leave out the extension .tar.gz"
required = true
end

return parse_args(s)
end

using RoME
using Distributed
addprocs(10)
using RoME
@everywhere using RoME


function main()
pargs = parse_commandline()
println("Parsed args:")
for (arg,val) in pargs
println(" $arg => $val")
end

fname = replace(pargs["fgtargz"],".tar.gz"=>"")
fg = loadDFG(fname);

getSolverParams(fg).useMsgLikelihoods = pargs["useMsgLikelihoods"]

SNH = pargs["spreadNH_start"]:pargs["spreadNH_step"]:pargs["spreadNH_stop"]
IFL = pargs["inflation_start"]:pargs["inflation_step"]:pargs["inflation_stop"]

if pargs["anneal"]
for i in 1:length(SNH)
getSolverParams(fg).spreadNH = SNH[i]
getSolverParams(fg).inflation = IFL[i]
# solve
solveTree!(fg, storeOld=true);
end
# store the final result
snhn = replace(string(SNH),'.'=>'_')
ifln = replace(string(IFL),'.'=>'_')
saveDFG(pargs["fgtargz"]*"S$snhn"*"I$ifln", fg)
else
for snh in SNH, ifl in IFL
getSolverParams(fg).spreadNH = snh
getSolverParams(fg).inflation = ifl
fg_ = deepcopy(fg)
solveTree!(fg_, storeOld=true);
# save the result
snhn = replace("$snh",'.'=>'_')
ifln = replace("$ifl",'.'=>'_')
saveDFG(pargs["fgtargz"]*"S$snhn"*"I$ifln", fg_)
end
end

@info "done"
end

main()

#
Loading

0 comments on commit ea80932

Please sign in to comment.