recursive bisecting optimizer