A fun Java 8 combinatorial search project that can be used in any course on advanced algorithms or artificial intelligence that deals with the issues of combinatorial search and optimization.
Arrange the given list of five-letter words into as few "bins" as possible, under the hard constraint that no two words placed in the same bin may have the same letter in the same position.
An automated tester is provided so that both students and instructors can at any time try out their solutions for pseudorandomly created problem instances.