While SciPy has its own optimization package, OpenOpt has access to more optimization solvers and can involve Automatic differentiation.