choosing the right algorithm, types of problems, unconstrained vs constrained problems, Joe Keller's example of living longer