mac icon indicating copy to clipboard operation
mac copied to clipboard

Latest code release: new library, rounding, tests, experiments, docs.

Open keevindoherty opened this issue 1 year ago • 4 comments

This PR adds:

  • New library code for Fiedler value computation, subgradient optimization, randomized rounding.
  • New example code for running the MAC algorithm and evaluating its performance
  • Updated documentation
  • New tests

Migrating the latest results from the MRG development repo for release.

We should go over everything one more time to do any last clean up, but otherwise I think we are good to go.

cc: @alanpapalia

keevindoherty avatar Mar 28 '24 23:03 keevindoherty

If I have any small commits/changes as I'm testing or reading through this I'll just go ahead and push them (e.g., minor typos or additions to documentation). You can see I've added a few minor things like this.

If I end up needing to make changes that modify core functionality (unlikely I think) then I'll fork a separate branch on this or we can have a larger discussion.

alanpapalia avatar Apr 01 '24 14:04 alanpapalia

Looks awesome! Just finished running all of the tests after applying a few minor fixes and adding some minor documentation.

One thing: I think we forgot to copy the NCLT data over? (or provide a pointer to it somewhere)

Examples that need NCLT

  • g2o_simple.py (maybe good to change the file name)
  • nclt_experiment_with_gtsam.py
  • nclt_experiment_with_sesync.py

I'll make a branch for NCLT problems and copy and test.

One other example to draw attention to: incremental_g2o_experiment.py runs, but is quite slow. I think this is due to unimportant operations happening, but I wanted to point this out in case we wanted to add notes to.

alanpapalia avatar Apr 05 '24 18:04 alanpapalia

One thing: I think we forgot to copy the NCLT data over? (or provide a pointer to it somewhere)

Yeah, I was thinking per our previous discussion on this that we'd just add to a separate repo? But maybe it is just simpler to add the combined .g2o file used from the experiments to the data/ folder for now. Thoughts?

One other example to draw attention to: incremental_g2o_experiment.py runs, but is quite slow. I think this is due to unimportant operations happening, but I wanted to point this out in case we wanted to add notes to.

I haven't looked at this in a while, what unimportant operations are you referring to? This is using the iMAC stuff, right? I'm happy to just remove that and imac_pgo.py for now and add them in a separate PR. Both were sort of left off in a messy state.

keevindoherty avatar Apr 06 '24 01:04 keevindoherty

Worth capturing here that this PR also finally resolves issue #4 😄

keevindoherty avatar Apr 06 '24 14:04 keevindoherty

@alanpapalia I took another pass at all this. Mainly I split out the following content:

  • #6 (really the nclt branch) contains the NCLT experiment content.
  • #7 (likewise, the imac branch) contains the incremental sparsification stuff.

Any objections to merging this PR in its current form? Going once, going twice, ....

keevindoherty avatar May 24 '24 01:05 keevindoherty