Date Posted: May 4, 2000
Update: July 19, 2005 Version 2.3.0 requires Eclipse 3.0 and JDK1.4; it includes a new Eclipse plug-in administration console for distributed agent platform, updated Eclipse rule and agent editors, a new PetriNet agent, and an updated example project.
What is Agent Building and Learning Environment?
What is the Agent Building and Learning Environment (ABLE)?
ABLE is a Java framework, component library, and productivity tool kit for building intelligent agents using machine learning and reasoning. The ABLE research project is made available by the IBM T. J. Watson Research Center. The ABLE framework provides a set of Java interfaces and base classes used to build a library of JavaBeans called AbleBeans. The library includes AbleBeans for reading and writing text and database data, for data transformation and scaling, for rule-based inferencing using Boolean and fuzzy logic, and for machine learning techniques such as neural networks, Bayesian classifiers, and decision trees. Developers can extend the provided AbleBeans or implement their own custom algorithms. Rule sets created using the ABLE Rule Language can be used by any of the provided inferencing engines, which range from simple if-then scripting to light-weight inferencing to heavy-weight AI algorithms using pattern matching and unification. Java objects can be created and manipulated using ABLE rules. User-defined functions can be invoked from rules to enable external data to be read and actions to be invoked.How does it work?
Core beans may be combined to create function-specific JavaBeans called AbleAgents. Developers can implement their own AbleBeans and AbleAgents and plug them into ABLE's Agent Editor. Graphical and text inspectors are provided in the Agent Editor so that bean input, properties, and output can be viewed as machine learning progresses or as values change in response to methods invoked in the interactive development environment.
Application-level agents can be constructed from AbleBean and AbleAgent components using the ABLE Agent Editor or a commercial bean builder environment. AbleBeans can be called directly from applications or can run autonomously on their own thread. Events can be used to pass data or invoke methods and can be processed in a synchronous or asynchronous manner. The distributed AbleBeans and AbleAgents are as follows: Data beans-
AbleImport reads data from flat text files.
AbleDBImport reads data from SQL databases.
AbleFilter filters, transforms, and scales data using translate template specifications.
AbleExport and AbleDBExport write data to flat text files and SQL databases.
AbleTimeSeriesFilter collects periods of data for use in predicting future values.
-
Back Propagation implements enhanced back propagation algorithm used for classification and prediction.
Decision tree creates a decision tree for classification.
Naive Bayes learns a probabalistic model for classification.
Radial Basis Function uses radial basis functions to adjust weights in a single, hidden-layer neural network for prediction.
Self-Organizing Map clusters data using Gaussian neighborhood function.
Temporal Difference Learning uses reinforcement learning for time series forecasting; gradient descent is used to adjust network weights.
-
Backward chaining
Forward chaining
Forward chaining with working memory
Forward chaining with working memory and Rete'-based pattern matching
Planning
Predicate logic
Fuzzy logic
Script
-
Genetic search manipulates a population of genetic objects which may include AbleBeans.
Neural classifier uses back propagation to classify data.
Neural clustering uses self-organizing maps to segment data.
Neural prediction uses back propagation to build regression models.
Rule agent contains a rule set whose rule blocks define its init, process, and timer actions
Script uses rule sets to define its init, process, and timer actions.
JavaScript names JavaScripts to run when the agent's init, process, or time actions are called.
Adding rules to applications: Use the ABLE Rule Language to write simple business rules or more complex inferencing rules.
The features and facets of the Agent Building and Learning Environment (ABLE): Learn about the major features and facets of the Agent Building and Learning Environment (ABLE), including the ABLE architecture and how to manipulate data beans, rule beans, and learning beans to be used in a wide variety of applications.
Use autonomic computing for problem determination: Perform root-cause analysis with the Autonomic Management Engine and ABLE components.
