Computational Adjustable Autonomy for NASA Personal ... - CiteSeerX

0 downloads 0 Views 94KB Size Report
algorithms for computing PSA autonomies when there are concurrent and conflicting ... Autonomy is defined and used in multi-agency [6, 7, 10, 12], and other ...
ACM SAC 2002

Computational Adjustable Autonomy for NASA Personal Satellite Assistants Henry Hexmoor

Justin Tyrel Vaughn

University of Arkansas Computer Science & Computer Engineering Department Engineering Hall, Room 313 Fayetteville, AR 72701

University of Arkansas Computer Science & Computer Engineering Department Engineering Hall, Room 313 Fayetteville, AR 72701

[email protected]

[email protected]

ABSTRACT We will describe a simulator and simulated teamwork among a number of Personal Satellite Assistants (PSA) onboard the simulated space station patrolling for problem detection and isolation. PSAs reason about autonomies of potential helpers while helpers reason about their autonomies for deciding to help or to break away from prior commitments to help. We describe algorithms for computing PSA autonomies when there are concurrent and conflicting situations. We also offer empirical results about qualities of help a recruiting PSA receives when there are multiple, concurrent problems.

1. INTRODUCTION The Personal Satellite Assistant (PSA) is a small flying robot that is being developed at NASA Ames for deployment on the international space station. These robots are an outgrowth of a need to free astronauts from routine tasks of inventory control, safety checks, and fault detection and isolation. PSAs are loaded with a variety of sensors including sensors for gas and pressure sensing as well as vision and speech. We describe implementation of a simulator that shows movement of several simulated PSAs in the corridors of the space station. We present algorithms that allow for PSA to reason about their autonomy and level of collaboration. We discuss tasks for the PSA including fire and locating a source of gas leak onto a station module or from the station module (called on gassing and off gassing, respectively). __________________________________________________________ Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SAC ’02, March 10-14, 2002, Madrid, Spain © Copyright 2002 ACM 1-58113-000-0/03/2002…$5.00.

Figure 1 shows a snapshot of three PSAs that are converging on the problem with one PSA already in the module with the problem. In the next section we will describe the steps involved in reasoning about the problem. The main issue being addressed is automatic adjustment of autonomy for the PSA. Autonomy is defined and used in multi-agency [6, 7, 10, 12], and other disciplines including sociology [9], and philosophy [13, 14]. Autonomy is important in multi-agent interaction since it relates abilities in a self or a group to the individual’s freedoms and choices. Agent-centered understanding of autonomy is required for coherent inter-agent interaction. The notion of autonomy has been used in a variety of senses and has been studied in different contexts. The concept of autonomy is closely related to the concepts of power, control and dependence [5, 7]. An agent is autonomous with respect to another agent, if it is beyond the influences of control and power of that agent. In other words, autonomy presupposes some independence or at least restricted dependence. Further exploration of the relationship between power, control, and autonomy is beyond the scope of this paper. Autonomy is defined in [6] as the agent’s degree to which its decisions depend on external sources including other agents. This can be called a cognitive autonomy. We have explored this further in [7]. The work described in this paper promotes the relativistic view of autonomy we introduced in [3, 4]. It is possible to differentiate autonomy into dynamic and deterministic types. Dynamic autonomy might capture the agent’s initiative and ability to self-start, whereas deterministic autonomy might capture the agent’s ability to refrain from actions it can perform. Adjustable autonomy is a related notion that captures the idea of a human operator intervening and guiding actions of a machine [8]. Another example of the work on adjustable autonomy is [2]. A quantitative measure of agent autonomy is proposed in [1]. They define the degree of autonomy as an agent’s relative voting weight in decision-making. This approach has several advantages. For example, it allows for explicit representation and adjustment of the agent autonomy. To our knowledge, it has been the first attempt to describe an agent’s autonomy from a decision-theoretic point of view. Our own work elsewhere introduced another measure of relative autonomy [4]. In this

ACM SAC 2002

paper we will discuss a computational approach to determining autonomy for a PSA. This extends the quantitative approach we presented earlier in [11]. The remainder of this paper first presents a simplified strategy for handling a single problem. We then consider concurrent problems and discuss reasoning about autonomy computation. Then, we outline an alternate strategy and present experiments that illustrate quality of help. We complete the paper with concluding remarks.

2. STEPS OF PROBLEM IDENTIFICATION In the first step, the PSA who detects the problem formulates a broadcast alert to send to other PSAs. This is initiated when a PSA locates an abnormality in its environment. The abnormality could be a variation in the ambient temperature, or an atmospheric imbalance (pressure variation, excess oxygen, nitrogen, carbon dioxide, etc.). Once it is discovered, the PSA proceeds to broadcast the alert to all other PSAs since pinpointing a problem is much more accurate with 2 or 3 agents reading from different angles than by a single PSA. This process is similar to the method used in radio signals localization; we refer to it as triangulation. The values passed in the alert message are ID, ProbType, Loc, and Time. ID is used as an identifier so each contacted PSA knows whom they are dealing with. This is necessary, as they must respond with their calculated priorities later in this process. Also, it should be noted that upon initialization, each PSA is assigned a unique ID number, so that no duplicate IDs exist. ProbType is a static numeric value assigned to a specific abnormality. This value is arbitrary, as it is used as an identifier later for calculating priority. For example, fire (excess heat) is read as problem type 1, on gassing (abnormally high readings of some gas) is type 2, and off gassing (too little pressure, or gas) is recognized as type 3. These numbers could easily be referenced as letters or even symbols; it makes no difference so long as the lookup tables in the heuristic for priority are changed accordingly. Loc is the location of the detected problem. This is not an exact location, but rather a room number. This is used for comparison of distances needed through the entire station. When the exact location of the problem is not yet known, the variation within the room from the room center inside the destination module is of minor consequence in our computations. The loss of accuracy is minimized, since this is consistent throughout the priority process. The Time variable is the relative amount of time, during which the problem has been known. For instance, if at time 13 an abnormality is discovered, and instantly a call for help is issued, but for some reason no one replies, or no replies are favorable, we might wait until time 18 and call again. In this case, at time 13 we report a time 1 as this represents the first time unit at which the problem was known and at time 18 we return 6 as it

has been known for 5 additional time units. This is used by the priority heuristic to compute increasing anxiety in the PSAs concurrent with the time period during which the problem remains unresolved. In the second step, every PSA except the message originator completes evaluation of its capabilities to help. At this stage, it is assumed that the agent has a means of evaluating its resources (R), which for the PSA is based on its battery charge level. The calculated Cost (C) will be in terms of an estimated energy usage needed for the task at hand. C is subsequently compared to R for that PSA. C is initially computed by first calculating the distance needed to be traveled. We assume all PSAs are constructed identically, move at identical rates of speed, and consume energy at the same rate. Of greater importance than the distance to the target is the distance from the target to the nearest recharge station. It does the system little good for a PSA to assist in locating a problem only to run out of energy and shut down. These distances are added together to produce a total distance to use in computing C. The total distance to be moved is multiplied by the energy consumption rate. We then add to this an estimation of the amount of energy, which must be used during the task. The total is C. C = (Distance to target + Distance from target to recharge) × Energy Consumption Rate + Energy Required for Task (1) If C > R then an unfavorable priority is returned, indicating unavailability. Otherwise, C