# what is the best theory/model to use for prediction in multivariate data?

I use software for pollutant propagation on rivers that takes as input a set of parameters ($p_1,p_2,\ldots,p_n$) and creates an output file which is basically a matrix where on each row the concentration of the pollutant in various places along the river at a given timestamp is given.

\begin{array} {|r|r|r|r|r...|r|} \hline \text{TIME} &500\,\text{m}&1000\,\text{m}&1500\,\text{m}&2000\,\text{m}&2500\,\text{m}&...&25000\,\text{m} \\ \hline 2015/12/07 - \text{4:50:00}&0.75&0.71&0.6&0.58&0.55&...&0.12 \\ \hline \hline 2015/12/07- \text{4:55:00}&0.71&0.70&0.58&0.56&0.51&...&0.10 \\ \hline \end{array}

My question is: what models/theories are suitable to be used to predict, based on a set of given INPUT parameters, the OUTPUT that would be closest to what the software will give as a result?

Also how many pairs INPUT/OUTPUT will I need to have in order to minimize the error?

• It's not very clear what your input parameters represent. Could you clarify this? It seems like they could be initial conditions for the pollution at various points along the river. Oct 29 '15 at 16:06
• If I understand your question it sounds like you have some software that models the pollutants in the river over time. If this is the case, why do you want to find a separate model that approximates what your software gives you already? Are you just trying to make a simplified model? Is this an interpolation problem? If you are trying to make a simplified model then do you know the water velocities at points in the river? Oct 29 '15 at 19:57
• @TylerOlsen The input parameters are: startDate, endDate, Polutant Type, Pollutant Concentration, River Chainage and a set of pairs [Pollutant Quantity, DateTime] representing how much pollutant was thrown in the river and the moment when that happened. Oct 31 '15 at 10:58
• @James The software we have runs on a server and we need internet connection to connect to that software and run a simulation. Beside this, the server could happen to be down at some point when we need to run a simulation. So, as a backup solution we would want to "guess" , given an input i what is the closest output o that the software would give it would have the chance to run. We can use a historical archive of past N real simulations (pairs of input/output). Maybe I can use machine learning? Oct 31 '15 at 11:02
• It sounds like you're just trying to solve the transport equation for a scalar field (aka: convection-diffusion-reaction equation). This is a PDE that describes precisely your situation. If I had to guess what your software was doing, I'd say that it's solving a 1D version of this model, taking your input parameters as initial conditions and making assumptions about the river speed at every point. Check out this wiki page for more info: en.wikipedia.org/wiki/Convection%E2%80%93diffusion_equation Oct 31 '15 at 15:10