hdbeukel / james-core

Core module of the JAMES framework
Apache License 2.0
6 stars 5 forks source link

Abort computationally expensive search steps upon termination request #24

Open hdbeukel opened 9 years ago

hdbeukel commented 9 years ago

When a search is requested to stop, it currently only does so after completing its current step. For more complex searches, involving one or more sub-searches, termination requests are propagated to these sub-searches for fast termination. JAMES currently includes 4 such searches:

To do: check wether termination is as fast as possible for each of these.

Also for searches that explore large parts (or all moves) of the applied neighbourhood(s), termination may be prohibited for a noticeable amount of time, during which the current step is completed. Examples include steepest descent, tabu search and VND. For these, it may be appropriate to abort the current step to ensure fast response to termination request. If the search is later restarted, it should then repeat this aborted step.