I understand that I can draw a state-space graph for any problem. However, here is the problem: I can't really figure out how to make production systems.
I am solving the FWGC (Farmer, Wolf, Goat, Cabbage) River Crossing Puzzle using a state-space search. So, my tasks are that:
Represent the state-space graph (which I know how to do)
Write production systems.
My questions: How do I write production systems?
The thing that confused me, was the production system example in Rich's book (about the water jug problem), where he has imagined all the states possible and wrote the next state for them.
Here in the FWGC problem, I see some problems while writing the production system.
For instance, for a given state, there are multiple possible next states, i.e. a farmer can take Goat, Cabbage, Wolf, or go alone to the other side (assuming that all states are safe, just for the sake of simplicity).
So, how would I represent the same state going to multiple next states in production systems?
What I have tried-:
Then, I googled a pdf
https://www.cs.unm.edu/~luger/ai-final2/CH4_Depth-.%20Breadth-,%20and%20Best-first%20Search.pdf
Is that what I call the production system for this case?
But, here are my reasons why it should not be called a production system:
There might be other possible states as well.
It is showing only 1 solution.
So, how do I actually learn to create production rules (I know how to make state-space representation better as I have read that J.Nillison's book which was GOLD in this matter)? And, what would be the production rules in this case?