  We recently highlighted a fundamental problem recognized to confound
algorithmic optimization, namely, \textit{conflating} the objective with the
objective function. Even when the former is well defined, the latter may not be
obvious, e.g., in learning a strategy to navigate a maze to find a goal
(objective), an effective objective function to \textit{evaluate} strategies
may not be a simple function of the distance to the objective. We proposed to
automate the means by which a good objective function may be discovered -- a
proposal reified herein. We present \textbf{S}olution \textbf{A}nd
\textbf{F}itness \textbf{E}volution (\textbf{SAFE}), a \textit{commensalistic}
coevolutionary algorithm that maintains two coevolving populations: a
population of candidate solutions and a population of candidate objective
functions. As proof of principle of this concept, we show that SAFE
successfully evolves not only solutions within a robotic maze domain, but also
the objective functions needed to measure solution quality during evolution.
