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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
getting_started [2013/02/12 17:41] external edit
getting_started [2014/06/05 11:38] (current)
Line 1: Line 1:
-====== Getting started ====== +#REDIRECT doc:getting_started
-~~NOTOC~~ +
-The following list is intended as a guideline how to get started using KnowRob. The first steps aim at getting an overview of what is available and how to use the existing modules. At some point, you will likely want to implement your own components. We try to give some hints on how to go beyond the basic tutorials below. +
- +
-===== Install the system ===== +
-Follow the [[download|installation guide]] to set up the system on your computer and follow the [[tutorial/​knowrob_basics|KnowRob basics]] tutorial to learn how to start it, how to send queries, and how to visualize their results. +
-===== Go through the beginner tutorials ===== +
-There is a number of tutorials that showcase the functionality provided by the different KnowRob components. They can be used in two different waysAs a beginner, you can just copy the queries and paste them into your Prolog shell to explore the functionality. All the tutorials below work without programming and should give you a quick overview of what is available. +
- +
-On the other hand, the provided queries are also intended as a starting point to dig deeper into the system. There are no tutorials for every possible adapation and extension, but often it helps to know which predicate shall be called with which arguments, to look at the code of that predicate and start exploring from there. +
- +
-===== Read about the concepts behind KnowRob ===== +
-To understand the design decisions and capabilities of the system, read about the [[important concepts]] and have a look at the related publications. The [[http://​nbn-resolving.de/​urn/​resolver.pl?​urn:​nbn:​de:​bvb:​91-diss-20111125-1079930-1-7|PhD thesis by Moritz Tenorth]] is currently the most comprehensive description of the concepts that underlie the KnowRob system. +
-===== Learn OWL and Prolog ===== +
- +
-For effectively using the KnowRob system, some basic knowledge about the main languages, OWL and Prolog, is helpful. It becomes a definite MUST when you would like to do some advanced stuff and start to implement your own modules. Below are links to good tutorials that will get you started. +
- +
-==== OWL tutorials ==== +
-Download the Protege OWL editor (version 4.1) which makes exploring and editing OWL files much easier: http://​protege.stanford.edu/​download/​protege/​4.1/​installanywhere/​ and have a look at the documentation (http://​protegewiki.stanford.edu/​index.php/​Protege4GettingStarted). The tutorial (http://​owl.cs.manchester.ac.uk/​tutorials/​protegeowltutorial/​resources/​ProtegeOWLTutorialP4_v1_2.pdf) is not only a good introduction to the Protege program, but to modeling with OWL in general. It will take you a day or two, but is worth the time. Also look at the XML/OWL code you just created in Protege with a text editor to see how the relations you created using the GUI are represented in OWL. It is important now only to understand how things look in the editor, but also how they are encoded in the lower-level data structures. +
- +
-==== Prolog tutorials ==== +
-Though you probably won't need very sophisticated Prolog skills in the beginning, you should have a rough understanding of how a Prolog program looks like and what the basic concepts are to implement your own queries and (later) modules. The tutorials at http://​www.learnprolognow.org/​ are a very good introduction -- try to follow them at least until Lesson 6. +
- +
- +
-===== Write your own modules ===== +
- +
-Once you have an overview of what KnowRob provides and know how to write OWL and Prolog, you can start to create your own KnowRob extensions. You will first need to decide which parts to implement in [[faq#Which programming language should I use for what purpose|which language]] and then then proceed to [[create your own KnowRob package]].+