This paper explains how search algorithms can find particular molecules in an enormous chemical space (10 60 molecules) by considering only a tiny subset (typically 10 3-6 molecules). We use a simple, nonchemistry related search problem that is easy to interpret quantitatively. We show that a genetic algorithm (GA) can find one particular 39-character sequence by considering at most 30,000 out of 6.7×10 55 possible sequences (Figure ). The reason is that 77% of the 6.7×10 55 possible sequences have at least one correctly placed character (with a score of 1), so it is easy to find such sequences by random chance. Search algorithms like GAs then combine these sequences to make higher-scoring sequences, in an iterative fashion, until the target sequence is obtained. If we view closely related sequences with correctly placed characters as being "connected" then we can envisage the search space as being filled with an enormous number of interconnected paths that connect sequences with few correctly placed characters to the target sequence (Figure ). It is easy to find a distant point on one of these paths and relatively easy to follow the path to the target using search methods such as GAs, provided the score changes incrementally as the sequence is changed (Figure ). As step along the path represents an edit of the sequence so the length of a given path from a given point to the target is the so-called edit distance, where the change in a single character corresponds to an edit distance of one. This means that the shortest possible path from a sequence with only one correctly placed character to the target is only 38. So while the sequence space is vast, the shortest distance between any pair of points involves at most 39 changes.