optimization & matrix computation algorithms