Background: Incomplete Search Algorithm (GSAT)
A whole flawed solution is revised by hill-climbing search (a variable value is revised so that the number of constraint violations is minimized).
When trapped at a local-minimum, search process is restarted from a randomly generated new initial state.