Knowledge-Based Systems

Objectives and outcomes

Students acquire theoretical knowledge and practical skills in the development of knowledge-based systems. Students understand the principles of functioning and application of data and knowledge management systems, as well as programming languages and software environments used in these domains.


Systems for managing relational databases. Advanced elements of SQL and their application to knowledge extraction from relational databases. Knowledge extraction from non-relational databases – object and NoSQL databases. Creating a knowledge base. Differences between a knowledge base and a database. Ontologies. Taxonomies. Knowledge base inference. Creation of new knowledge using rules of inference (reasoning). Rule-based expert systems. Case-based reasoning. Descriptive logic. Implementation of knowledge-based systems. Knowledge-based systems and artificial intelligence.

Practical classes

Exercises of knowledge extraction from structured data (relational database, XML documents, JSON) and unstructured text. Preparation of extracted information for application of reasoning algorithms. Creation of ontologies for a specific chosen domain. Overview of software and development environments for knowledge representation and reasoning. Creating a small rule-based expert system in a chosen environment. Testing the rules of reasoning on the created expert system.