Conditional algorithm parameter 2026-11-05
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 areThe 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]
ParamILS: An Automatic Algorithm Configuration Framework by Frank Hutter and others. Section 3.1, one-exchange neighborhood and conditional-parameter handling
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.
Forbidden parameter combination 2026-11-05
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]
ConfigSpace User Guide. 3rd Example: Forbidden clauses; ForbiddenAndConjunction
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.