I am an economics/stat guy who uses quite a bit of optimization (maximum likelihood, simulated maximum likelihood), constrained optimization (mathematical programming w/ equilibrium conditions), dynamic programming, etc.
I am wondering how Python compares to R for optimization. In my opinion (feel free to argue this and show me if I am wrong), R is not great for optimization in that it does not have automatic differentiation nor great solvers for higher dimensional problems. Programs like AMPL (can hook up to any world class solver) or even Matlab with KNITRO solver won't make you explicitly enter a horribly complex jacobian, hessian, nor sparsity pattern, but R (even IPOPTR) makes you do this. As such, I find R poor for optimization.
Is Python any better? Does it have the automatic differentiation feature? Can it link up to world-class solvers? Any information on this would be great. Otherwise, I fear I will have to do my work in AMPL or CPLEX, which I do not know, and learning yet another language isn't my highest priority unless I need to.