Ontologie
Dějiny umělé inteligence ukazují, že znalosti jsou pro inteligentní systémy klíčové. V mnoha případech mohou být kvalitnější znalosti pro řešení úlohy důležitější než lepší algoritmy. Máme-li vytvářet skutečně inteligentní systémy, je třeba znalosti zachytit, zpracovávat, znovu využívat a sdělovat. Ontologie všechny tyto úlohy podporují.
Pojem "ontologie" lze definovat jako explicitní specifikaci konceptualizace. Ontologie zachycují strukturu domény, tedy konceptualizaci. Ta zahrnuje model domény s případnými omezeními. Konceptualizace popisuje znalosti o doméně, nikoli o konkrétním stavu věcí v doméně. Jinými slovy, konceptualizace se nemění nebo se mění jen velmi zřídka. Ontologie je potom specifikací této konceptualizace - konceptualizace je specifikována pomocí určitého modelovacího jazyka a určitých termínů. Formální specifikace je nutná, abychom mohli ontologie zpracovávat a automaticky nad nimi provádět operace.
Ontologie popisuje doménu, zatímco znalostní báze (založená na ontologii) popisuje konkrétní stav věcí. Každý znalostní systém nebo agent má vlastní znalostní bázi a do znalostní báze lze ukládat a používat pouze to, co lze vyjádřit pomocí ontologie. Když chce agent komunikovat s jiným agentem, používá konstrukty z nějaké ontologie. Aby si při komunikaci rozuměli, musí agenti ontologie sdílet.