|
Post by Hannes Vilhjalmsson on Feb 2, 2009 11:43:35 GMT -5
Use this thread to post questions or comments regarding the first programming assignment (the LISP search assignment).
|
|
|
Post by Arnar Birgisson on Feb 2, 2009 13:45:43 GMT -5
Hey all, just letting you know I'm here. I'll be in RU on Thursday on, but don't hesitate to post questions here or in email. Here is preferred as then others can benefit from it as well.
|
|
|
Post by Richard Ottó O'Brien on Feb 3, 2009 9:00:39 GMT -5
Sælir, ég er að vinna í fyrsta verkefninu og ég er ekki alveg klár á því hvernig ég á að formúlera þetta "basic search problem". Á ég einfaldlega að láta þetta líta svona út? Basic Search Problem
1. S0 <-- check initial state 2. GOAL? <-- check state for goal 3. SUCC <-- check successor function 4. solution <-- search(S0, GOAL?, SUCC) 5. perform(solution)
|
|
|
Post by Hannes Vilhjalmsson on Feb 5, 2009 19:26:31 GMT -5
Pretty much. Do this explicitly in the code along with some comments, e.g. instantiate the state struct in a variable that you call the initial state, define a function you call a goal check and a function you call a successor function. Then separately, you define a search function that takes all of these as parameters and returns a solution. You do not have to create a perform function, since it's enough to print out the solution path. To improve on the re-usability of your search function, you could also pass in a function that it uses to insert nodes into a fringe list. The function passed in could either insert at the front or the back and therefore the same search function can be used to perform either a BF or a DF search. To better understand how to manipulate class-like data structures in LISP (especially since this code heavily uses them), I suggest you read this page on LISP structures (it compares it to C/C++).
|
|
|
Post by Richard Ottó O'Brien on Feb 8, 2009 12:45:54 GMT -5
I have another question, this time regarding the iterative-deepening algorithm. It was my understanding that we did not have to implement heuristics or "rule of thumb", but this iterative-deepening search does use heuristics. I am already finding this exercise very difficult. Mainly due to the cunfusion factor of programming with lisp, I am experiencing. Ultimately am I then mistaken to believe that this ID search is optional for a full grade for the exercise or not?
|
|
|
Post by Hannes Vilhjalmsson on Feb 8, 2009 17:23:22 GMT -5
I think you are confusing the "Iterative Deepening Search" with "Iterative Deepening A*" or "IDA*".
The assignment calls for the uninformed "Iterative Deepening Search" algorithm as described in Figure 3.14 in the textbook. This is an iterative version of the "Depth-limited Search" (a simple depth first search with a limit to how deep it can go), where the depth limit is incremented in each iteration.
Hope that clarification makes life a bit easier ;-)
|
|
|
Post by Stefán Einarsson on Feb 9, 2009 3:57:51 GMT -5
Er hægt að fá einhver hint um hvernig best væri að tákna grafið í lispinu, til að geta leitað í því?
|
|