HAL: Archived releases
Please select from one of the available archived releases:
1.1.5

Readme:

Download a very brief readme/quick-start guide here.

License:

HAL 1.1.5 and all posted plugins are released under the GPL 3.0 license. Source code is available upon request, and other licensing options are available by contacting the developers.

Requirements:

  • HAL requires version 6.0 or higher of the Java Runtime Environment (JRE).
  • Rendering of plots additionally requires gnuplot be installed and accessible from your environment path variable.
  • If you plan to run more than one experiment simultaneously on separate hosts, we highly recommend using the MySQL database plugin to replace the default SQLite database; since SQLite uses file-based locking, it is prone to deadlocks when multiple processes access the same database file. To do this, run HAL, then edit the hal.json file and replace the "database" entry with a line like "jdbc:mysql://[username]@[mysql.server]:[port]/[database_name]". On restart, HAL will set up the new database schema automatically, so long as the provided URI points to a working MySQL server with appropriate access permissions.

Combined HAL package:

(version 1.1.5, 2012/12/07). MD5: 636a8a71c46d1927a300c06ded73d235 Download here
Includes HAL 1.1.4 core, plus all plugins listed below.

To use this package, unzip to a working directory, and double-click the hal_<version>.jar to start the webserver (or type "java -jar hal_<version>.jar"). Then, browse to the UI.

HAL core:

(version 1.1.5, 2012/12/07). MD5: c20424c4ee7b6736fbbecb5eed66153d Download here
Includes only the core HAL functionality, with no plugins.

1.1.4

Readme:

Download a very brief readme/quick-start guide here.

License:

HAL 1.1.4 and all posted plugins are released under the GPL 3.0 license. Source code is available upon request, and other licensing options are available by contacting the developers.

Requirements:

  • HAL requires version 6.0 or higher of the Java Runtime Environment (JRE).
  • Rendering of plots additionally requires gnuplot be installed and accessible from your environment path variable.
  • If you plan to run more than one experiment simultaneously on separate hosts, we highly recommend using the MySQL database plugin to replace the default SQLite database; since SQLite uses file-based locking, it is prone to deadlocks when multiple processes access the same database file. To do this, run HAL, then edit the hal.json file and replace the "database" entry with a line like "jdbc:mysql://[username]@[mysql.server]:[port]/[database_name]". On restart, HAL will set up the new database schema automatically, so long as the provided URI points to a working MySQL server with appropriate access permissions.

Combined HAL package:

(version 1.1.4, 2012/11/27). MD5: 908c48da311c792295ab6e40d5d01f48 Download here
Includes HAL 1.1.4 core, plus all plugins listed below.

To use this package, unzip to a working directory, and double-click the hal_<version>.jar to start the webserver (or type "java -jar hal_<version>.jar"). Then, browse to the UI.

HAL core:

(version 1.1.4, 2012/11/27). MD5: 768b65e4b4c933cc630a74d466f8aaa3 Download here
Includes only the core HAL functionality, with no plugins.

1.1.3

Readme:

Download a very brief readme/quick-start guide here.

License:

HAL 1.1.3 and all posted plugins are released under the GPL 3.0 license. Source code is available upon request, and other licensing options are available by contacting the developers.

Requirements:

  • HAL requires version 6.0 or higher of the Java Runtime Environment (JRE).
  • Rendering of plots additionally requires gnuplot be installed and accessible from your environment path variable.
  • If you plan to run more than one experiment simultaneously on separate hosts, we highly recommend using the MySQL database plugin to replace the default SQLite database; since SQLite uses file-based locking, it is prone to deadlocks when multiple processes access the same database file. To do this, run HAL, then edit the hal.json file and replace the "database" entry with a line like "jdbc:mysql://[username]@[mysql.server]:[port]/[database_name]". On restart, HAL will set up the new database schema automatically, so long as the provided URI points to a working MySQL server with appropriate access permissions.

Combined HAL package:

(version 1.1.3, 2012/11/02). MD5: fdab58f98512d646a7310068d85b8755 Download here
Includes HAL 1.1.2 core, plus all plugins listed below.

To use this package, unzip to a working directory, and double-click the hal_<version>.jar to start the webserver (or type "java -jar hal_<version>.jar"). Then, browse to the UI.

HAL core:

(version 1.1.3, 2012/11/02). MD5: c9256c38305d716bbbb805a4aa9f5ab9 Download here
Includes only the core HAL functionality, with no plugins.

1.1.2

Readme:

Download a very brief readme/quick-start guide here.

License:

HAL 1.1.2 and all posted plugins are released under the GPL 3.0 license. Source code is available upon request, and other licensing options are available by contacting the developers.

Requirements:

  • HAL requires version 6.0 or higher of the Java Runtime Environment (JRE).
  • Rendering of plots additionally requires gnuplot be installed and accessible from your environment path variable.
  • If you plan to run more than one experiment simultaneously on separate hosts, we highly recommend using the MySQL database plugin to replace the default SQLite database; since SQLite uses file-based locking, it is prone to deadlocks when multiple processes access the same database file. To do this, run HAL, then edit the hal.json file and replace the "database" entry with a line like "jdbc:mysql://[username]@[mysql.server]:[port]/[database_name]". On restart, HAL will set up the new database schema automatically, so long as the provided URI points to a working MySQL server with appropriate access permissions.

Combined HAL package:

(version 1.1.2, 2012/09/27). MD5: fc3063f78b395580e4511b3c9bcf1723 Download here
Includes HAL 1.1.2 core, plus all plugins listed below.

To use this package, unzip to a working directory, and double-click the hal_<version>.jar to start the webserver (or type "java -jar hal_<version>.jar"). Then, browse to the UI.

HAL core:

(version 1.1.2, 2012/09/27). MD5: 087dfc6ce9aba2608842c2095d8626ad Download here
Includes only the core HAL functionality, with no plugins.

1.1.0

Readme:

Download a very brief readme/quick-start guide here.

License:

HAL 1.1.0 and all posted plugins are released under the GPL 3.0 license. Source code is available upon request, and other licensing options are available by contacting the developers.

Requirements:

  • HAL requires version 6.0 or higher of the Java Runtime Environment (JRE).
  • Rendering of plots additionally requires gnuplot be installed and accessible from your environment path variable.
  • If you plan to run more than one experiment simultaneously on separate hosts, we highly recommend configuring using the MySQL database plugin to replace the default SQLite database; since SQLite uses file-based locking, it is prone to deadlocks when multiple processes access the same database file. To do this, run HAL, then edit the hal.json file and replace the "database" entry with a line like "jdbc:mysql://[username]@[mysql.server]:[port]/[database_name]". On restart, HAL will set up the new database schema automatically, so long as the provided URI points to a working MySQL server with appropriate access permissions.

Combined HAL package:

(version 1.1.0, 2012/08/01). MD5: 3466fd0b16f53a7a85fee6214c9582f9 Download here
Includes HAL 1.1.0 core, plus all plugins listed below.

To use this package, unzip to a working directory, and double-click the hal_<version>.jar to start the webserver (or type "java -jar hal_<version>.jar"). Then, browse to the UI.

HAL core:

(version 1.1.0, 2012/08/01). MD5: a7f307ef4fa071f2bd8c72899602c239 Download here
Includes only the core HAL functionality, with no plugins.

Plugins (put in "plugins" subfolder to use):

SCD-Based Analysis (analysis of a single target algorithm)

(version 1.1.0, 2012/08/01). MD5: 88059fad5b999ce3f57880f104054447 Download here.

Comprehensive Pairwise Comparison (analysis of two target algorithms)

(version 1.1.0, 2012/08/01). MD5: 0d067f0e35984ceae676ccdb38323847 Download here.

ParamILS (algorithm configuration design procedure)

(version 1.1.0, 2012/08/01). MD5: 0e4025fe469a4976588bd9f1028248e5 Download here.
Requires a working Ruby installation, with the Ruby interpreter in your environment's path variable.

ROAR (algorithm configuration design procedure)

(version 1.1.0, 2012/08/01). MD5: 06175adeea48b75b918c551fa84b1abe Download here.

MySQL (data manager)

(version 1.1.0, 2012/08/01). MD5: 7e8cb6dc00488c60a73943406b88e730 Download here.
Adds support for MySQL database servers.

R (statistics package)

(version 1.1.0, 2012/08/01). MD5: 438b103f3b19354a831764903449655e Download here.
Enables use of an existing R installation to perform statistical tests.

1.1.0 Experiment packages and sample data

Simple sample experiment packages

To use, don't unzip, just use the HAL 1.0 import interface.

Sample configuration experiment

MD5 checksum: 49ddc05022fd8c07738511173c9e808b (15 MB, 2012/08/01). Download here.
A simple configuration experiment using SPEAR. For full details, see the 1.0.0 description.

Experiment packages from Nell et al. (2011):

To use, don't unzip, just use the HAL 1.0 import interface.

Spear: SWV configuration experiments

MD5 checksum: 55ed66749cc046f8866a0e681756c548 (258 MB, 2012/08/01). Download here.
Requires HAL core version 1.1.0 or greater. Configuration experiments require ParamILS and ROAR plugins, version 1.1.0 or greater. SWV training instance set is included. Spear binary for Linux is included.

Spear: SWV validation experiments

MD5 checksum: c8de8630ce60cf9af29cddbce78f9bbf (258 MB, 2012/08/01). Download here.
Requires HAL core version 1.1.0 or greater, and SCD-based analysis plugin version 1.1.0 or greater. SWV training instance set is included. Spear binary for Linux is included.
Note that these validation experiments use the designs obtained via the configuration experiments on our compute cluster; the designs produced by running the packaged configuration experiments on other machines will differ.

Spear: SWV test set experiments

MD5 checksum: cbc40173904b859af8f98a1c609936fa (237 MB, 2012/08/01). Download here.
Requires HAL core version 1.1.0 or greater, as well as SCD-based analysis and pairwise comparison plugins version 1.1.0 or greater. SWV test instance set is included. Spear binary for Linux is included.

1.0.0

Readme:

1.0.0 quick start guide.

License:

HAL 1.0.0 and all posted plugins are released under the GPL 3.0 license. Source code is available upon request, and other licensing options are available by contacting the developers.

Requirements:

  • HAL requires version 6.0 or higher of the Java Runtime Environment (JRE).
  • Rendering of plots additionally requires gnuplot be installed and accessible from your environment path variable.
  • If you plan to run more than one experiment simultaneously on separate hosts, we highly recommend configuring using the MySQL database plugin to replace the default SQLite database; since SQLite uses file-based locking, it is prone to deadlocks when multiple processes access the same database file. To do this, run HAL, then edit the hal.json file and replace the "database" entry with a line like "jdbc:mysql://[username]@[mysql.server]:[port]/[database_name]". On restart, HAL will set up the new database schema automatically, so long as the provided URI points to a working MySQL server with appropriate access permissions.

Combined HAL package:

(version 1.0.0, 14MB, 2011/01/19). MD5: 75eefa0a9dd83a06755f0f7c3c03967f. Download here
Includes HAL 1.0.0 core, plus all plugins posted below.

To use this package, unzip into a working directory, and double-click the hal_1.0.0.jar to start the webserver (or type "java -jar hal_1.0.0.jar"). Then, browse to the UI.

HAL core:

(version 1.0.0, 2011/01/19). MD5: a50df22e2bf5c1c0e45943b1043cac72. Download here
Includes only the core HAL functionality, with no plugins.

Plugins (place .jar in "plugins" subfolder to use):

SCD-Based Analysis (analysis of a single target algorithm)

(version 1.0.0, 2011/01/19). MD5: c78efbf52705b0cf8804938dd47771a0. Download here.

Comprehensive Pairwise Comparison (analysis of two target algorithms)

(version 1.0.0, 2011/01/19). MD5: 501bdab4baea97500f0845753c4df058. Download here.

ParamILS (algorithm configuration design procedure)

(version 1.0.0, 2011/01/19). MD5: 63c9866fafbf51e0067d9115799a5515. Download here.
Requires a working Ruby installation, with the Ruby interpreter in your environment's path variable.

ROAR (algorithm configuration design procedure)

(version 1.0.0, 2011/01/19). MD5: e0276a319393ddf8600164c9512eebae. Download here.

GGA (algorithm configuration design procedure)

(version 1.0.0, 2011/01/19). MD5: cd293971acaf6493cddc068096083a3f.
A binary of GGA is embedded which requires Linux. Also requires a working Ruby installation, with the Ruby interpreter in your environment's path variable.
As we are not licensed to distribute GGA, please contact its authors if you are interested in obtaining this plugin.

MySQL (data manager)

(version 1.0.0, 2011/01/19). MD5: f9ac402dd936a1ff22b7f0b9a37619e0. Download here.
Adds support for MySQL database servers.

R (statistics package)

(version 1.0.0, 2011/01/19). MD5: 0fa12b880400ddb0321896bb7512162b. Download here.
Enables use of an existing R installation to perform statistical tests.

1.0.0 Experiment packages and sample data

Simple sample experiment packages

To use, don't unzip, just use the HAL 1.0 import interface.

Sample configuration experiment

MD5 checksum: 72504ac6e15f29a6290f348ea92e2a9e (15MB, 2011/01/19). Download here.

This sample configuration experiment is based on the ones from Nell et al. (2011) below, but modified to be smaller/faster for use as an example. It contains a Spear 1.2.1 binary for Linux with a subset of (6) parameters exposed, and a subset of the SWV training set including only instances corresponding to verification of gzip (37 total). The experiment runs ROAR for 30 minutes, using PAR1 as metric with a captime of 30s per target run. We suggest running it, and then using the SCD-Based Analysis to analyze the results. Then, try setting up an analogous configuration experiment using ParamILS, and compare its design with the one from ROAR using Comprehensive Pairwise Analysis. For reference, the Spear parameters exposed in the sample are:

  • sp-var-dec-heur - Variable decision heuristic.
  • sp-learned-clause-sort-heur - Heuristic for sorting learned clauses.
  • sp-orig-clause-sort-heur - Heuristic for sorting original clauses.
    All have categorical domains:
    1. Prefer more active variables.
    2. Prefer less active variables.
    3. If equally active, pick more frequent.
    4. If equally active, pick less frequent.
    5. If equally active, pick more asymmetric variable.
    6. If equally active, pick less asymmetric variable.
    7. If equally active, pick the one with larger product of occurrences.
    8. If equally active, pick the one with smaller product of occurrences.
    9. Pick variables with maximal number of occurrences.
    10. Pick variables with minimal number of occurrences.
    11. Pick variables with maximal product of occurrences.
    12. Pick variables with minimal product of occurrences.
    13. Pick more asymmetric variables.
    14. Pick less asymmetric variables.
    15. Prefer variables assigned at larger decision level.
    16. Prefer variables assigned at smaller decision level.
    17. Prefer smaller variables (numerical comparison).
    18. Prefer larger variables (numerical comparison).
    19. Prefer implied literals with shorter reasons.
    20. Take variables as they were created (fixed order).
  • sp-phase-dec-heur: Phase decision heuristic. Categorical domain:
    1. Always pick false phase.
    2. Always pick true phase.
    3. Pick phase at random.
    4. Pick more frequent phase.
    5. Pick less frequent phase.
    6. Pick phase with more watched literals.
    7. Pick phase with less watched literals.
  • sp-rand-var-dec-freq - Random variable decision frequency. Real domain, range [0.000001, 0.05], log-scaled.
  • sp-first-restart - Number of conflicts to the first restart. Integer domain, range [25, 3200], log-scaled.

Experiment packages from Nell et al. (2011):

To use, don't unzip, just use the HAL 1.0 import interface.

Spear: SWV training set experiments

MD5 checksum: 2580b3b6664508e47046eb49f64d668c (259MB, 2011/01/19). Download here.
Requires HAL 1.0 core revision 1.0.0 or greater. Configuration experiments require respective plugins. Validation experiments require SCD-Based Analysis plugin. SWV training instance set is included. Spear binary for Linux included.
Note that the validation experiments correspond to the designs obtained on our compute cluster; the designs produced by running the packaged configuration experiments on other machines will differ. Also note that GGA configuration experiments are not included as we cannot distribute the required plugin.

Spear: SWV test set experiments

MD5 checksum: f7410229b50e45a1d6f183c8525db39c (238MB, 2011/01/19). Download here.
Requires HAL 1.0 core revision 1.0.0 or greater. Analysis experiment requires SCD-Based Analysis plugin. Comparison experiments require Comprehensive Pairwise Comparison plugin. SWV test instance set is included. Spear binary for Linux included.

CPLEX vs Gurobi experiments

Unable to distribute due to licensing restrictions for CPLEX 12.1 and Gurobi 3.0.1; please contact us for assistance in replicating these results.