Quoted from ahalls_dsc
The full program aims to relocate a country's worth of employment and population using a distance deterrence function. If I'm understanding this point in the program correctly, the array is necessary to be able to optimise the entire modelled area at once. The modelled area we are working with is many times larger than any previously, hence the overflow and the need for optimisation.
Quite often, the complexity of the algorithm used for a class of problems is such that when the problem size is increased drastically the previously well-performing algorithm becomes unsuitable. For example, in FEA models, a banded matrix solver is used instead of a dense matrix solver.
Another issue, which has already been discussed somewhat, is that when the problem becomes huge it is no longer feasible to load all the data, process everything in memory, and then write out the results.
Do you have a mathematical description of the problem, and some references to previous work?
