Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Last revisionBoth sides next revision
common-sense_reasoning_about_object_locations [2013/02/12 17:41] – external edit 127.0.0.1common-sense_reasoning_about_object_locations [2013/04/22 08:41] admin
Line 1: Line 1:
-====== Commonsense knowledge about object locations ====== +#REDIRECT doc/common-sense_reasoning_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>+