28 #ifndef SRC_METHODS_MIP_BASED_METHOD_HPP_ 29 #define SRC_METHODS_MIP_BASED_METHOD_HPP_ 47 template<
class UserNodeLabel,
class UserEdgeLabel>
78 std::size_t num_threads_;
80 double time_limit_in_sec_;
84 double tune_time_limit_in_sec_;
88 bool project_to_node_map_;
96 virtual
bool ged_parse_option_(const std::
string & option, const std::
string & arg) final;
149 virtual
bool mip_parse_option_(const std::
string & option, const std::
string & arg);
virtual void mip_init_()
Initializes the method.
virtual void ged_init_() final
Initializes the method.
virtual bool mip_parse_option_(const std::string &option, const std::string &arg)
Parses one option that is not among the ones shared by all derived classes of ged::MIPBasedMethod.
virtual void mip_set_default_options_()
Sets all options that are not among the ones shared by all derived classes of ged::MIPBasedMethod to ...
bool relax_
If true, the model populated by mip_populate_model_() must be continuous.
virtual std::string mip_valid_options_string_() const
Returns string of all valid options that are not among the ones shared by all derived classes of ged:...
Contains the standardized input data along with basic functionality.
virtual void mip_populate_model_(const GEDGraph &g, const GEDGraph &h, GRBModel &model)
Runs the local search from an initial node map.
virtual std::string ged_valid_options_string_() const final
Returns string of all valid options.
MIPBasedMethod(const GEDData< UserNodeLabel, UserEdgeLabel > &ged_data)
Constructor.
A wrapper structure for the result of calls to ged::GEDMethod::run_as_util() and ged::GEDMethod::ged_...
virtual void ged_set_default_options_() final
Sets all options to default values.
Abstract class for the (suboptimal) computation of the graph edit distance.
virtual ~MIPBasedMethod()=0
Pure virtual destructor.
virtual void ged_run_(const GEDGraph &g, const GEDGraph &h, Result &result) final
Runs the method with options specified by set_options().
The normalized input graphs used by GEDLIB. All labels are integers.
Global namespace for GEDLIB.
virtual void mip_model_to_node_map_(const GEDGraph &g, const GEDGraph &h, GRBModel &model, NodeMap &node_map)
Given a, possibly sub-optimally, solved unrelaxed model, this method constructs a node map and sets i...
virtual bool mip_model_to_lsape_projection_problem_(const GEDGraph &g, const GEDGraph &h, GRBModel &model, DMatrix &lsape_instance)
Given a, possibly sub-optimally, solved model, this method constructs an LSAPE instance for projectin...
virtual bool ged_parse_option_(const std::string &option, const std::string &arg) final
Parses one option.
Model
Selects a model for solving LSAPE with the Hungarian algorithm.
Abstract class for methods that use mixed integer linear programming for exactly or approximatively c...
bool map_root_to_root_
If true, the model populated by mip_populate_model_() must enforce that the nodes with ID 0 are mappe...