|
Next
Previous
Contents
Traditional AI is based around the ideas of logic, rule
systems, linguistics, and the concept of rationality. At its
roots are programming languages such as Lisp and Prolog.
Expert systems are the largest successful example of this
paradigm. An expert system consists of a detailed knowledge
base and a complex rule system to utilize it. Such systems
have been used for such things as medical diagnosis support
and credit checking systems.
These are libraries of code or classes for use in programming within
the artificial intelligence field. They are not meant as stand alone
applications, but rather as tools for building your own applications.
- ACL2
ACL2 (A Computational Logic for Applicative Common Lisp) is a theorem
prover for industrial applications. It is both a mathematical logic and
a system of tools for constructing proofs in the logic. ACL2 works
with GCL (GNU Common Lisp).
- AI Search II
Submitted by:
Peter M. Bouthoorn
Basically, the library offers the programmer a set of search
algorithms that may be used to solve all kind of different
problems. The idea is that when developing problem solving software
the programmer should be able to concentrate on the representation of
the problem to be solved and should not need to bother with the
implementation of the search algorithm that will be used to actually
conduct the search. This idea has been realized by the implementation
of a set of search classes that may be incorporated in other software
through C++'s features of derivation and inheritance. The
following search algorithms have been implemented:
- depth-first tree and graph search.
- breadth-first tree and graph search.
- uniform-cost tree and graph search.
- best-first search.
- bidirectional depth-first tree and graph search.
- bidirectional breadth-first tree and graph search.
- AND/OR depth tree search.
- AND/OR breadth tree search.
This library has a corresponding book, "
Object-Oriented Artificial Instelligence, Using C++".
- Chess In Lisp (CIL)
The CIL (Chess In Lisp) foundation is a Common Lisp
implementaion of all the core functions needed for development
of chess applications. The main purpose of the CIL project is
to get AI researchers interested in using Lisp to work in the
chess domain.
- DAI
A library for the Python programming language that provides an
object oriented interface to the CLIPS expert system tool. It
includes an interface to COOL (CLIPS Object Oriented Language)
that allows:
- Investigate COOL classes
- Create and manipulate with COOL instances
- Manipulate with COOL message-handler's
- Manipulate with Modules
- LK
LK is an implementation of the Lin-Kernighan heuristic for the
Traveling Salesman Problem and for the minimum weight perfect matching
problem. It is tuned for 2-d geometric instances, and has been applied
to certain instances with up to a million cities. Also included are
instance generators and Perl scripts for munging TSPLIB instances.
This implementation introduces ``efficient cluster compensation'', an
experimental algorithmic technique intended to make the Lin-Kernighan
heuristic more robust in the face of clustered data.
- Nyquist
The Computer Music Project at CMU is developing computer music
and interactive performance technology to enhance human musical
experience and creativity. This interdisciplinary effort draws
on Music Theory, Cognitive Science, Artificial Intelligence and
Machine Learning, Human Computer Interaction, Real-Time Systems,
Computer Graphics and Animation, Multimedia, Programming
Languages, and Signal Processing. A paradigmatic example of
these interdisciplinary efforts is the creation of interactive
performances that couple human musical improvisation with
intelligent computer agents in real-time.
- PDKB
Public Domain Knowledge Bank (PDKB) is an Artificial Intelligence
Knowledge Bank of common sense rules and facts. It is based on the Cyc
Upper Ontology and the MELD language.
- Python Fuzzy Logic Module
A simple python module for fuzzy logic. The file is 'fuz.tar.gz' in
this directory. The author plans to also write a simple genetic
algorithm and a neural net library as well. Check the 00_index file in
this directory for release info.
- QUANT1
QUANT/1 stands for type QUANTifier. It aims to be an alternative to
Prolog-like (Resulutional-like) systems. Main features include a lack
of necessity for eliminating Quantifiers, scolemisation, ease of
comprehension, large scale formulae operation, acceptance of nonHorn
formulaes, and Iterative deeping. The actual library implemented in
this project is called ATPPCF (Automatic Theorem Prover in calculus of
Positively Constructed Formulae).
ATPPCF will be a library (inference engine) and an extension of the
Predicate Calculus Language as a new logical language. The library will
be incorporable in another software such as TCL, Python, Perl. The
engine's primary inference method will be the "search of inference in
language of Positively Constructed Formulas (PCFs)" (a subset of
Predicate Calculus well translated in both directions). The language
will be used as scripting language to the engine. But there will be
possibility to replace it with extensions languages of main software.
- Screamer
Screamer is an extension of Common Lisp that adds support for
nondeterministic programming. Screamer consists of two
levels. The basic nondeterministic level adds support for
backtracking and undoable side effects. On top of this
nondeterministic substrate, Screamer provides a comprehensive
constraint programming language in which one can formulate and
solve mixed systems of numeric and symbolic
constraints. Together, these two levels augment Common Lisp with
practically all of the functionality of both Prolog and
constraint logic programming languages such as CHiP and CLP(R).
Furthermore, Screamer is fully integrated with Common
Lisp. Screamer programs can coexist and interoperate with other
extensions to Common Lisp such as CLOS, CLIM and Iterate.
- ThoughtTreasure
ThoughtTreasure is a project to create a database of commonsense rules
for use in any application. It consists of a database of a little over
100K rules and a C API to integrate it with your applications. Python,
Perl, Java and TCL wrappers are already available.
These are various applications, software kits, etc. meant for research
in the field of artificial intelligence. Their ease of use will vary,
as they were designed to meet some particular research interest more
than as an easy to use commercial package.
- ASA - Adaptive Simulated Annealing
ASA (Adaptive Simulated Annealing) is a powerful global
optimization C-code algorithm especially useful for nonlinear and/or
stochastic systems.
ASA is developed to statistically find the best global fit of a
nonlinear non-convex cost-function over a D-dimensional space. This
algorithm permits an annealing schedule for 'temperature' T decreasing
exponentially in annealing-time k, T = T_0 exp(-c k^1/D).
The introduction of re-annealing also permits adaptation to changing
sensitivities in the multi-dimensional parameter-space. This annealing
schedule is faster than fast Cauchy annealing, where T = T_0/k,
and much faster than Boltzmann annealing, where T = T_0/ln k.
- Babylon
BABYLON is a modular, configurable, hybrid environment for
developing expert systems. Its features include objects, rules with
forward and backward chaining, logic (Prolog) and constraints. BABYLON
is implemented and embedded in Common Lisp.
- cfengine
Cfengine, or the configuration engine is a very high level language for
building expert systems which administrate and configure large computer
networks. Cfengine uses the idea of classes and a primitive form of
intelligence to define and automate the configuration of large systems
in the most economical way possible. Cfengine is design to be a part of
computer immune systems.
- CLEARS
The CLEARS system is an interactive graphical environment for
computational semantics. The tool allows exploration and
comparison of different semantic formalisms, and their
interaction with syntax. This enables the user to get an idea of
the range of possibilities of semantic construction, and also
where there is real convergence between theories.
- CLIG
CLIG is an interactive, extendible grapher for visualizing linguistic
data structures like trees, feature structures, Discourse
Representation Structures (DRS), logical formulas etc. All of these can
be freely mixed and embedded into each other. The grapher has been
designed both to be stand-alone and to be used as an add-on for
linguistic applications which display their output in a graphical
manner.
- CLIPS
CLIPS is a productive development and delivery expert system tool
which provides a complete environment for the construction of rule
and/or object based expert systems.
CLIPS provides a cohesive tool for handling a wide variety of
knowledge with support for three different programming paradigms:
rule-based, object-oriented and procedural. Rule-based programming
allows knowledge to be represented as heuristics, or "rules of thumb,"
which specify a set of actions to be performed for a given
situation. Object-oriented programming allows complex systems to be
modeled as modular components (which can be easily reused to model
other systems or to create new components). The procedural
programming capabilities provided by CLIPS are similar to capabilities
found in languages such as C, Pascal, Ada, and LISP.
- EMA-XPS - A Hybrid Graphic Expert System Shell
EMA-XPS is a hybrid graphic expert system shell based on the
ASCII-oriented shell Babylon 2.3 of the German National Research
Center for Computer Sciences (GMD). In addition to Babylon's AI-power
(object oriented data representation, forward and backward chained
rules - collectible into sets, horn clauses, and constraint networks)
a graphic interface based on the X11 Window System and the OSF/Motif
Widget Library has been provided.
- FOOL & FOX
FOOL stands for the Fuzzy Organizer OLdenburg. It is a result from
a project at the University of Oldenburg. FOOL is a graphical user
interface to develop fuzzy rulebases. FOOL will help you to invent
and maintain a database that specifies the behavior of a
fuzzy-controller or something like that.
FOX is a small but powerful fuzzy engine which reads this database,
reads some input values and calculates the new control value.
- FUF and SURGE
FUF is an extended implementation of the formalism of functional
unification grammars (FUGs) introduced by Martin Kay specialized to
the task of natural language generation. It adds the following
features to the base formalism:
- Types and inheritance.
- Extended control facilities (goal freezing, intelligent backtracking).
- Modular syntax.
These extensions allow the development of large grammars which can be
processed efficiently and can be maintained and understood more
easily. SURGE is a large syntactic realization grammar of English
written in FUF. SURGE is developed to serve as a black box syntactic
generation component in a larger generation system that encapsulates a
rich knowledge of English syntax. SURGE can also be used as a platform
for exploration of grammar writing with a generation perspective.
- The Grammar Workbench
The Grammar Workbench, or GWB for short, is an environment for the
comfortable development of Affix Grammars in the AGFL-formalism. Its
purposes are:
- to allow the user to input, inspect and modify a grammar;
- to perform consistency checks on the grammar;
- to compute grammar properties;
- to generate example sentences;
- to assist in performing grammar transformations.
- GSM Suite
The GSM Suite is a set of programs for using Finite State
Machines in a graphical fashion. The suite consists of programs
that edit, compile, and print state machines. Included in the
suite is an editor program, gsmedit, a compiler, gsm2cc, that
produces a C++ implementation of a state machine, a PostScript
generator, gsm2ps, and two other minor programs. GSM is licensed
under the GNU Public License and so is free for your use under
the terms of that license.
- Illuminator
Illuminator is a toolset for developing OCR and Image
Understanding applications. Illuminator has two major parts: a
library for representing, storing and retrieving OCR
information, heretofore called dafslib, and an X-Windows "DAFS"
file viewer, called illum. Illuminator and DAFS lib were
designed to supplant existing OCR formats and become a standard
in the industry. They particularly are extensible to handle more
than just English.
The features of this release:
- 5 magnification levels for images
- flagged characters and words
- unicode support -- American, British, French, German,
Greek, Italian, MICR, Norwegian, Russian, Spanish, Swedish,
keyboards
- reads DAFS, TIFF's, PDA's (image only)
- save to DAFS, ASCII/UTF or Unicode
- Entity Viewer - shows properties, character choices,
bounding boxes image fragment for a selected entity, change
type, change content, hierarchy mode
- Isabelle
Isabelle is a popular generic theorem prover developed at Cambridge
University and TU Munich. Existing logics like Isabelle/HOL provide a
theorem proving environment ready to use for sizable applications.
Isabelle may also serve as framework for rapid prototyping of deductive
systems. It comes with a large library including Isabelle/HOL
(classical higher-order logic), Isabelle/HOLCF (Scott's Logic for
Computable Functions with HOL), Isabelle/FOL (classical and
intuitionistic first-order logic), and Isabelle/ZF (Zermelo-Fraenkel
set theory on top of FOL).
- Jess, the Java Expert System Shell
Jess is a clone of the popular CLIPS expert system shell written
entirely in Java. With Jess, you can conveniently give your
applets the ability to 'reason'. Jess is compatible with all
versions of Java starting with version 1.0.2. Jess implements
the following constructs from CLIPS: defrules, deffunctions,
defglobals, deffacts, and deftemplates.
- learn
Learn is a vocable learning program with memory model.
- NICOLE
NICOLE (Nearly Intelligent Computer Operated Language Examiner) is a
theory or experiment that if a computer is given enough combinations of
how words, phrases and sentences are related to one another, it could
talk back to you. It is an attempt to simulate a conversation by
learning how words are related to other words. A human communicates
with NICOLE via the keyboard and NICOLE responds back with its own
sentences which are automatically generated, based on what NICOLE has
stored in it's database. Each new sentence that has been typed in, and
NICOLE doesn't know about, is included into NICOLE's database, thus
extending the knowledge base of NICOLE.
- Otter: An Automated Deduction System
Our current automated deduction system Otter is designed to prove
theorems stated in first-order logic with equality. Otter's
inference rules are based on resolution and paramodulation, and it
includes facilities for term rewriting, term orderings, Knuth-Bendix
completion, weighting, and strategies for directing and restricting
searches for proofs. Otter can also be used as a symbolic
calculator and has an embedded equational programming system.
- NICOLE
It is an attempt to simulate a conversation by learning how words are
related to other words. A Human communicates with NICOLE via the
keyboard and NICOLE responds back with its own sentences which are
automatically generated, based on what NICOLE has stored in it's
database. Each new sentence that has been typed in, and NICOLE doesn't
know about it, it is included into NICOLE's database, thus extending
the knowledge base of NICOLE.
- PVS
PVS is a verification system: that is, a specification language
integrated with support tools and a theorem prover. It is
intended to capture the state-of-the-art in mechanized formal
methods and to be sufficiently rugged that it can be used for
significant applications. PVS is a research prototype: it
evolves and improves as we develop or apply new capabilities,
and as the stress of real use exposes new requirements.
- RIPPER
Ripper is a system for fast effective rule induction. Given a set
of data, Ripper will learn a set of rules that will predict the
patterns in the data. Ripper is written in ASCI C and comes with
documentation and some sample problems.
- SNePS
The long-term goal of The SNePS Research Group is the design and
construction of a natural-language-using computerized cognitive
agent, and carrying out the research in artificial intelligence,
computational linguistics, and cognitive science necessary for
that endeavor. The three-part focus of the group is on knowledge
representation, reasoning, and natural-language understanding
and generation. The group is widely known for its development of
the SNePS knowledge representation/reasoning system, and Cassie,
its computerized cognitive agent.
- Soar
Soar has been developed to be a general cognitive architecture.
We intend ultimately to enable the Soar architecture to:
- work on the full range of tasks expected of an
intelligent agent, from highly routine to extremely difficult,
open-ended problems
- represent and use appropriate forms of knowledge, such as
procedural, declarative, episodic, and possibly iconic
- employ the full range of problem solving methods
- interact with the outside world and
- learn about all aspects of the tasks and its performance on them.
In other words, our intention is for Soar to support all the
capabilities required of a general intelligent agent.
http://wwwis.cs.utwente.nl:8080/ tcm/index.html
- TCM
TCM (Toolkit for Conceptual Modeling) is our suite of graphical
editors. TCM contains graphical editors for Entity-Relationship
diagrams, Class-Relationship diagrams, Data and Event Flow
diagrams, State Transition diagrams, Jackson Process Structure
diagrams and System Network diagrams, Function Refinement trees
and various table editors, such as a Function-Entity table
editor and a Function Decomposition table editor. TCM is easy
to use and performs numerous consistency checks, some of them
immediately, some of them upon request.
- WEKA
WEKA (Waikato Environment for Knowledge Analysis) is an
state-of-the-art facility for applying machine learning
techniques to practical problems. It is a comprehensive software
"workbench" that allows people to analyse real-world data. It
integrates different machine learning tools within a common
framework and a uniform user interface. It is designed to
support a "simplicity-first" methodology, which allows users to
experiment interactively with simple machine learning tools
before looking for more complex solutions.
Next
Previous
Contents
|