Knowledge-based systems (KBS) are computer programs that utilize artificial intelligence (AI) and a base of knowledge in order to solve complex problems. KBS is a broad term that encompasses many different systems, But, no matter the specific system, there are always two key features: a store of knowledge and a reasoning system. The store of knowledge gives the relevant facts that allow the reasoning system to ingest new knowledge and make decisions based on the sum of its knowledge. This type of system often relies on if-then rules, but can also use other systems such as logic programming and constraint handling rules. Typically, KBS are very focused on certain domains, but can quickly complete analyses that are within their range.

There are two types of knowledge bases that may be used in a KBS. The knowledge-based system itself has to do with the system architectures, it knows knowledge explicitly rather than as code to be processed. Expert systems, on the other hand, refers to systems that can assist or replace a human expert for complex tasks that generally require an expert knowledge level. Early knowledge based systems were most often rule based expert systems that relied on human experts to assist in the analysis, though as AI has expanded, the need for human experts has decreased.

The reasoning system in knowledge-based systems is generally an inference engine. Inference engines were, in many ways, the precursor to modern personal computing, as they allowed access to expert knowledge and problem solving. Inference engines provide logical rules based on existing knowledge bases in order to understand and process new information. These engines can process big data in real time to allow the most up-to-date information to be easily accessed. Inference engines can be used to classify data, or to update information as it is processed.

Knowledge based systems include:

  • Medical diagnosis systems: There are systems, such as Mycin, one of the original KBS, that can help with disease diagnoses. By inputting information or answering a series of questions, such programs can identify likely diagnoses (and include a confidence rating around the diagnosis) as well as make recommendations for treatment plans.
  • Eligibility analysis systems: By answering guided questions, it is possible to figure out if a person is eligible for a particular service. When determining eligibility, a system would ask questions until it receives an answer that is processed as disqualifying, and could then communicate it to the individual, all without needing the involvement of a third-party person.
  • Blackboard systems: In comparison with other KBS, a blackboard system relies heavily on updates from human experts. As part of solving a problem, a diverse group will work together to find the best solution. As each person works on the problem, they will update the blackboard with the partial solution, until it is finally completed.
  • Classification systems: KBS can also be used to analyze different data in order to figure out its classification status. For example, information could be inputted to determine different chemical compounds by analyzing their mass spectra and chemical components.