Imagina un terreno con montañas y valles, donde la altura de cada punto la da la función f(x,y). El programa lo divide en una cuadrícula de N×N puntos y calcula la altura de cada uno.

Después suelta p caminantes en puntos al azar. Una semilla fija hace que siempre salgan los mismos puntos de partida.

Cada caminante intenta subir, mira los cuatro puntos de su alrededor (arriba, abajo, izquierda y derecha) y se mueve al más alto, solo si supera al suyo. Se detiene cuando ningún vecino es mejor (la cima de una colina), o cuando llega a un punto por el que ya pasó.

Por último, el programa pinta el terreno como un mapa de colores y dibuja encima los caminos, con sus salidas y llegadas, y marca la mejor cima encontrada. En la imagen entregada hay p = 12 caminantes y la semilla es 42.