DTAI

  • Increase font size
  • Default font size
  • Decrease font size
DTAI KRR Software ConfigID
KRR software: ConfigID

ConfigID

DownloadDemo | Documentation

The IDP knowledge-base system is an expert system that can solve logical problems by using rules and definitions. A specific kind of these problems are configuration problems. When solving a configuration problem, the user of the expert system will provide values for some of the parameters of the problem. In other words, the user will create a partial configuration by assigning values to some parameters. Based on this configuration, the knowledge base system will determine if any valid complete configuration still exists.

An example of such a problem is an application with which a bicycle can be configured. The user chooses the kind of bike, the frame, rims, etc. Depending on the choices for a component, other components will or will not be available. Configuring parameters of the problem can be seen as inclusively or exclusively selecting some values. A user friendly way of selecting these values, is by the use of a GUI, short for Graphical User Interface. This allows a user to assign values to the parameters of the problem in a step by step fashion. The GUI can be created in one of many programming languages, although Java would be an excellent choice. This is so because of the "Create once, deploy anywhere" philosophy of Java. In other compiled programming languages, there is always a risk that the application will not work on multiple platforms without modifications of the source code.

Sadly, there is a large amount of Java code needed to put together a professional looking GUI. Even more effort and code is needed to make this GUI interact in a correct way with a backing system. Interacting correctly means that the GUI can alter the backing system and it displays the state of that system. Above and beyond this fact, there is currently no working of the shelf solution to use the IDP knowledge base system in conjunction with the Java programming language.

To solve these problems, Nick Calus, in the context of his master's thesis, developed an API for the Java programming language enabling a Java application to use the IDP knowledge base system. On top of that, the API allows the programmer to create the GUI and connect it in a fast, easy and flexible way to the IDP knowledge base system, in order for the GUI to be able to update the knowledge base and display the state of the knowledge base.

Download the full thesis text (in Dutch).

Download the API, including some examples, and the runnable demo for a bike configuration application.

Last Updated on Friday, 23 December 2011 19:36