D3web

Last updated
d3web
Developer(s) various
Stable release
11.0 / July 2016
Written in Java
Operating system Cross-platform
Type Knowledge-based systems
License LGPL
Website d3web

d3web is a free, open-source platform for knowledge-based systems (expert systems). Its core is written in Java using XML and/or Office-based formats for the knowledge storage. All of its components are distributed under the terms of the Lesser General Public Licence (LGPL).

Contents

The d3web diagnostic core implements reasoning and persistence components for problem-solving knowledge including decision trees, (heuristic) rules, set-covering models and diagnostic flowcharts. The software can be integrated into foreign applications (embedded or OEM), but a number of off-the-shelf components already exist.

Components

d3web is a component-based software platform providing applications for authoring and using/executing problem-solving knowledge. The following applications are primarily using d3web:

Application Domains

A number of industrial and academic projects already used or are currently using the d3web platform.

The main application domains are:

Some applications (both, commercial and free) created using the d3web diagnostic engine:

History

The development of d3web originates from the research work of Prof. Dr. Frank Puppe (University Würzburg, Germany) going back to the 1980s, starting with the medical expert systems MED1 [2] and MED2 [3] . Whereas the original systems were focussed on medical diagnosis the applicability of the approach was generalized by the successor D3 [4] . [5] As the predecessors were implemented in the LISP programming language, d3web [6] is a full Java re-implementation.[ when? ]

See also

Related Research Articles

<span class="mw-page-title-main">Expert system</span> Computer system emulating the decision-making ability of a human expert

In artificial intelligence, an expert system is a computer system emulating the decision-making ability of a human expert. Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as if–then rules rather than through conventional procedural code. The first expert systems were created in the 1970s and then proliferated in the 1980s. Expert systems were among the first truly successful forms of artificial intelligence (AI) software. An expert system is divided into two subsystems: the inference engine and the knowledge base. The knowledge base represents facts and rules. The inference engine applies the rules to the known facts to deduce new facts. Inference engines can also include explanation and debugging abilities.

Knowledge representation and reasoning is the field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can use to solve complex tasks such as diagnosing a medical condition or having a dialog in a natural language. Knowledge representation incorporates findings from psychology about how humans solve problems, and represent knowledge in order to design formalisms that will make complex systems easier to design and build. Knowledge representation and reasoning also incorporates findings from logic to automate various kinds of reasoning, such as the application of rules or the relations of sets and subsets.

A computing platform, digital platform, or software platform is an environment in which software is executed. It may be the hardware or the operating system (OS), a web browser and associated application programming interfaces, or other underlying software, as long as the program code is executed using the services provided by the platform. Computing platforms have different abstraction levels, including a computer architecture, an OS, or runtime libraries. A computing platform is the stage on which computer programs can run.

<span class="mw-page-title-main">Case-based reasoning</span> Process of solving new problems based on the solutions of similar past problems

In artificial intelligence and philosophy, case-based reasoning (CBR), broadly construed, is the process of solving new problems based on the solutions of similar past problems.

Knowledge engineering (KE) refers to all technical, scientific and social aspects involved in building, maintaining and using knowledge-based systems.

<span class="mw-page-title-main">Decision support system</span> Information systems supporting business or organizational decision-making activities

A decision support system (DSS) is an information system that supports business or organizational decision-making activities. DSSs serve the management, operations and planning levels of an organization and help people make decisions about problems that may be rapidly changing and not easily specified in advance—i.e., unstructured and semi-structured decision problems. Decision support systems can be either fully computerized or human-powered, or a combination of both.

A domain-specific language (DSL) is a computer language specialized to a particular application domain. This is in contrast to a general-purpose language (GPL), which is broadly applicable across domains. There are a wide variety of DSLs, ranging from widely used languages for common domains, such as HTML for web pages, down to languages used by only one or a few pieces of software, such as MUSH soft code. DSLs can be further subdivided by the kind of language, and include domain-specific markup languages, domain-specific modeling languages, and domain-specific programming languages. Special-purpose computer languages have always existed in the computer age, but the term "domain-specific language" has become more popular due to the rise of domain-specific modeling. Simpler DSLs, particularly ones used by a single application, are sometimes informally called mini-languages.

Dendral was a project in artificial intelligence (AI) of the 1960s, and the computer software expert system that it produced. Its primary aim was to study hypothesis formation and discovery in science. For that, a specific task in science was chosen: help organic chemists in identifying unknown organic molecules, by analyzing their mass spectra and using knowledge of chemistry. It was done at Stanford University by Edward Feigenbaum, Bruce G. Buchanan, Joshua Lederberg, and Carl Djerassi, along with a team of highly creative research associates and students. It began in 1965 and spans approximately half the history of AI research.

A knowledge-based system (KBS) is a computer program that reasons and uses a knowledge base to solve complex problems. The term is broad and refers to many different kinds of systems. The one common theme that unites all knowledge based systems is an attempt to represent knowledge explicitly and a reasoning system that allows it to derive new knowledge. Thus, a knowledge-based system has two distinguishing features: a knowledge base and an inference engine.

Troubleshooting is a form of problem solving, often applied to repair failed products or processes on a machine or a system. It is a logical, systematic search for the source of a problem in order to solve it, and make the product or process operational again. Troubleshooting is needed to identify the symptoms. Determining the most likely cause is a process of elimination—eliminating potential causes of a problem. Finally, troubleshooting requires confirmation that the solution restores the product or process to its working state.

In artificial intelligence, model-based reasoning refers to an inference method used in expert systems based on a model of the physical world. With this approach, the main focus of application development is developing the model. Then at run time, an "engine" combines this model knowledge with observed data to derive conclusions such as a diagnosis or a prediction.

INTERNIST-I was a broad-based computer-assisted diagnostic tool developed in the early 1970s at the University of Pittsburgh as an educational experiment. The system was designed to capture the expertise of just one man, Jack D. Myers, MD, chairman of internal medicine in the University of Pittsburgh School of Medicine. The Division of Research Resources and the National Library of Medicine funded INTERNIST-I. Other major collaborators on the project included Randolph A. Miller and Harry E. Pople.

Drools is a business rule management system (BRMS) with a forward and backward chaining inference based rules engine, more correctly known as a production rule system, using an enhanced implementation of the Rete algorithm.

Eclipse OpenJ9 is a high performance, scalable, Java virtual machine (JVM) implementation that is fully compliant with the Java Virtual Machine Specification.

An intelligent decision support system (IDSS) is a decision support system that makes extensive use of artificial intelligence (AI) techniques. Use of AI techniques in management information systems has a long history – indeed terms such as "Knowledge-based systems" (KBS) and "intelligent systems" have been used since the early 1980s to describe components of management systems, but the term "Intelligent decision support system" is thought to originate with Clyde Holsapple and Andrew Whinston in the late 1970s. Examples of specialized intelligent decision support systems include Flexible manufacturing systems (FMS), intelligent marketing decision support systems and medical diagnosis systems.

A hyper-heuristic is a heuristic search method that seeks to automate, often by the incorporation of machine learning techniques, the process of selecting, combining, generating or adapting several simpler heuristics to efficiently solve computational search problems. One of the motivations for studying hyper-heuristics is to build systems which can handle classes of problems rather than solving just one problem.

Knowledge-based configuration, also referred to as product configuration or product customization, is an activity of customising a product to meet the needs of a particular customer. The product in question may consist of mechanical parts, services, and software. Knowledge-based configuration is a major application area for artificial intelligence (AI), and it is based on modelling of the configurations in a manner that allows the utilisation of AI techniques for searching for a valid configuration to meet the needs of a particular customer.

In information technology a reasoning system is a software system that generates conclusions from available knowledge using logical techniques such as deduction and induction. Reasoning systems play an important role in the implementation of artificial intelligence and knowledge-based systems.

<span class="mw-page-title-main">InspectIT</span>

inspectIT is an open-source application performance management (APM) tool, which enables the diagnosis, analysis and monitoring of Java applications. inspectIT is developed by NovaTec Consulting GmbH, an IT consulting company from Stuttgart (Germany), but it has been made open-source in August 2015.

References

  1. Gritje Meinke (2011-06-22). "Analyse von Anomalien in der graphischen Modellierung von diagnostischem Wissen" (PDF).[ permanent dead link ]
  2. Frank Puppe; Bernhard Puppe (1983). "Overview on MED1: A Heuristic Diagnostics System with an Efficient Control-Structure". Gwai 1983.
  3. Frank Puppe; Bernhard Puppe (1985). "How Domain Characteristics Induce Expert System Features". Gwai 1985.
  4. Frank Puppe; et al. (1996). Wissensbasierte Diagnose- und Informationssysteme. Berlin, Germany: Springer.
  5. Frank Puppe (1998). "Knowledge reuse among diagnostic problem-solving methods in the Shell-Kit D3". Int. J. Hum.-Comput. Stud. Elsevier. 49 (4).
  6. Joachim Baumeister (2004). Agile Development of Diagnostic Knowledge Systems. Berlin: IOS Press. ISBN   1-58603-463-4.