1 / 9

Προβλήματα Προσχεδιασμού

Προβλήματα Προσχεδιασμού. Ο κόσμος των κύβων. Πρόβλημα προσχεδιασμού κατάλληλων πύργων Η Κατάσταση του κόσμου μπορεί να αναπαρασταθεί με μια λίστα από : on(Block1,Block2) ή on(Block,TablePlace ) Οι δράσεις είναι : to_block(Block1,PresentPos, Block2)

gainesd
Download Presentation

Προβλήματα Προσχεδιασμού

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Προβλήματα Προσχεδιασμού

  2. Ο κόσμος των κύβων • Πρόβλημα προσχεδιασμού κατάλληλων πύργων • Η Κατάσταση του κόσμου μπορεί να αναπαρασταθεί με μιαλίστα από: on(Block1,Block2) ή on(Block,TablePlace) • Οι δράσεις είναι: • to_block(Block1,PresentPos, Block2) • μεταφέρει το Block1 από τη θέση PresentPos πάνω στο Block2 • to_place(Block,PresentPos, Place) • μεταφέρει το Block από τη θέση PresentPos πάνω στη θέση Place

  3. Ο κόσμος των κύβων a • Αρχική κατάσταση: • [on(a,b), on(b,p), on(c,r)] • Τελική κατάσταση: • [on(c,r), on(b,c), on(a,b)] a b b c c p q r p q r

  4. Ο κόσμος των κύβων • transform (State1, State2,Plan)  Plan is a plan of actions to transform State1 into State2. • transform (State1, State2, Plan) :- transform (State1, State2, [State1], Plan). • transform (State, State, Visited, [ ]). transform (State1, State2, Visited, [Action|Actions]) :- legal_action (Action, State1), update(Action, State1, State), not member (State,Visited), transform (State, State2, [State|Visited], Actions).

  5. Ο κόσμος των κύβων • legal_action (to_place(Block, Y, Place), State) :- on (Block, Y, State) , clear (Block, State), place (Place), clear (Place, State). legal_action (to_block (Block1, Y, Block2), State):- on (Blockl, Y, State), clear (Block1, State), block(Block2), Block1 ≠ Block2, clear (Block2, State) .

  6. Ο κόσμος των κύβων • clear (X, State) :- not member (on (A,X), State). • on (X, Y, State) :- member (on (X, Y), State). • update (to_block (X, Y, Z), State, State1) :- substitute (on (X, Y), on (X,Z), State, State1). • update (to_place (X, Y, Z) , State, State1) :- substitute (on (X,Y), on(X, Z), State, State1). • substitute (X, Y ,Xs, Ys)  Exercise

  7. Ο κόσμος των κύβων • Το πλάνο του απλού προβλήματος μας είναι το ακόλουθο: [to_place(a,b,q), to_block(a,q,c), to_place(b,p,q), to_place(a,c,p), to_block(a,p,b), to_place(c,r,p),……………, to_block(a,p,b)] • Το πλάνο περιέχει 25 κινήσεις!

  8. Ο κόσμος των κύβων • Αντικαθιστούμε το legal_action με την πιο ευφυή επιλογή κινήσεων choose_action: • choose_action(Action, State1,FinalState2):- suggest(Action, FinalState2), legal_action(Action, State1). choose_action(Action, State1,FinalState2):- legal_action(Action, State1). • suggest(to_place(X,Y,Z), FinalState):- member(on(X,Z), FinalState), place(Z). suggest(to_block(X,Y,Z), FinalState):- member(on(X,Z), FinalState), block(Z). • Το πλάνο τώρα είναι: [to_place(a,b,q), to_block(b.p.c), to_block(a.q.b)]

  9. Ο κόσμος των κύβων • Πειραματισμός με διάφορα προβλήματα: test_plan(NameOfTest, Plan):- initial_state(NameOfTest,I), final_state(NameOfTest,F), transform(I,F,Plan). initial_state(test1, [on(a,b), on(b,p), on(c,r)]). final_state(test1, [on(c,r), on(b,c), on(a,b)]). block(a). block(b). block(c). place(p). place(q). place(r). ?test_plan(test1, Plan).

More Related