The tremendous complexity of contemporary technological processes induces a extremely high complexity in mathematical models that describe the physical laws of nature, but nonetheless computer simulations are indispensable for accurate quantitative predictions. Innovative models accounting for quantum effects or uncertain information are high-dimensional and hugely expensive - the lifetime of the Universe would not be enough to solve them by classical means. However, many such problems exhibit structure that if exploited can significantly reduce the computational effort. This project aims to break the complexity of high-dimensional models, and open them for routine use in computer simulation. This will be accomplished by the development of new methods that reveal hidden low-dimensional structures using classic mathematical methods, such as separation of variables and singular value decomposition. I will substantially extend the power of these methods, and apply them across a variety of important physical problems. We know that our world is three-dimensional, so how do high-dimensional models arise? Imagine a bacterium in a lake. At any point in time it makes a move in an arbitrary direction. We cannot say definitely that the bacterium will reach a certain region in the lake and infect a plant growing there, but we can calculate the probability that this will happen. If we would like to consider all plants growing in a lake together we will have to store in computer memory the probability values for all plants. If we describe the behaviour of two bacteria at the same time, we will square the consumption of computer memory, since independent of the position of the first bacterium the second one still has the freedom to go anywhere. With an increasing number of bacteria, the amount of data explodes exponentially and quickly exhausts any reasonable memory. So the term "dimension" refers to the number of bacteria, and is naturally very high. However, if bacteria move independently it is enough to store probability values just for one of them: the joint probability of the overall situation in the lake is then simply the product of the marginal probabilities. In reality, the bacteria will interact to some extent with near-by bacteria and will be influenced by the ambient flow in the lake. However, it is highly unlikely that a bacterium on one side of the lake will be affected by bacteria at the other. So the volume of data that effectively approximates the whole system will be many orders of magnitude smaller than the total number of degrees of freedom. The concept of high dimension in this example is in fact ubiquitous. An airplane, experiencing a fluctuating load on its wings, quantum effects unravelled by a magnetic resonance spectrometer, circadian rhythms or virus replication - all these phenomena are described by high-dimensional models. I will design methods that set new levels of prediction accuracy in these existing models, in particular such vital problems as subsurface flows of pollutants in an uncertain medium or stochastic virus dynamics, and extend the class of problems that can be tackled. The new methods I am going to develop combine a range of mathematical techniques. The tensor product concept is a powerful data compression method, but it is in fact nothing more than an immediate generalisation of the separation of variable concept for continuous functions that can be accurately computed via the singular value decomposition. The workhorses in the tensor product framework are alternating optimisation algorithms. Their convergence can be substantially enhanced by employing ideas from classical Krylov iterative methods for matrix equations. I will extend tensor product methods further, and embody them in publicly available software with transparent user interfaces to popular scientific packages in order to encourage other researchers to try the new methodology in real-life problems.