Learning Based Algorithm