HAL changelog - 1.0.0 to 1.1.0 ------------------------------------------------------------------------------- User interface: * A help page has been added, with links from some of the more confusing pieces of the UI (blue boxes!) * Algorithm specifications can be cloned from a previously-specified algorith! * Initial movement toward bootstrap.js in some of the UI. More to come. * Target algorithm runs now have run status pages, accessible from the experiment run status page. * All child runs of an experiment are viewable in the run status page, with auto-refresh. * The Log table is now browseable/filterable in the UI. * Users can now give names to configuration experiment results, and use those names in further experiments. * Fixed some database contention with AJAX requests on experiment monitor pages. * HAL status page was refactored slightly. * HAL status page now polls adaptively, and the requests will never outrun the server. * Complete overhaul of algorithm and experiment specification, with more to come. * Some minor changes to the plots (titles, axes, tics) Data management: * Many HAL objects are now populated lazily when retrieved from the database. * Query optimisation on most of the more complicated retrievals. * Some API cleanup to remove unused arguments and keys. * Retrieval of instance distributions and metaproblem instances is much speedier. * The log table is now circular (but large), with buffered commits, to avoid flooding. * Imports of objects with relative paths should now work, without causing a huge tree under imports/ to be created. Execution management: * Retry scheduling has been made less aggressive. * Support for TORQUE clusters. * Runtime accounting has been made more consistent in some edge cases. * Execution managers can now decorate active runs with annotations (e.g. cluster job ids). * Local and SSH execution managers now log run output by default (into /runlogs) HAL primitives: * Friedman test has been added to the statistics API. * Domains of type 'Algorithm' are now available for meta-algorithm parameters, in order to enforce constraints. * Metrics have been overhauled and divided into cases based on various termination criteria. * Initial support for instance features and feature extractors. Other bug fixes: * Many edge cases with run termination, cluster/ssh execution, and output monitoring have been fixed. * Many potential deadlocks when using SQLite have been fixed. * Terminated runs will not be used to fulfill new run requests with the same parameters. Only runs that finished successfully will be used.