Сокобан - это логическая игра-головоломка. Подробнее тут: http://ru.wikipedia.org/wiki/Сокобан
Как бы так сгенерировать все карты сокобана, имеющие заданный максимальный размер (пусть 8х8), заданное количество ящиков (пусть 3), и решаемые ровно за заданное количество шагов (пусть 20)?
Предлагайте ваши алгоритмы :)