Boat riddle as a combinatorial optimization problem?
The river crossing problem using integer programming is solved by Börndorfer et al. in [1].



[1] Borndörfer, Ralf, Martin Grötschel, and Andreas Löbel. Alcuin's transportation problems and integer programming. ZIB, 1995.