Differences

This shows you the differences between two versions of the page.

Link to this comparison view

doc:common-sense_reasoning_about_object_locations [2013/04/22 08:41] – created admindoc:common-sense_reasoning_about_object_locations [2014/01/17 09:24] (current) – removed gkazhoya
Line 1: Line 1:
-====== Commonsense knowledge about object locations ====== 
  
-Commonsense knowledge about typical object locations was acquired by the Open Mind Indoor Common Sense (OMICS [[http://openmind.hri-us.com/]]) project. We processed the natural language database entries and translated them to well-defined concepts within the KnowRob ontology as described in [[http://ias.cs.tum.edu/_media/spezial/bib/kunze10omics.pdf|Putting People's Common Sense into Knowledge Bases of Household Robots]]. In [[http://ias.cs.tum.edu/_media/spezial/bib/kunze12objsearch.pdf| Searching Objects in Large-scale Indoor Environments: A Decision-thereotic Approach]] we applied this knowledge in object search tasks. 
- 
-===== Getting Started ===== 
-First you have to build the rospackage knowrob_omics and then run it using rosprolog. 
-<code> 
- rosmake knowrob_omics 
- rosrun rosprolog rosprolog knowrob_omics 
-</code> 
- 
-===== Queries about object locations ===== 
-To query the probability of finding an object in a given room type you can use the following query: 
-<code> 
- ?- probability_given(knowrob:'OmicsLocations', Obj, knowrob:'Kitchen', Pr). 
- Obj = 'http://ias.cs.tum.edu/kb/knowrob.owl#CitrusFruit', 
- Pr = 0.003865979381443299 ; 
- Obj = 'http://ias.cs.tum.edu/kb/knowrob.owl#Bowl-Eating', 
- Pr = 0.006443298969072165 
-</code> 
- 
-If you are interested in what type of room you could find a given object use the following query: 
-<code> 
- ?- bayes_probability_given(knowrob:'OmicsLocations', Room, 
- knowrob:'Sandwich',Pr). 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#Kitchen', 
- Pr = 0.21657432923639094 ; 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#OfficeRoom', 
- Pr = 0.05065150074968034 ; 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#Hallway', 
- Pr = 0.07410126961527308 ; 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#Classroom', 
- Pr = 0.08278900467361545 ; 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#ConferenceRoom', 
- Pr = 0.08394689285086883 ; 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#RestaurantSpace', 
- Pr = 0.24008811355348483  
-</code> 
- 
-You can see the processed database table entries with: 
-<code>  
- ?- rdf_has(Entry, rdf:type, knowrob:'OmicsLocations'), 
- rdf_has(Entry,knowrob:subject,Obj), 
- rdf_has(Entry,knowrob:object,Room). 
- Entry = 'http://ias.cs.tum.edu/kb/knowrob.owl#OmicsLocations-0', 
- Obj = 'http://ias.cs.tum.edu/kb/knowrob.owl#CitrusFruit', 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#Kitchen' ; 
- Entry = 'http://ias.cs.tum.edu/kb/knowrob.owl#OmicsLocations-1', 
- Obj = 'http://ias.cs.tum.edu/kb/knowrob.owl#Bowl-Eating', 
- Room = 'http://ias.cs.tum.edu/kb/knowrob.owl#Kitchen' ; 
-</code> 
- 
-Get the list of Room types: 
-<code> 
- ?- findall(Room, (rdf_has(Entry, rdf:type, knowrob:'OmicsLocations'), 
- rdf_has(Entry,knowrob:object,Room)), Rooms), 
- list_to_set(Rooms,RoomSet). 
-</code>