Kauffman's NK model (1993) generates tunable rugged fitness landscapes. N is the genome length (binary string of N bits); K is the number of other loci each locus interacts with (epistasis).
K=0: smooth landscape, single global peak (multiplicative, no epistasis). K=N-1: maximally rugged — uncorrelated landscape, exponentially many local optima.
The landscape (top) is visualized in 2D via random projection of the high-dimensional binary genotype space. Each color dot is one individual; brighter = higher fitness.
The trajectory panel shows best (green) and mean (white) fitness over generations. Increasing K makes evolution harder — populations get trapped on local optima, and the number of optima grows exponentially with K.