pub type ObjectiveFunction<A> = Box<dyn Fn(&Array1<A>) -> A>;
Type alias for objective function
pub struct ObjectiveFunction<A>(/* private fields */);