go2 dds research#2307
Closed
leshy wants to merge 15 commits into
Closed
Conversation
❌ 1 Tests Failed:
View the top 1 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
…bin)
Point-LIO now consumes the Go2 .mcap (rt/utlidar/cloud + rt/utlidar/imu)
directly via a vendored Foxglove MCAP C++ reader (point_lio/include/mcap/,
zstd chunks), removing the separate PLNR1 .bin and its converter from the loop.
- mcap_source.{h,cpp}: read_mcap_as_plnr1() re-emits the mcap as the in-memory
PLNR1 byte stream (CDR-decode IMU, lidar blob verbatim, ts = publish_time),
fed to the unchanged record loop via fmemopen. C++ port of mcap_to_plnr1.py.
- laserMapping.cpp: --bin removed; --mcap only.
- CMakeLists/flake: vendor mcap headers, link zstd, MCAP_COMPRESSION_NO_LZ4.
- evaluate.py/algo.py: input is MCAP_PATH; algo runs the binary with --mcap.
Validated: the .bin is byte-identical to the mcap-derived stream (same sha256),
and the --mcap run yields a trajectory bit-identical to the old --bin run
(val_ate_xy 10.973953733898254, max abs diff 0.0 over 576204 poses).
| } | ||
|
|
||
| // Check the footer magic bytes | ||
| if (std::memcmp(data + internal::FooterLength - sizeof(Magic), Magic, sizeof(Magic)) != 0) { |
| if (std::memcmp(data + internal::FooterLength - sizeof(Magic), Magic, sizeof(Magic)) != 0) { | ||
| const auto msg = | ||
| internal::StrCat("invalid magic bytes in Footer: 0x", | ||
| internal::MagicToHex(data + internal::FooterLength - sizeof(Magic))); |
…t autoresearch) This is a hyperparameter-tuning problem, not open-ended research, so drive classical optimizers over the Point-LIO CONFIG instead of an LLM-edits-algo loop. - algo.run(overrides, yaml_path=, out_path=): importable score-one-config entry point; per-trial paths let trials run concurrently. - point_lio: add --out <path> so each trial writes its own trajectory (IO plumbing only, backward-compatible default). Enables parallel search. - search.py: simulated annealing (scipy dual_annealing) over covariances (log-space) + filter sizes + thresholds; append-only log + global best_config.json. - search_optuna.py: parallel TPE (Optuna), persisted study that resumes across runs, warm-started from baseline + best_config; shares the search space. - add optuna dep; ignore search artifacts. TPE reaches val_ate_xy ~3.96 vs the 10.97 baseline.
A config that makes Point-LIO die early still writes a short trajectory
stub, and evaluate() only scores the LIO/GT *time overlap* — so a stub
near the start aligns near-perfectly and yields a deceptively tiny ATE
(the spurious 0.42 "best"). algo.run now:
- passes check=True so a nonzero exit (diverged/aborted binary) raises;
- rejects runs whose GT time overlap is < 80% of the recording, keyed on
overlap_s (path_len can't discriminate: every config integrates a huge
path from ~4500 poses/s of micro-jitter, good or bad);
- takes an optional timeout= override.
search_optuna gains --timeout (default 240s, vs the old 600s cap) to cull
pathological slow configs early; both rejection paths fall through to the
existing PENALTY so TPE learns to avoid those regions.
CMakeLists: add pcl-1.15 to the PCL header search hints.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Member
Author
|
superseded by #2314 |
Member
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.