## Is Mathematica worth it?

Background: I’ve used Mathematica for 12 years now. I mostly use it to do pure math symbolic calculations (i.e. group theory).

1. Numerical optimization in Mathematica.

I strongly DO NOT recommend Mathematica for that task if your examples are medium to large scale and nonlinear-non-convex.

Mathematica optimization solvers (and add-ons) are rather limited, have poor performance for medium to large scale nonlinear problems (i.e. long calculation times) and don’t offer a complete toolbox to cover mixed integer nonlinear or linear problems.

If you want to buy a commercial software for that task, I highly recommend purchasing AMPL or GAMS. There are a lot of open-source solutions (e.g. http://www.coin-or.org/) and the NEOS server can help in carrying out tests (http://www.neos-server.org/neos/).

There are also a lot of open-source codes for derivative free optimization if your objective or constraint functions involve noise, are non-differentiable or their derivative is not available for some reason (e.g. the result of a computer simulation in another program).

2. Symbolic calculations in Mathematica.

If your main focus is symbolic calculations, then I highly recommend Mathematica.

3. Performance

If you want your code to have low calculation times, then I suggest coding things in a compiled language (e.g. C, Fortran) and using open source libraries.

I make this remark because I initially used Mathematica for numerical optimization as well as other numerical code and I concluded that calculation times were too long for medium to large scale problems I was considering at the time. I have since moved to AMPL and also code in C using open-source and home-made numerical libraries.

There are a ton of open-source (and very reliable) linear algebra, algebraic (or differential) equation solving routines and optimization solvers (e.g see http://www.netlib.org/).

##### How to run Mathematica in server?

Northwestern University School of Management Mathematica

## Leave a Reply