Optimization = maximization/minimization

we do this in calc class via first derivative test, but in "real life"
we use numerical techniques;
however, many of these are based on understanding how the derivative
tells us that we're near maxes/mins.
(e.g., the gradient method explicitly uses this, and simulated
annealing implicitly uses it: near an optimum, if you take -small-
steps, you won't go up/down much)


Many of these are stochastic (i.e., probabilistic),
(i.e., monte carlo?),
e.g., simulated annealing
(b/c it's like cooling metals etc.:
 at each step, jump a certain (probabilistic?) distance, accept the
 new state if it's lower energy, or probabilistically if it's higher
 energy; continue until it's steady state, then lower the temperature;
 do this temperature lowering logarithmically (Newton's law of cooling
 ;-), and you'll get an optimum)

-----
there's also hill-climbing (i.e., gradient), but this requires taking
some derivatives.
