100 likes | 213 Views
Setup. Temporary webpage for this tutorial: http://www.dongkyu.com/ICARUS_Tutorial/. Exercise 1: Rule-based Deductive Reasoning. Blocks World. A. B. C. D. (block A xpos 2 ypos 2 width 2 height 2 shade 1) (block B xpos 4 ypos 2 width 2 height 2 shade 1)
E N D
Setup Temporary webpage for this tutorial: http://www.dongkyu.com/ICARUS_Tutorial/
Exercise 1: Rule-based Deductive Reasoning Blocks World A B C D (block A xpos 2 ypos 2 width 2 height 2 shade 1) (block B xpos 4 ypos 2 width 2 height 2 shade 1) (block C xpos 6 ypos 2 width 2 height 2 shade 1) (block D xpos 8 ypos 2 width 2 height 2 shade 1) (table T xpos 0 ypos 0 width 14 height 2 shade 1)
Concepts to Define (on ?block1 ?block2): ?block1 is on top of ?block2. (on-table ?block ?table): ?block is sitting on the ?table. (holding ?block): The gripper is holding ?block. (wider-than ?block1 ?block2): ?block1 is wider than ?block2. (pyramid ?block1 ?block2): There exists a pyramid of at least two blocks, with ?block1 at the top and ?block2 at the bottom. For the purposes of this exercise, a pyramid is a structure in which blocks are stacked from bottom to top in order of ascending width.
Tests and Expected Output A B C D Scene 1 (ON-TABLE A T1) (ON-TABLE B T1) (ON-TABLE C T1) (ON-TABLE D T1)
Tests and Expected Output A B C D Scene 7 ((PYRAMID A D) (PYRAMID B D) (PYRAMID C D) (WIDER-THAN B A) (WIDER-THAN C A) (WIDER-THAN C B) (WIDER-THAN D A) (WIDER-THAN D B) (WIDER-THAN D C) (ON-TABLE D T1) (ON A B) (ON B C) (ON C D))
Exercise 2: Skill Execution Blocks World D B A C D
Primitive Skills to Define (unstack ?block): move ?block off of another block (pickup ?block): move ?block off of a table (stack ?block ?to): put ?block onto another block ?to (putdown ?block): put ?block on a table Available actions: (*grasp-and-raise ?block) (*place-and-ungrasp ?block ?to)
Complex Skills to Define (make-clear ?block): make a situation where there is no other blocks on ?block (lift-block ?block): make a situation where the gripper is holding ?block (put-on ?block ?to): put ?block on another block ?to (build-pyramid ?block1 ?block2): build a pyramid with ?block1 and ?block2
Test C B A A B C Type: (make-problem ((on a b))) (grun)
Exercise 3: Problem Solving Blocks World C B A A B C