I am trying to solve an NLP problem, using CONOPT4. I have previously solved the model using different machines both operating in Windows, and I managed to receive the same solution. However, when I used a machine operating on Linux I got a different solution even if I used the same gams version, the same solver version and the same settings. Do you know what could cause the solution to be different? Is there any way to avoid this?
There is no way to avoid this. Small numerical errors due to differences in the CPU and/or runtime system result in different paths in the algorithm and potentially to significantly different solutions. This is know as performance variability and with local solvers like Conopt you might end up in a very different local optimal solution. Perhaps, if you provide a better starting point you can get Conopt to converge to the same local optimum independent of the particular architecture.