Swing Integration

Yes, it is being actively worked on. There is already some mostly functional code in the repository. A few more weekends of tweaks and improvements and we should have something that modelers can actually use!!

tainted release..

Apologies. Last week a tainted release made it out the door without my knowledge. Forgot to run the unit tests after fixing issues that FindBugs had found. Turns out one of them, wasn't a bug.. and produced some nasty results. So, if you've been running a model that was claiming a production couldn't be instantiated when you knew full well it could.. that was why. All is right with the universe again.

How do I connect a model to Java Swing/AWT?

Excellent question. Unfortunately, you can't yet. Not for any technical reasons. I'm just spread too thin with pieces that are more critical to my own research.

What does it take to hook them up? Ideally, there would be a swing sensor that would be responsible for parsing the visible GUI and generating percepts.

important update..

A new update is out today that makes the new motor system official. Prior releases using the new system had some hideous bugs associated with the timing of aborted movements. But with plenty of testing within the playerstage and robot interfaces, they seem to have been resolved.

This release also brings with it the ability to do longitudinal iterative runs (where the model learning is persisted across blocks of runs) - making for some interesting capabilities.

last-command

The last-command slot in buffer queries allows canonical lisp to see what the last request issued to a module was. Unfortunately, requests are not first-class model elements (can't be stored, retrieved, or even inspected), so !eval!s are required to make any significant sense of them.

General Probe

The general probe is a combination two tools that provides a general capacity to track arbitrary parameters over time. On the runtime side, org.jactr.tools.grapher.core.GeneralProbe selects model elements (productions, chunks, types, modules, buffers, etc), based on regular expression name matches (quick and easy to implement, but a little wonky if you don't know reg-ex), and attaches probes to them. The general probe then sends that data to the IDE where it is rendered in the jACT-R Probes view.  

Visicon Viewer

To help debug models that rely upon the visual system, jACT-R includes a graphical visicon viewer. It's a little rough around the edges right now, but it is certainly functional.

Using Visicon Viewer

To use, simply enable the visicon tracer in the run configuration for your model. Once the model starts, the visicon viewer (lower-left corner of the IDE) should be updated.

200812161002.jpg

Tracers

Tracers are special instruments that have a GUI component installed in the IDE. These are a tad more complicated, but certainly within the realm of an experienced java programmer.
Tracers typically record and send massive amounts of data to the IDE, so care must be taken to handle the information in a responsive manner that doesn't make the IDE unusable.

Instruments

Instruments are simple tools that can be attached at runtime to any model or model element and are intended to modify or record behavior. They do not interface with the IDE.
Instruments can be easily built by extending the IInstrument interface. Instruments can be made visible to the IDE by using the instruments extension point.

Tooling

The IDE includes many useful tools both for tracing/inspecting model execution and for recording information.

Broadly speaking, there are tool classes of tools: instruments and tracers.

Pages

Subscribe to jACT-R RSS