In tuning, complexity is a characteristic of temperaments, which can be used to evaluate and compare them. Generally speaking, if a temperament has high complexity, that means that interesting pitches (e.g. ones consonant with each other) are many generators apart, so useful scales tend to have many notes. If a temperament has low complexity, fewer generators are required, and scales with fewer notes are more likely to be useful.
Complexity and error are both usually treated as undesirable characteristics, but there is a trade-off between them in that very low complexity temperaments (e.g. small EDOs) cannot have low error, and very low error temperaments (e.g. microtemperaments or JI itself) cannot have low complexity. Badness is a way to combine complexity and error such that a search for low-badness temperaments yields results with a particularly good trade-off between complexity and error.
Complexity of an interval in a temperament
Besides saying that a temperament has a high or low complexity, we also speak of the complexity of an interval in a temperament. If an interval has a low complexity in a certain temperament, that means it can be reached in only a few generators, so it is likely to appear frequently in scales of that temperament. For example, in meantone temperament, the generator represents 3/2, so clearly 3/2 has a very low complexity, since it can be reached in only one generator. In contrast, 45/32 can only be reached in 6 generators so it has a higher complexity and will tend to appear much less frequently in meantone scales.
The complexity of a chord likewise refers to the number of generator steps required to generate all the pitches of the chord.
Note that the concept of complexity applies not only to rank-2 temperaments, but temperaments of any rank. For rank >2 temperaments, the lattice is a higher-dimensional space so there could be different ways of measuring the area/volume/etc. that a chord takes up.
Some specific, mathematically rigorous definitions of "complexity" are...