Frédéric Dandurand
Senior researcher in AI (Artificial Intelligence)
  • Welcome
  • CV
  • Software Design
  • Research
  • Neural Art
Research Projects
  • Automatic Maxima Detection
  • Self-Organizing Maps
Problem Solving
  • Hanjie puzzles
  • Gizmo task

GNU General Public License

Programs and codes distributed on this website are free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Paper copyrights

Papers are posted on this site as an efficient way to distribute reprints. The respective authors and publishers of these works retain all of the copyrights to this material. Anyone copying, downloading, bookmarking, or printing any of these materials agrees to comply with all of the copyright terms. Other than having an electronic or printed copy for fair personal use, none of these works may be reposted, reprinted, or redistributed without the explicit permission of the relevant copyright holders.

Comments, suggestions, questions, bugs? Please email: frederic.dandurand@gmail.com

Valid XHTML 1.0 Transitional
Valid CSS!

Hanjie Puzzle Applet

With the Java applet below, play with Hanjie puzzles! The applet features:

  • a selection of existing puzzles
  • the ability for users to enter their own data about the contraints on rows and columns
  • algorithmic solvers to find puzzle solutions, using one of two methods:
    1. A heuristic constraint-satisfaction ("smart") solver that optimally extracts information from a given line (row or column), and uses a heuristic to select the order in which lines are solved.
    2. A standard depth-first search technique, that can be used to demonstrate how depth first search works

Note: Java required to view the applet below.


Demonstration of depth first search

To see how a depth-first search algorithm solves Hanjie puzzles:

  • Load a puzzle in the applet above
  • Select the "Use computer solver" tab
  • In the drop down list for "Solver type", select "Depth first search"
  • In the "Execution" drop down list, select "Step by step"
  • Click on the "Solve" button
  • In the "Status" text area, you will see messages about the progress of the search (which lines are tested, if the solver needs to backtrack, etc.)
  • Click on "Next step" to process the next solving step