Repository navigation
Conversation
zayenz
force-pushed
the
feature/open-search
branch
5 times, most recently
from
October 14, 2026 12:11
10fad23 to
4b24088
Compare
zayenz
force-pushed
the
feature/open-cp
branch
from
October 15, 2026 12:49
462123d to
e2a0fe9
Compare
zayenz
force-pushed
the
feature/open-search
branch
from
October 15, 2026 12:49
4b24088 to
489e4c2
Compare
zayenz
force-pushed
the
feature/open-cp
branch
from
October 15, 2026 13:47
e2a0fe9 to
8207ea7
Compare
zayenz
force-pushed
the
feature/open-search
branch
5 times, most recently
from
October 15, 2026 15:10
b599534 to
bfe3f2f
Compare
zayenz
marked this pull request as ready for review
October 20, 2026 06:50
zayenz
force-pushed
the
feature/open-cp
branch
from
October 20, 2026 19:56
1285aac to
9d34bd4
Compare
zayenz
force-pushed
the
feature/open-search
branch
2 times, most recently
from
October 20, 2026 20:33
5c37b18 to
2e3068c
Compare
zayenz
force-pushed
the
feature/open-cp
branch
2 times, most recently
from
October 21, 2026 08:11
0e679a7 to
5fb98a6
Compare
zayenz
force-pushed
the
feature/open-search
branch
4 times, most recently
from
October 21, 2026 12:02
a03e61d to
ace7c7f
Compare
This was referenced Oct 21, 2026
Merged
zayenz
force-pushed
the
feature/open-search
branch
2 times, most recently
from
October 21, 2026 19:25
7c04635 to
8d491da
Compare
zayenz
force-pushed
the
feature/open-search
branch
from
October 21, 2026 20:44
fe151fe to
5c83ea5
Compare
zayenz
force-pushed
the
feature/open-search
branch
2 times, most recently
from
October 22, 2026 14:05
9690a92 to
e3cdb68
Compare
zayenz
force-pushed
the
feature/open-cp
branch
from
October 22, 2026 17:18
ed33793 to
710158b
Compare
zayenz
force-pushed
the
feature/open-search
branch
from
October 22, 2026 17:18
e3cdb68 to
3c4cc55
Compare
zayenz
force-pushed
the
feature/open-cp
branch
from
October 23, 2026 08:33
710158b to
de4c400
Compare
zayenz
force-pushed
the
feature/open-search
branch
5 times, most recently
from
October 26, 2026 18:40
bbf762e to
11e7c25
Compare
zayenz
force-pushed
the
feature/open-search
branch
3 times, most recently
from
October 28, 2026 05:57
0bc31b6 to
b31ea94
Compare
GECODE_ENABLE_EXPERIMENTAL (CMake) and --enable-experimental (Autoconf) define GECODE_HAS_EXPERIMENTAL. The option is off by default; CI builds both settings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Entries marked Experimental: true appear under Experimental changes in each release, and tidy validates the field. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
AStar and CABS (complete anytime beam search) are best-solution engines for ordinary Space subclasses. Their guidance, an optimistic objective bound with an optional rank and optional CABS dominance, is passed through Search::Options::guidance, so they have the same constructor as BAB and run with Script::run; the driver forwards Options::guidance. Search::Options::max_width and frontier_limit bound CABS. Both engines support parallel search, worker control, and portfolios. Open nodes, layers and beams use the Support containers; node order, incumbent, A* queue and CABS beam are shared in search/heuristic.hh, and parallel A* and CABS are subclasses of Par::Frontier. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A CABS asset that reaches its width or node limit cannot continue, but both portfolio engines took its stop for a user stop: the sequential one kept returning without running the other assets, and the parallel one stopped the portfolio while keeping the asset. Search::Engine::limited now tells that an engine stopped at a local limit; portfolios remove such an asset and report that they stopped once all assets are done. Other assets are handled as before. The sequential engine also no longer takes a stop after a finished slice for the end of the slice. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The fifteen-puzzle gains -search astar|cabs using the moves so far plus the Manhattan distance as bound. TSPTW is a driver-based travelling salesperson model with time windows and two inline instances; it runs with BAB, A* and CABS, and CABS uses a dominance check on partial tours. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
zayenz
force-pushed
the
feature/open-search
branch
from
October 28, 2026 10:33
b31ea94 to
52ad2b6
Compare
This branch has not been deployed
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.
Add experimental A* and complete anytime beam search (CABS) for ordinary Gecode
Spacesubclasses.Guidance (an optimistic objective bound, an optional rank, and optional CABS dominance) is passed through
Search::Options::guidance, soAStar<T>(s,o)andCABS<T>(s,o)have the same shape asBAB<T>and run directly withScript::run. The driver forwardsOptions::guidance(). CABS limits areSearch::Options::max_widthandfrontier_limit. As with BAB,next()returns improving solutions.Both engines support parallel search (
Options::threads), dynamic worker control, and PBS portfolios with BAB. Open nodes, layers and beams use Gecode'sSupportcontainers; the shared pieces (node order, incumbent, A* queue, CABS beam) are ingecode/search/heuristic.hh, and parallel A* and CABS are small subclasses ofPar::Frontier.Commits:
Search::Engine::limited()(experimental) reports such local limits; portfolios retire the asset and report an incomplete search once all assets are done. Other assets are handled as before. Sequential PBS also no longer takes a stop after a finished slice for the end of the slice.fifteen-puzzlegains-search astar|cabs;tsptwis a new driver-based example with two inline instances and a CABS dominance check.Makefile.depis regenerated in the stacked #269.Enable with
GECODE_ENABLE_EXPERIMENTAL=ONor--enable-experimental; the preview is disabled by default and its APIs may change.Review: independent zdev reviews by two models; both found the parallel-portfolio issue fixed in commit 4, and two focused rechecks verified the fix.
Testing:
-tag standard6776/6777 passed;FlatZinc::on_restart::last_val_floatalso fails onmainand is handled infeature/6.5.0-cleanups.-tag check536/536 with one test thread on the previous revision.-tag check533/533.-tag check539/539, no new warnings. Valgrind on the heuristic, worker-control and portfolio tests (previous revision): 14/14; the only report is the known 78-byte leak from static test registration.🤖 Generated with Claude Code