A penalty method for bilevel programming problems | lit.salon