Git Product home page Git Product logo

orienteering-alns's People

Contributors

alberto-santini avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

jyxxhyx gkobeaga

orienteering-alns's Issues

Parameter Configuration

Due to an issue in the generation of Gen3 scores in OPLib, the results for the instances a280, fnl4461, nrw1379, rat195, rat575, rat783, rat99, tsp225 are outdated. I would like to rerun the code to update the results of those instances.

I just want to ensure that I am using the right parameter configuration.

1. ALNS framework parameters

The Params.json file in your ALNS library with the following changes (according to Table 2 in the paper):

 {
   "prerun-iterations": 1000,
   "total-iterations": 150000,
   "timeout-s": 60,
   "iters-without-improvement-max": 5000,
   "iters-without-improvement-alarm": 1000,
 
   "iterations-without-syncing-threads": 1,
   "prob-return-to-best-known": 0.0,
 
   "acceptance-criterion-possible-values": [
     "Hill climbing",
     "Simulated annealing",
     "Threshold acceptance",
     "Great deluge",
     "Record-to-record travel",
     "Late acceptance hill climbing",
     "Non-Linear Great Deluge",
     "Worse accept",
     "Conservative worse accept",
     "Discreet worse accept",
     "Random walk",
     "Custom"
   ],
   "acceptance-criterion": "Simulated annealing",
 
   "acceptance-params-base-possible-values": [
     "time", "iterations"
   ],
-  "acceptance-params-base": "time",
+  "acceptance-params-base": "iterations",
 
   "scores": {
-    "accepted": 2.0,
-    "improved": 4.0,
-    "global-best": 10.0,
-    "decay": 0.99
+    "accepted": 3.0383,
+    "improved": 5.3385,
+    "global-best": 15.3815,
+    "decay": 0.4314
   },
 
   "parameter-tuning-file": "ParTuningResults.txt",
   "results-log-basename": "Summary",
 
   "acceptance": {
     "simulated-annealing": {
       "init-ratio-50p": 0.9,
       "end-ratio-50p": 0.01,
       "end-ratio-50p-refers-to-initial": false,
       "temperature-decrease-is-linear": false,
       "reheating": false,
       "reheating-coefficient": 5.0,
       "reheating-times": 2,
       "magic-number-exponent": 1.0
     },
     "threshold-acceptance": {
-      "start-threshold": 0.05,
+      "start-threshold": 0.0039,
       "end-threshold": 0.001,
       "threshold-decrease-is-linear": true
     },
     "great-deluge": {
       "initial-water-level-ratio": 1.1,
       "water-level-decrease-pct": 0.01
     },
     "record-to-record": {
       "start-deviation": 0.1,
       "end-deviation": 0.01,
       "deviation-decrease-is-linear": true
     },
     "late-acceptance-hill-climbing": {
       "list-size": 5000,
       "allow-non-worsening": true
     },
     "non-linear-great-deluge": {
       "initial-water-level-ratio": 1.0,
       "gap-to-increase-water-level": 0.01,
       "water-level-increase-pct": 0.05,
       "water-level-decrease-exp-factor": 0.01
     },
     "worse-accept": {
       "start-probability": 0.1,
       "end-probability": 0.01,
       "probability-decrease-is-linear": false
     },
     "conservative-worse-accept": {
       "start-probability": 0.1,
       "end-probability": 0.01,
       "probability-decrease-is-linear": false
     },
     "discreet-worse-accept": {
       "consecutive-rejects-for-100p": 5,
       "probability-increase-is-linear": true
     }
   }
 }
2. ALNS problem-specific parameters

The following problem-specific parameters:

{
  "destroy" : {"enable_random" : true},
  "repair" : {"enable_greedy" : true},
  "initial_solution" : {
    "local_search" : true
  },
  "local_search_use" : {
    "use_2opt" : false,
    "use_tsp" : false,
    "fill_tour" : true
  }
}

You might prefer to rerun the modified instances in your workstation. However, I will create a PR with the updated results in case you want to include them.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.