Penalty Algorithm