Knowledge engineering is a field within artificial intelligence that develops knowledge-based systems. Such systems are computer programs that contain large amounts of knowledge, rules and reasoning mechanisms to provide solutions to real-world problems.
A major form of knowledge-based system is an expert system, one designed to emulate the reasoning processes of an expert practitioner (i.e. one having performed in a professional role for very many years). Typical examples of expert systems include diagnosis of bacterial infections, advice on mineral exploration and assessment of electronic circuit designs.
Importance of Knowledge Acquisition
The early years of knowledge engineering were dogged by problems. Knowledge engineers found that acquiring enough high-quality knowledge to build a robust and useful system was a very long and expensive activity. As such, knowledge acquisition was identified as the bottleneck in building an expert system. This led to knowledge acquisition becoming a major research field within knowledge engineering.
The aim of knowledge acquisition is to develop methods and tools that make the arduous task of capturing and validating an expert’s knowledge as efficient and effective as possible. Experts tend to be important and busy people; hence it is vital that the methods used minimise the time each expert spends off the job taking part in knowledge acquisition sessions.
Knowledge Engineering Principles
Since the mid-1980s, knowledge engineers have developed a number of principles, methods and tools that have considerably improved the process of knowledge acquisition. Some of the key principles are summarised as follows:
Knowledge Engineering Methodologies
Epistemics is involved in three methodologies to support the development of knowledge systems: