Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Uncoupled Interface to Soar using SML Pearson, Marinier, Stokes Dunham, Voigt.

Similar presentations


Presentation on theme: "An Uncoupled Interface to Soar using SML Pearson, Marinier, Stokes Dunham, Voigt."— Presentation transcript:

1 An Uncoupled Interface to Soar using SML Pearson, Marinier, Stokes Dunham, Voigt

2 System Architecture Soar Kernel gSKI KernelSML ClientSML SWIG Language Layer Application SML Soar 8.6 Kernel (C) Higher-level Interface (C++) Encodes/Decodes function calls and responses in XML (C++) Soar Markup Language Encodes/Decodes function calls and responses in XML (C++) Wrapper for Java/Tcl (Not needed if app is in C++) Application (any language)

3 Features Embedded or socket connections Embedded or socket connections Multiple language support for applications Multiple language support for applications Combined debugging and I/O interface Combined debugging and I/O interface Dynamic connection/disconnection Dynamic connection/disconnection Tools less tightly tied to particular Soar version Tools less tightly tied to particular Soar version Often faster than 8.5.2 interfaces Often faster than 8.5.2 interfaces Logical structure to output from kernel Logical structure to output from kernel

4 Why SML + gSKI? Why not SGIO? Why not SGIO? –SGIO couldn’t support debugging a kernel embedded in a simulation –Difficult to extend as embedded/remote decision happens at top level of SGIO, so two internal implementations for all commands/structures –Kept the SGIO interface (largely) for clients connecting through SML Why not C API Why not C API –No direct support for remote connections –No support for dynamic connection/disconnection –Tight binding between tools and the kernel, so a change to either requires a rebuild of both –Not as clean of an API as gSKI –Filled the same role as gSKI but with less encapsulation of objects

5 Optional Use Models Ignore SML completely and just link to gSKI Ignore SML completely and just link to gSKI Send raw XML data to/from the kernel Send raw XML data to/from the kernel Build on our client side implementations which hide most of XML communication Build on our client side implementations which hide most of XML communication Use just the “SGIO” portion to build an I/O interface Use just the “SGIO” portion to build an I/O interface Use just the “debugger” portion to build a debugger or command line tool Use just the “debugger” portion to build a debugger or command line tool Use it all to build a combination tool or something we’ve not seen before Use it all to build a combination tool or something we’ve not seen before

6 Future (as of April 2005) Improve the robustness of interactions between SML systems (it’s still early days here) Improve the robustness of interactions between SML systems (it’s still early days here) Applications Applications –Java Eaters –Java TankSoar Extend the Java Debugger to new capabilities we haven’t had before Extend the Java Debugger to new capabilities we haven’t had before –Make better use of the new structured (XML) output from the kernel –Add new features to support debugging to the kernel Embed Java Debugger and Visual Soar inside Eclipse as plug-ins to create an IDE. Embed Java Debugger and Visual Soar inside Eclipse as plug-ins to create an IDE.


Download ppt "An Uncoupled Interface to Soar using SML Pearson, Marinier, Stokes Dunham, Voigt."

Similar presentations


Ads by Google