I may have posted this before, but a quick web search didn't pull it up. So here's a document I wrote once for my own benefit after a couple years of working on an interface to simulate command and control of semi-autonomous aerial and ground vehicles for military purposes — what at the time were called Uninhabited Vehicles (UAVs and UGVs). In the simulation, the vehicles were run by "intelligent agents" that had some autonomous capabilities including coordinated action by multiple units. I was trying to capture my own understanding of the complexity of the problem; some of this is specific to combat operations but most of it applies to other applications as well. Similarly, some of it is only about heterogeneous teams of robots but some still applies even if you're just trying to operate a single robot. I'll talk about some of this in my presentation on Sunday at 10 AM at ConFusion, so you could consider this a preview.
Why Commanding a Heterogeneous Team of Robots is Hard
Top ten reasons why commanding a mixed team of remotely operated unmanned ground and aerial vehicles is not easy:
Why Commanding a Heterogeneous Team of Robots is Hard
Top ten reasons why commanding a mixed team of remotely operated unmanned ground and aerial vehicles is not easy:
- Individual robots have different capabilities — this includes defensive and offensive armor and weaponry, sensory, mobility, communication, and reasoning capabilities. I have to understand all of these in order to apply them effectively
- Different combinations of robots have different capabilities — tactically speaking, of course. If you never studied combinatorics, just trust me when I say the increase in the number of different ways you can do something is multiplicative, not merely additive, when more units and capabilities are factored in
- What any robot, or group of robots, can do for me, right now, depends in the situation — this includes the mobility, lethality, sensing and communication capabilities of both my forces and the enemy forces, as well as how strategically they are positioned to take advantage of these capabilities. Understanding that requires some knowledge of the terrain, and some idea of the enemy intent as well as my own intent and also how much my individual units know about the situation and what I want them to do. Mobility in robots includes which components of the robots are functional (e.g. wheels, tracks, gears, engine, turbines, rotor blades), how much fuel or power they have, climb angles, traction, speed and thrust, and any aspect of the weather or terrain that may impact any of those. Lethality includes types and stores of ammunition, position (angle both horizontal and vertical, as well as constraints on possible angle) and condition of weaponry, time required to bring it to bear, and odds of effectiveness against certain types of targets, considering range, targeting/designation possibilities and possible cover. Communication may be disrupted by incidental or purposeful interference, or attenuated by distance. Noncombatants and other non-combat elements can also affect the situation
- It is difficult to understand and assess a situation based on information gathered solely by remote sensors — especially a collection of remote sensors with different locations, ranges and angles of view, types and resolutions of sensing, and different types and levels of automatic detection capabilities
- Situations may change quickly, sometimes without notice and in unexpected ways — it's that without notice part that can really stick in your craw
- When situations change, priorities also change — this usually needs to translate into new action and changes in plans. Plans don’t usually survive contact with the enemy — it's a fact of war
- Robots will only do what I tell them to do — But I don't want to waste time dealing with an interface and selecting fiddly details and options; I want to command robots at least as efficiently as I can command men, and I want them to solve problems on their own when they can. I’m busy, the situation is dynamic, and the stakes are high. The system should know the same things people learn in training and be able to reason about the situation. If possible, the system should help me understand the situation and choose what to do, not make me explain the situation to it in laborious detail
- During all this, I want to protect and preserve my robots both from damage and from enemy capture while accomplishing my primary mission — I have multiple, layered goals, which are hard to express into a computer system and to take into account in battlefield decision-making
- Even more than my robots, I want to protect the other people in my unit — except in cases where a robotic asset may turn the tide later and prevent greater loss of life. We never said battlefield decisions were simple or easy
- Robots are awkward things that can kill people by crashing into them or by applying their capabilities inappropriately — unless I understand and trust what the robot can and will do, merely operating a robot in combination with people will raise my stress level and reduce my ability to deal with the situation