alpha-asp / Alpha

A lazy-grounding Answer-Set Programming system
BSD 2-Clause "Simplified" License
58 stars 10 forks source link

Grounder restart #361

Open paulbehofsics opened 1 year ago

paulbehofsics commented 1 year ago

Adds reboots, that allow the removal of static nogoods. A reboot removes all except the minimum necessary static nogoods at some point during the search. This is done by resetting the solver and grounder and then replaying the same decisions as before to arrive at the same assignment. Included strategies for when to perform a reboot are experimental but the ANSWER strategy is the most promising so far. Reboots are disabled per default.

codecov[bot] commented 1 year ago

Codecov Report

Patch coverage: 82.33% and project coverage change: +0.18% :tada:

Comparison is base (2cce436) 78.87% compared to head (b383996) 79.06%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #361 +/- ## ============================================ + Coverage 78.87% 79.06% +0.18% - Complexity 814 821 +7 ============================================ Files 208 221 +13 Lines 8863 9299 +436 Branches 1495 1516 +21 ============================================ + Hits 6991 7352 +361 - Misses 1410 1474 +64 - Partials 462 473 +11 ``` | [Files Changed](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp) | Coverage Δ | | |---|---|---| | [...a/at/ac/tuwien/kr/alpha/core/common/AtomStore.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL2NvbW1vbi9BdG9tU3RvcmUuamF2YQ==) | `100.00% <ø> (ø)` | | | [...ac/tuwien/kr/alpha/core/solver/PerformanceLog.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9QZXJmb3JtYW5jZUxvZy5qYXZh) | `100.00% <ø> (ø)` | | | [...re/solver/heuristics/HeapOfActiveChoicePoints.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9oZXVyaXN0aWNzL0hlYXBPZkFjdGl2ZUNob2ljZVBvaW50cy5qYXZh) | `96.29% <ø> (+6.64%)` | :arrow_up: | | [...olver/reboot/strategies/RebootStrategyFactory.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9yZWJvb3Qvc3RyYXRlZ2llcy9SZWJvb3RTdHJhdGVneUZhY3RvcnkuamF2YQ==) | `12.50% <12.50%> (ø)` | | | [.../tuwien/kr/alpha/app/config/CommandLineParser.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY2xpLWFwcC9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9hcHAvY29uZmlnL0NvbW1hbmRMaW5lUGFyc2VyLmphdmE=) | `76.29% <48.21%> (-5.76%)` | :arrow_down: | | [...at/ac/tuwien/kr/alpha/api/config/SystemConfig.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtYXBpL3NyYy9tYWluL2phdmEvYXQvYWMvdHV3aWVuL2tyL2FscGhhL2FwaS9jb25maWcvU3lzdGVtQ29uZmlnLmphdmE=) | `76.47% <59.25%> (-5.06%)` | :arrow_down: | | [.../kr/alpha/core/solver/NoGoodStoreAlphaRoaming.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9Ob0dvb2RTdG9yZUFscGhhUm9hbWluZy5qYXZh) | `81.36% <75.00%> (-0.06%)` | :arrow_down: | | [.../ac/tuwien/kr/alpha/core/solver/ChoiceManager.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9DaG9pY2VNYW5hZ2VyLmphdmE=) | `80.32% <80.00%> (-0.93%)` | :arrow_down: | | [.../ac/tuwien/kr/alpha/core/solver/DefaultSolver.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9EZWZhdWx0U29sdmVyLmphdmE=) | `74.26% <81.30%> (+2.88%)` | :arrow_up: | | [...ien/kr/alpha/core/solver/reboot/RebootManager.java](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp#diff-YWxwaGEtY29yZS9zcmMvbWFpbi9qYXZhL2F0L2FjL3R1d2llbi9rci9hbHBoYS9jb3JlL3NvbHZlci9yZWJvb3QvUmVib290TWFuYWdlci5qYXZh) | `82.85% <82.85%> (ø)` | | | ... and [29 more](https://app.codecov.io/gh/alpha-asp/Alpha/pull/361?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alpha-asp) | |

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.