Java Port of ARTMAP Module
The code for the ARTMAP module has been translated to Java, and is available here.
The Java version's API is identical to the C++ version, so the API docs can be used for the Java version as well.

Demonstration of ARTMAP Dynamics in 2-D, with class labels Red, Green, Blue
The following applet illustrates ARTMAP dynamics in action. You can enter training points just by clicking on the main canvas, and the display refreshes in real-time to show the decision surface ARTMAP generates in response to the training inputs. Change the class of the training point to Red, Green or Blue by selecting one of the colored buttons at the bottom.

Note that more information on using the applet is available below.

"Show Class" drop-down menu
Controls the display of training points entered by the user. The possible values are:
- Show Class: Draws a box with the color showing the training point's class.
- Show Points: Just draws a point.
- Don't Show Points: Draws nothing.

"Low-Res" checkbox
If there are a lot of training points, performance may slow down. Checking this box will reduce the resolution of the display and speed performance.

"Multi Displays" checkbox
By default, only a single canvas is shown. If this display is checked, four displays are shown. They all share the same training data, but may be set to use different models.

"Display 1" drop-down menu
If "Multi-Displays" is checked, then this drop-down menu lets you choose the "active" display, which is the one to which any subsequent changes to the model are applied.

"ARTMAP" drop-down menu
his menu lets you choose either "ARTMAP", the default, or k-NN. The latter corresponds to k-Nearest-Neighbor, a simple clustering algorithm that is related to ARTMAP. If you choose k-NN, the lower menus change,letting you choose both the value k, and to set the distance metric to "city-block", which is the metric used by ARTMAP. More specifically, one-voter k-NN, with the distance metric set to city-block, behaves identically to the Fuzzy ARTMAP model when the vigilance parameter is set to 1.

"Fuzzy / Default / Instance Counting" toggles
These toggles let you select the particular ARTMAP model that's used.
For details on the individual models, see here.

"Show Categories" checkbox
ARTMAP categories can be visualized in the 2-D case as rectangles. These are shown by default, but can be turned off using this checkbox.

"Train Vigilance" slider
The ARTMAP vigilance parameter controls the degree of code compression used. It's set to 0 by default, but by turning it up, you can increase how well the model fits the training points, at the cost of storage and processing time.

"Red/Green/Blue" colored buttons
Use these buttons to choose the label (R/G/B) of the training points entered by clicking on the canvas.

"Reset" button
Use this button to discard all the training points and start over.