JAUS rant

I haven't seen it mentioned on here but some of you may know that there exists a protocol for passing control messages between an operator console
and autonomous vehicle. JAUS, the Joint Autonomous Unmanned Systems protocol was designed as a hack by several defense contractors to unify and standardize the methods used to control autonomous vehicles.
Unfortunately what it was envisioned to be, and what it currently is, are at opposite ends of the spectrum. In the past months that I've been forced to use it I've become more and more disgusted over what I see as fundamental flaws that could have been avoided if folks who actually understood computer architecture would have been properly involved. The following is my list of gripes and reasons I feel (and hope) that JAUS dies a horrible death.
1) JAUS is far too abstract a model to map easily to current hardware components. While reading the specification documents I had this vision going thru my head of a couple of rubber room college professors sitting down and arguing out a method for doing something without any real world experience related to what they were defining.
2) JAUS is little-endian!!! Who in their right mind designs a network transportable protocol using a little-endian number format? The implications of this are that programming for JAUS becomes a very large pain in the ass, especially on machines that use big-endian numbers. You must define manipulator/accessor methods for every stinking field in every type of message allowed for in the spec because you cannot simply map the data buffer from one machine to another and get meaningful information out of it. Again, probably defined by someone who thinks the Intel based PC is the only type of machine on the planet...and Intel is not an optimal choice for battery powered robots: too much power draw
3) JAUS has no facility for dynamic discovery of what robotic components are available in a network or what their attributes might be. More on this later, but it makes the idea of a generic interoperable operator console an utter impossibility.
4) JAUS messages for handling audio-visual or ad-hoc sensor data are severely lacking or non-existent. The current hack for video is crippled because it makes certain assumptions about the format of the video stream and the capabilities of the camera.
5) Since starting to use JAUS last August I've known five different vendors who all had different interpretations of how a single function is accomplished under JAUS. This tells me that it should not be used.
6) The written documentation for JAUS suxs. I've noted several places where the specification is vague or outright conflicts with what is written in a another section.
The reason I bring up this rant in this group is because JAUS is simply a bad implementation of a good idea. I realize that many of you are hobbyists and not professional robotic engineers but I've noted from reading the posts that you are generally asking the right questions and in many cases sharing good answers. I'd like to see folks outside the defense industry think about this issue of a standard robotics control language. I'm convinced the non-military sector can come up with a far superior scheme.
-noone of consequence
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

How can JAUS be "far too abstract" yet specify big or little endian to the extent that it is a problem ? That seems to be a mixture of high level abstraction but low level implementation in the same "specs".
Anyway, my reply, in general, is: Why don't you create a framework that is a better design, but incorporates JAUS in its current form so that it has a chance of being adopted in the industry? You could have high level classes that specify things the they *should* be done, but has a JAUS implementation for the time being. So your "better JAUS" would start with abstract classes that can map down to the current JAUS implementation

This, to me, seems like a broad sweeping statement that is too similar to the tired debate of "Mac vs. PC". Are you talking about small 3 wheeled robots that use 4 AA batteries or the ones the military can afford with on-board generators or 48 car batteries ?
Anyway, good luck in your quest and perhaps you will get some better answers than mine ! JCD
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Buzz..Woody wrote:

We briefly considered JAUS for our DARPA Grand Challenge vehicle and came to many of the same conclusions.
                John Nagle
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.