1. No Profile Picture
Registered User
Devshed Newbie (0 - 499 posts)

Join Date
Dec 2010
Posts
1
Rep Power
0

#### LISP project HELP!!

Artificial Intelligence: Logical Planner
Problem Statement:
It is required to develop a logical planner that can be given an initial state and a final state of a set of blocks, it can generate a plan to reach the final state from the initial state. For example:
Given the following initial state and goal state of the blocks world:

Initial Goal
Your program should generate this plan: unstack(a, b), putdown(a), pickup(b), stack(b, a), pickup(c),
stack(c, b)
Where pickup and putdown handle picking and putting from and on the table whereas stack and unstack
handle stacked blocks. You can assume that the movement of the robot arm is implicit in the above
four operations, i.e when the operator unsatck(a, b) is given, the arm moves to the location of a
implicitly.
Problem Analysis:
You can describe the initial state and goal state using the predicates on(X,Y), clear(X), holding(X),
ontable(X). holding(X) means that a block X is being gripped by the Robot arm and handempty means
that the arm is empty. A state can be described as a list of predicates, e.g. a state can be
described as:
[handempty, ontable(b), on(a, b), ontable(c)]
The four operators can be defined using precondition and effect of the operations e.g. the unstack
operator can be represented as follows:
move(unstack(X,Y),[handempty,clear(X),on(X,Y)],
[del(handempty),del(clear(X)),del(on(X,Y)),
The logical planner will perform the following functions:
1. Test if the current state is the goal state
2. If not, it will generate a move, test if the preconditions are satisfied, change the current
state, test if the changed state already generated, if not it will consider the changed state
as the current state, memorize it together with the move, and go to step 1.
3. If the changed sate is already generated, generate other possible moves, if it is not possible
to generate other moves, print out a message that the system could not generate a plan.
2. Congratulations: you know how to copy and paste a homework assignment description into a text box on an online forum.

Your next step is to actually do the homework. Because we won't do it for you.

Maybe you need help with something specific? Been spending your time in class asleep? Not been going in the first place?
3. Originally Posted by requinix
Been spending your time in class asleep? Not been going in the first place?
Maybe he had the same instructor I did for AI/Lisp way back a generation ago. He told us to read such and such in the book. Then in class he read such and such from the book aloud, rarely making any further comment.

But you have to either read the book or pay attention, one of the two.
4. Originally Posted by medialint
Then in class he read such and such from the book aloud, rarely making any further comment.
I hate those kinds of instructors. Either
a) What's the point of reading the book if he'll simply read it in class? or
b) What's the point of going to class if you can learn the material from the book?

It's not fair to call them "instructors": telling someone to go read the book is like us telling someone to go use Google (not that I'll stop doing that anytime soon, mind you).
5. Yeah and it wasn't some city college or continuing ed class it was credits toward my undergrad in my major ... and it was a private school that wasn't cheap. I got robbed on that. I am quite sure he got one of the worst reviews from me (teacher/instructor/professor eval) in all my educational history. Thankfully I didn't have much of that, but it really was an Artificial Intelligence course that he taught. At least we got a field trip to some medical research lab.

After reading the problem it really does seem like it could be the same class I took in the late 1980's. AI with Lisp although it was mostly just theory (said reader didn't know LISP too well himself methinks). We were working with hypothetical robot arms then too.
Last edited by medialint; December 3rd, 2010 at 11:56 PM.