Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::VisitedBoundMap Concept Reference

Concept for a map tracking the best bound seen per visited state. More...

#include <state_search_common.H>

Concept definition

template<typename Map, typename Key, typename Objective>
concept Aleph::VisitedBoundMap = requires(Map &map, const Key &key, const Objective &obj) {
map.insert(key, obj);
map.remove(key);
{ map.search(key) == nullptr } -> std::convertible_to<bool>;
map.search(key)->second = obj;
}
Concept for a map tracking the best bound seen per visited state.
size_t blossom_maximum_cardinality_matching(const GT &g, DynDlist< typename GT::Arc * > &matching, SA sa=SA())
Alias of compute_maximum_cardinality_general_matching().
Definition Blossom.H:466

Detailed Description

Concept for a map tracking the best bound seen per visited state.

Compatible with Aleph::SearchStorageMap. The engine uses search(key) to probe for an existing bound and insert(key, bound) to record one. Updating an existing entry is done by mutating the value through the pointer returned by search.

Engines may use remove(key) to roll back the visited map if an exception occurs during exploration of a newly inserted state.

Template Parameters
MapContainer type.
KeyState key type.
ObjectiveGoal metric type.

Definition at line 166 of file state_search_common.H.