Algorithm configuration 2026-11-05
Algorithm configuration chooses settings of a parameterized algorithm to improve its performance on a specified class of inputs. An algorithm parameter space describes the allowed settings; the objective function may measure runtime, solution quality or another declared cost. The target algorithm solves the instances, while a configuration procedure searches for settings under which it works well.[ref]
For an original example, suppose two settings have runtimes seconds and seconds on two instance types. With equally likely types, the mean costs are and seconds, favouring . If the first type instead has probability , the means become and seconds, favouring . There is no distribution-independent best setting in this example: the intended workload is part of the optimization problem.
Measured cost estimates also depend on time limits, random seeds and which instances were sampled. Report those choices and evaluate the chosen setting on previously unused instances. Reusing the tuning results as the only evidence of improvement rewards settings that happened to fit the observed sample.
ParamILS supplies a concrete search procedure for this problem. Algorithm selection is a related decision about which algorithm to run for an instance, whereas the example above fixes one parameterized target and chooses its settings. In both cases, specifying what may change is necessary to interpret an experimental comparison.
Algorithm parameter space 2026-11-05
An algorithm parameter space, commonly written , is the set of allowed settings for a parameterized algorithm. It is the search space of algorithm configuration, rather than the set of problem instances that the target algorithm must solve. ParamILS explicitly accounts for parameters whose relevance depends on other settings.[ref]
For an original finite example, let a mode be either or . Mode has an extra setting , while mode ignores . A rectangular encoding has tuples, but only four distinct effective configurations:
The star means that the conditional algorithm parameter is inactive. Treating the three encodings of as three distinct experiments spends effort revisiting the same behavior. If is a forbidden parameter combination, the valid effective space has three members.
The representation also determines what a nearby configuration means. A search that changes one active parameter can move among the settings or change mode; changing an inactive value alone does not change behavior. Thus the number of encoded tuples, number of meaningful settings and neighborhood used by local search are separate design choices.
Continuous settings require declared ranges and a search method that supports them; replacing a range with a finite grid changes the problem being searched. Whatever the representation, a returned setting must be valid in before its measured cost can be compared with other candidates.
BasicILS 2026-11-05
BasicILS is the fixed-evaluation variant of ParamILS. In , competing parameter settings are compared using the same benchmark runs, with matched instances and random seeds.[ref] The comparison rule supplies the cost estimates used by the surrounding iterated local search.
For mean runtime, write
where is the recorded cost on the specified run. Consider invented costs seconds and seconds. With only the first run, appears better, . Across all three runs, its mean is seconds while remains at seconds. Choosing therefore affects both evaluation expense and how much instance variation the estimate captures.
Using the same run list makes that example a comparison on common evidence. Comparing only on easy instances with on harder ones would answer a different question. Even a matched finite sample can be unrepresentative of future workloads, so the final configuration still needs evaluation on unused instances.
FocusedILS changes the allocation of runs rather than requiring the same fixed for every explored candidate. Adaptive capping can avoid completing an already-lost runtime comparison under a valid lower-bound rule. Neither modification makes a finite observed mean a proof of the best possible setting in the entire algorithm parameter space.
A conditional algorithm parameter matters only when a stated condition on other settings holds. In an algorithm parameter space, the condition determines whether the child parameter is active. The ConfigSpace guide samples conditional settings only when their activation conditions are met.[ref]
For an original example, an algorithm has modes plain and tuned. A depth setting affects only tuned mode. The naive rectangular encoding has eight pairs, but the distinct effective settings are
The four plain-mode encodings describe the same effective choice, so there are five settings, not eight. The star denotes inactivity; it is not an additional depth value used by the algorithm.
ParamILS excludes local moves that change only an inactive parameter, since such a move does not alter effective behavior.[ref] Switching from plain to tuned activates a choice of depth, while changing an unused plain-mode depth alone supplies no new measured behavior.
A forbidden parameter combination instead rules out a joint assignment. Inactive does not mean forbidden, missing data or a numeric zero. Recording the mode and activity conditions makes a returned configuration interpretable, especially when comparing costs or reusing settings in another implementation.
A forbidden parameter combination is an assignment excluded from an algorithm parameter space by an explicit validity rule. Each individual value may be allowed, while their joint use is not. The ConfigSpace guide implements this distinction using forbidden clauses and their conjunctions.[ref]
For an original counting example, let mode , cache and worker count . There are initially eight assignments. Suppose the rules forbid both and . Each rule excludes two assignments, but they overlap on one:
Subtracting four without accounting for the overlap would reject an assignment twice. The count can also be checked directly: all four cache-off assignments are valid, and only survives with the cache on.
This differs from a conditional algorithm parameter. A condition says whether a setting is active; a forbidden rule says that an otherwise represented combination is inadmissible. An inactive setting can be irrelevant without making the parent configuration invalid.
Validity is also distinct from the objective function. A slow valid run has a measured performance cost; a forbidden combination lies outside the declared search domain. Giving every invalid combination an arbitrary large cost changes the mathematical model and can waste evaluations or accidentally make an invalid result appear competitive. Check the validity rule before treating a proposed configuration as an experiment.
ParamILS 2026-11-05
ParamILS is a framework for algorithm configuration based on iterated local search. It explores an algorithm parameter space using improvements to nearby configurations, perturbations and occasional restarts. BasicILS compares configurations on a fixed number of matched training runs; FocusedILS adapts how many runs support a comparison.[ref]
The distinctive efficiency idea of adaptive capping is to stop spending evaluation time on a candidate once it cannot win the comparison under the stated cost model. Consider an original example with three fixed instances and mean nonnegative runtime as the objective function. A fully evaluated incumbent has total time seconds, hence mean seconds. If the first two candidate runs already total seconds, even a zero-time final run leaves mean at least . Rejecting that candidate does not require finishing the last run.
This argument depends on its assumptions: the comparison uses the same fixed instance set and a lower bound on unfinished cost. It cannot be transferred unchanged to arbitrary quality scores or a different timeout penalty. The paper distinguishes trajectory-preserving capping from a more aggressive heuristic variant; faster rejection does not always carry the same guarantee.[ref]
The method turns tuning into a measured optimization experiment, but a good observed configuration is not a proof of a global minimum. The neighborhood, evaluation budget and deployment workload remain relevant to what the returned setting establishes.