1. What is the Agent Building and
Learning Environment?
2. Why should I use the Agent
Building and Learning Environment?
3. I am an application developer.
How will ABLE help me?
4. I am a student or researcher
working with intelligent agents. How will ABLE help me?
5. What Java platforms are
supported? Is it "100% Pure Java"?
6. Can the beans be used with any
builder tool?
7. Why should I use the Able Agent
Editor rather than my favorite bean builder?
8. How do I start the Able Agent
Editor?
9. Where do I find the environment
changes that developers need to use Able?
10. Where can I use the ABLE beans?
11. How do I use the ABLE Core
beans?
12. How do I specify the kind of
agent I want to build?
13. How do I build a rule-based
agent?
14. What inferencing algorithms are
available?
15. How do I build a neural network
agent?
16. Where can I use the
NeuralPredictionAgent bean?
17. Where can I use the
NeuralClusteringAgent bean?
18. Where can I use the
NeuralClassifierAgent bean?
19. Where can I use the
GeneticSearchAgent bean?
20. I have an existing Java
application and I want to add an agent to it. Where
should I start?
21. I want to build a multi-agent
system application. Can I use Able?
22. How does the Able Inspector
work? Can I use it to debug my custom Agents?
23. Are there examples?
24. Some screens have problems with
repaint and flickering.
25. When I try to run the Able
editor using the "runnit" script for my
operating system, I get an error.
26. When I try to compile my own
application, I get "Missing class file"
errors.
27. When I try to run an Able
script such as runnit.bat, I get "Class
not found" or "Invalid
directory" errors.
28. When I try to load files such
as fuzzy rule sets, I get execution errors such as "File
not found".
29. Now that I've installed the
latest Able release, my preferences are different then
they were with the previous release.
30. When I select any of the help
topics, my browser is unable to locate the URL.
31. I've thoroughly read all the
Able documentation and tried everything I can think of
and still have a problem.
- 1.
What is the Agent Building and Learning
Environment?
-
- The
Agent Building and Learning Environment (ABLE) is
a Java-based toolkit for developing and deploying
hybrid intelligent agents and agent applications.
ABLE provides a set of reusable JavaBean
components, called AbleBeans, along with
several flexible interconnection methods for
combining those components to create software
agents. AbleBeans implement data access,
filtering and transformation, learning, and reasoning
capabilities. Function-specific AbleAgents are
provided for classification, clustering,
prediction, and genetic search.
Application-specific agents can be constructed
using one or more of these AbleBeans. AbleAgents
can provide user-defined functions for use
as sensors or effectors for a generic mechanism
to link to Java applications. A GUI-based
interactive development environment, the Able
Agent Editor, is provided to assist in the
construction of AbleAgents using AbleBean
components.
[Goto Top]
- 2.
Why should I use the Agent Building and Learning
Environment?
-
- ABLE
is intended to provide a productivity aid for
developers and researchers:
- If you are an
application developer, it provides a set
of intelligent beans, and an editor for
combining them into agents.
- If you are doing
research on intelligent agents, it
provides a flexible Java framework for
combining ABLE beans with your algorithms
and includes samples to show how agents
should be constructed.
[Goto Top]
- 3.
I am an application developer. How will ABLE help
me?
-
- The
ABLE design philosophy is to provide a set of
reusable Java components (JavaBeans) and a light-weight
framework for combining them to build intelligent
components (agents). ABLE provides Sensors and
Effectors to allow application developers to
easily plug the agent into their Java application
environment. Custom-developed beans and agents
can be plugged into the Able Agent Editor.
[Goto
Top]
- 4.
I am a student or researcher working with
intelligent agents. How will ABLE help me?
-
- The
ABLE Editor provides an Interactive Development
Environment to build and test custom learning and
reasoning algorithms. The Able Inspectors use
standard Java introspection to display state
information about the custom beans you create,
and provide a way to view the data in graphical
form such as bar charts, line plots, and time
plots. It is fairly easy to take an existing Java
algorithm and package it as an AbleBean for use
with the rest of the AbleBeans provided in the
ABLE toolkit.
[Goto Top]
- 5.
What Java platforms are supported? Is it "100%
Pure Java"?
-
- Although
not officially certified by Sun, the ABLE toolkit
and all of the AbleBeans and AbleAgents provided
are written entirely in Java and should run on
any Java2 version JVM. JDK 1.3 is recommended.
The Able editor and AbleBean customizers use
Swing.
[Goto Top]
- 6.
Can the beans be used with any builder tool?
-
- In
theory yes. AbleBeans and AbleAgents are standard
JavaBeans. Though we do not endorse or recommend
any specific tool, our developers use or have
used JBuilder (TM and copyright by Borland
International), VisualCafe (TM and copyright by
Symantec Corporation), and the Java Development
Environment (copyright by Paul Kinnucan and
distributed under GNU General Public License).
[Goto
Top]
- 7.
Why should I use the Able Agent Editor rather
than my favorite bean builder?
-
- The
Able editor provides specific functions for
constructing Agents from Able beans. If you only
want to use the AbleAgent beans, any Java bean
builder tool will suffices. AbleBean-unique
functions include the data buffer and event
connections which can be graphically added and
shown in the editr. The Inspector function can
display or plot bean state information and is
very useful for testing and debugging.
[Goto
Top]
- 8.
How do I start the Able Agent Editor?
-
- The
startup program for the Able editor is platform
dependant. Scripts are provided as follows:
Run the script file from
the bin directory where Able
is installed. These scripts require the JDK/JRE
executable version of your choice to be defined
in your PATH environment variable.
[Goto Top]
- 9.
Where do I find the environment changes that
developers need to use Able?
-
- The
ABLE scripts are designed so that they calculate
environment variable values from the directory in
which they reside. See for instance \bin\runnit.bat
for the CLASSPATH and ABLE_HOME settings used.
The lib directory contains jar files which should
be in your class path. A description of each jar
shipped with ABLE is in the Extending Able
document in the Deployment topic (see docs/com/ibm/able/doc-files/AbleExtending.html).
[Goto Top]
- 10. Where can I use the
ABLE beans?
-
- The ABLE core beans can be
used in any agent. They are meant to be primary
building blocks for agents to use for data
access, data conversion, and to provide base
algorithms such as boolean and fuzzy inferencing
and machine learning capability. They support
ABLE data buffers, events, and property
connections which provide data flow between beans.
[Goto Top]
- 11. How do I use the
ABLE Core beans?
-
- There are two ways to useo
the ABLE core beans, through the ABLE editor and
through a Java development environment.
[Goto Top]
- 12. How do I specify
the kind of agent I want to build?
-
- You can select a specific
container agent by selecting File/New/... and
picking the kind of agent you want. Note that all
AbleAgents are containers and so you can add
AbleBeans to them. Once configured, you can
serialize the agent out to a file for use in any
Java application.
[Goto Top]
- 13. How do I build a
rule-based agent?
-
- ABLE supports both boolean
if-then rules and fuzzy rule inferencing. You
define your variables in the Rule Editor, enter
the rule clauses for the desired inferencing
engine, and parse the ruleset so that it is
executable. You can use features of the Able
Agent Editor such as data buffering to pass data
to the rule set or inspectors to view rule set
intermediate and final results.
[Goto
Top]
- 14. What inferencing
algorithms are available?
-
- ABLE's rule inferencing is
designed to easily swap engines. Backward-chaining,
forward-chaining, and mixed-chaining is provided,
as well as fuzzy inferencing and pattern-matching.
Some inferencing algorithms feature a heavyweight
version that supports working memory and a
lightweight version without working memory.
[Goto
Top]
- 15. How do I build a
neural network agent?
-
- A neural network-based
agent usually consists of AbleImport beans to
provide the training and test data, an AbleFilter
to scale the data, the neural network bean
itself, and another AbleFilter to scale or
transform the neural network output. The ABLE
suite also includes a set of three neural network
agents for classification, prediction, and
clustering. These agents will generate the
required beans to train and test the agent.
[Goto
Top]
- 16. Where can I use the
NeuralPredictionAgent bean?
-
- The NeuralPredictionAgent
bean can be used to perform regression functions,
combining many seemingly unrelated attributes to
predict a numeric value such as interest rate
fluctuation or sales volume.
[Goto
Top]
- 17. Where can I use the
NeuralClusteringAgent bean?
-
- The NeuralClusteringAgent
bean can be used to perform clustering functions,
grouping records describing individual
demographics so that services can be offered to
appropriate subsets of the population.
[Goto
Top]
- 18. Where can I use the
NeuralClassifierAgent bean?
-
- The NeuralClassifierAgent
bean can be used to perform classification, using
attributes such as individual credit and
purchasing history to detect fraudulent credit
card use.
[Goto Top]
- 19. Where can I use the
GeneticSearchAgent bean?
-
- The GeneticSearchAgent
provides a generic search mechanism over a
population of GeneticObjects. These objects may
in turn define other AbleBeans or AbleAgents so
that you can optimize over neural network
architecture or parameter spaces, for example.
[Goto
Top]
- 20. I have an existing
Java application and I want to add an agent to it.
Where should I start?
-
- You need to refer to the
Extending Able document in docs/com/ibm/able/doc-files/AbleExtending.html.
[Goto Top]
- 21. I want to build a
multi-agent system application. Can I use Able?
-
- Able provides a
distributed agent platform based on Java RMI. All
of the AbleBeans and AbleAgents provided are
derived from the AbleObject and AbleDefaultAgent
classes are fully remotable. The able.platform
package provides support for distributed multi-agent
systems. This function is not completely tested
and documented in this release.
[Goto
Top]
- 22. How does the Able
Inspector work? Can I use it to debug my custom
Agents?
-
- The Able Inspector uses
introspection to display information concerning
the AbleBean states, either in text or graphic
formats. For graphics, Able Inspectors use the
KLGroup JChart graphics package.
[Goto
Top]
- 23. Are there examples?
-
- A set of examples are
provided with the ABLE suite. These consist of
serialized AbleAgents (*.ser) and corresponding
Able Editor environment (*.ser.env) files. Look
in the /examples/... directories, or follow the
links through the Able GUI reference to the
examples package. Data sources are located in the
/examples/datafiles directory.
[Goto
Top]
- 24. Some screens have
problems with repaint and flickering.
-
- Sometimes screens contain
partial images of an another panel screen. JDK 1.2
has documented a bug that may cause panels to
contain ghost images of other panels (Sun bug
4265726). We have implemented a workaround which
may not fix this problem in all cases, and has a
side effect that in some instances causes some
screen flicker.
[Goto Top]
- 25. When I try to run
the Able editor using the "runnit"
script for my operating system, I get an error.
-
- Make sure that your
environment is set up for Java2. Your PATH
environment variable should include the directory
containing java.exe. Your CLASSPATH environment
variable should contain any jar files you intend
to read into the editor environment; Able jar
files will be added to your CLASSPATH dynamically
by the script. If your CLASSPATH
contains entries which are surrounded by double
quotes ("), you will either need to remove
the double quotes from your CLASSPATH settings or
modify the Able script file to provide a valid
parameter for the java.exe -classpath option.
[Goto
Top]
- 26. When I try to
compile my own application, I get "Missing
class file" errors.
-
- Make sure that your
environment is set up for Java2. Able jar files
are in the lib directory; your application may
require one or more of these jar files to be
specified in your compile CLASSPATH.
[Goto
Top]
- 27. When I try to run
an Able script such as runnit.bat, I get "Class
not found" or "Invalid
directory" errors.
-
- This is most likely
because the ABLE_HOME environment variable is not
set, or is set incorrectly. The scripts provided
with Able such as runnit.bat calculate and set
ABLE_HOME from the starting directory. The
Windows .bat scripts work only on English
machines. If you have a non-English system or you
are not using a script provided with Able, you
will need to define and set the ABLE_HOME
environment variable to a value such as C:\able1_3b.
If your CLASSPATH contains entries which are
surrounded by double quotes ("), you will
either need to remove the double quotes from your
CLASSPATH settings or modify the Able script file
to provide a valid parameter for the java.exe -classpath
option.
[Goto Top]
- 28. When I try to load
files such as fuzzy rule sets, I get execution
errors such as "File not found".
-
- This is most likely
because the ABLE_HOME environment variable is not
set, or is set incorrectly. The scripts provided
with Able such as runnit.bat calculate and set
ABLE_HOME from the starting directory. If you are
not using a script provided with Able, you will
need to define and set the ABLE_HOME environment
variable to a value such as C:\able1_3b.
[Goto
Top]
- 29. Now that I've
installed the latest Able release, my preferences
are different then they were with the previous
release.
-
- The file able.preferences
is stored in the able home directory. If you
would like to use the preferences from a previous
release, copy able.preferences from that
release's home directory to the new home
directory. For example, copy
c:\able1_3b\able.preferences
c:\able1_3b . Preference files are upward
compatible. [Goto Top]
- 30. When I select any
of the help topics, my browser is unable to
locate the URL.
-
- When you obtain the
product through IBM Alphaworks, you must download
both the executable and help and documentation
packages. Both packages must be unzipped/untarred
into the same root directory for help to function.
[Goto Top]
- 31. I've thoroughly
read all the Able documentation and tried
everything I can think of and still have a
problem.
-
- Able is currently a
research project with minimal support. Please
send comments and questions to ableinfo@us.ibm.com and we will try
to help you as best we can. When you describe
your problem, please help us help you by
providing environmental information such as your
operating system name and version, Java version
and provider, environment settings for ABLE_HOME,
PATH and CLASSPATH, and internet browser and
version.
[Goto Top]
|