robocup_knowledge
rgo2019/challenge_cleanup.py
Go to the documentation of this file.
1 # CLEAN UP KNOWLEDGE FILE RGO2019
2 
3 from robocup_knowledge import knowledge_loader
4 common = knowledge_loader.load_knowledge("common")
5 
6 """
7 Local knowledge info needed:
8 The room to search has to have enough (way)points to cover the complete area.
9 This means waypoints on the floor, and known (furniture) object points.
10 Exact coordinates of the locations are in ed_object_models.
11 """
12 
13 initial_pose = "initial_pose"
14 starting_point = "cleanup_initial"
15 
16 # required keys: entity_id (str), room_id (str), navigation_area (str), segment_areas (list)
17 # Trashbin and trashcan are not looking points, so must not be in the cleaning_locations list
18 
19 cleaning_locations = [
20  {'name': 'sideboard', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
21  {'name': 'tv_table', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
22  {'name': 'left_armchair', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
23  {'name': 'coffee_table', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
24  {'name': 'couch', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
25  {'name': 'right_armchair', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
26  {'name': 'high_table', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
27  {'name': 'bookcase', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ["shelf1", "shelf2"]},
28 # {'name': 'trash_bin', 'room': 'living_room', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
29 
30  {'name': 'desk', 'room': 'bedroom', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
31  {'name': 'bed', 'room': 'bedroom', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
32  {'name': 'side_table', 'room': 'bedroom', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
33 
34  {'name': 'kitchen_cabinet', 'room': 'kitchen', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
35  {'name': 'dishwasher', 'room': 'kitchen', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
36  {'name': 'kitchen_table', 'room': 'kitchen', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
37  {'name': 'cabinet', 'room': 'kitchen', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
38  {'name': 'white_drawer', 'room': 'kitchen', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
39 # {'name': 'trash_can', 'room': 'kitchen', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
40 
41  {'name': 'bar_table', 'room': 'bar', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
42  {'name': 'sofa', 'room': 'bar', 'navigate_area': 'near', 'segment_areas': ['on_top_of']},
43  {'name': 'cupboard', 'room': 'bar', 'navigate_area': 'near', 'segment_areas': ['shelf1', 'shelf2']}
44 ]
45 grammar_target = "T"
46 
47 grammar = "T -> kitchen"
48 grammar += "\nT -> living_room"
49 grammar += "\nT -> bedroom"
50 grammar += "\nT -> bar"