Mathematical means of studying large and complex but finite systems? I want a list of the sort of mathematics/mathematical tools that are applied to the study of complex and probabilistic systems in order to make quantitative and qualitative observations about their behaviors.
These mathematical tools need not be exact (in fact, I expect most will draw from statistics), but I want a list of methods that are rigorous and useful beyond a specific problem domain.
For instance, what are the mathematical tools behind: 
-Statistical physics (Renormalization group, for instance)
-Large-scale differential equation solvers used in modeling
-Image processing techniques in computer vision (for instance)
-Social Network Analysis
-Compression technologies
-Visualizations of large-scale data
In other words, what are the most interesting and rigorous mathematics applied to large-scale information processing?
A list of techniques and tools:
Sampling techniques in Applied Probability and Stochastic Modeling
Principle component analysis based on eigenvalues of matrix representations of data (plus loads of other stuff related to matrix representations, like singular value decomposition, rank minimization, etc.)
Belief propagation in neural networks 
The PageRank metric on networks 
Random Matrix Theory (for statistical physics)
The finite element method (much more of engineering flavor, but mathematically based and enhanced in its efficiency by all sort of deep mathematics, e.g. from differential geometry)
 A: Random Matrix Theory.
Wigner originally used random Hermitian matrices to model nuclear resonances in large atomic nucleii. In this way he was able to derive a prediction for the spacings between resonances that agreed with experimental data. Since then random matrix theory has been used to model a large variety of complex systems.  A review (from the physics point of view) is at: http://arxiv.org/abs/cond-mat/9707301
Mathematically, random matrix theory is a well-developed, rigorous theory. It has been found to have unexpected relations with e.g. number theory, and random permutations. Questions of universality have been studied in recent work by Terence Tao and Van Vu and co-workers.
A: I have a feeling that you are coming from an engineering rather than a mathematical background. I'm not saying this is bad in any way, the point is that it's sometimes easy to get caught up with all sorts of exciting stuff in mathematics; however the most useful stuff is actually the most basic - which is somewhat different than in, say, computer programming. For many people, something basic like assembler and machine code are not useful at all - whereas something basic like the '>' relation is useful on all levels of mathematics. The basics keep on popping up in mathematics of all levels; in contrast, when you're using, say, PHP, you would not end up defining your own version of the array data type. You have an array type, and you use it, and that's all, you don't go on redefining your own, and to use it you don't even need to know the definition of the one that you have already. Furthermore the tools in higher and higher levels of engineering build on top of, and enhance, what came before. For example the array in PHP can be a linked list, stack, hash table, set, ... This is why you can use very specialized tools easily, and that's why it's encouraged and even necessary.
I feel, and this is not an authoritative opinion, that it is the other way around in mathematics. Generally from what I see the more advanced the tools are in mathematics, the more specialized they are. For example a theorem that gives you perfect understanding of the area it is applicable to might only apply to a very small (e.g. measure zero) subset of your space. To give you an example, all mean-value theorems only work on a measure zero subset of the space of (real, complex, ...) functions (continuous functions). On the other hand it's very rewarding to define even the most basic properties of your mathematical object. For example, you are mentioning social networks. It will keep you busy just to define a meaningful metric or distance function.. and then you'll have 10 times as much work to optimize it to actually work on computers at any sort of acceptable speed. But it is very good to have this sort of thing defined, and is often one of the first actions that people take when they are researching new objects. Contrast this with 'redefining the arrays in PHP'. In this way I feel it is encouraged, and required (in order to be able to use theorems) to use very basic tools. And applying those very basic tools can be very difficult - in opposite to engineering, where using very basic tools is pretty much uniformly very easy.
It is a sign of good mathematics when you can use very basic, general tools with your objects, as opposed to having to use specialized, exotic tools that are difficult to use and have no general application otherwise.
I'd say it's always useful to cover the basics... all houses are built with windows and walls of some sort.
Hope this helps!
