Wolf, Goat, Cabbage banner


Period: April 2019
Languages: Lisp
Wrote a function that implemented a depth-first solver for the wolf, goat, cabbage problem (which is a river crossing puzzle). The problem consists of a farmer who purchased a wolf, goat, and a cabbage from the market, and to get home, needs to cross a river by a rented boat. The farmer can only carry himself and a single item (i.e. wolf, goat, or cabbage) as he crosses the river. If left unattended, the wolf would eat the goat, or the goat would eat the cabbage. Thus, the farmer's challenge is how to move his three purchases to the other side of the river, leaving each purchase intact (i.e. goat not killed, and cabbage not eaten). This problem was solved using Depth-first search (written in Lisp) to try various paths until a solution was finally achieved.

GitHub Source Code