An optimization framework with two hierarchical levels where upper-level decisions constrain lower-level optimization problems.