  We study dense packings of a large number of congruent non-overlapping
circles inside a square by looking for configurations which maximize the
packing density, defined as the ratio between the area occupied by the disks
and the area of the square container. The search for these configurations is
carried out with the help of two algorithms that we have devised: a first
algorithm is in charge of obtaining sufficiently dense configurations starting
from a random guess, while a second algorithm improves the configurations
obtained in the first stage. The algorithms can be used sequentially or
independently. The performance of these algorithms is assessed by carrying out
numerical tests for configurations with a large number of circles.
