Automata-based Supervisory Controller for a Mobile Robot Team A.Tsalatsanis, A. Yalcin, K. P. Valavanis
Abstract- Finite state automata are used as a modeling tool to derive and design a supervisory controller to coordinate and monitor collective and individual member functionality (behavior) of a mobile robot team, considering real-time robot sensor failures and repairs. The proposed supervisory control model is composed of a high level controller and a set of supervisory control modules. The high level controller activates the appropriate supervisor that redistributes task assignments to the robots in case of resource failures and repairs. The set of individual supervisory control modules (supervisors) all observe the activities of the robots and only the active supervisor provides control feedback to the robot team. The controller design accommodates flexibility in tasks assignment, robot cooperation, task prioritization and sequencing to accomplish a set of objectives. A team of mobile robots patrolling a warehouse is used as an example to demonstrate implementation aspects of the proposed supervisory controller. Index Terms- Mobile Robot Teams, Supervisory Control
I. INTRODUCTION The use of robots in industry is limited to predetermined and structured set of tasks such as pick and place operations or material handling processes. The dynamic characteristics of industrial environments compel the use of controllable robots that can adapt in real time to the systems’ requirements. In addition, many activities in industrial applications such as manufacturing, underground mining and material storage/handling of chemicals take place in hazardous environments harmful to human health. These applications can be assigned and carried out by automated mobile robots carrying the appropriate sensor suit. The development of a supervisory control model that oversees a team of mobile robots to work together as an automated patrolling/inspection system is addressed in this paper. The system is modeled using finite automata and it is based on the RW supervisory control framework [1]. The control model consists of a set of alternate supervisors designed to handle specific resource failures and a high level supervisor, which ensures uninterrupted operation of the team in case of robot failures and repairs. The robot team is always under the Manuscript received July 30, 2006. This research is partially supported by an ARO Grant with award number W911NF-06-1-0069 A. Tsalatsanis and A. Yalcin are with the Department of Industrial and Management Systems Engineering, University of South Florida, Tampa, FL 33620 USA (e-mails:
[email protected],
[email protected]). K. Valavanis is with the Department of Computer Science and Engineering, University of South Florida, Tampa, FL 33620 USA (email:
[email protected]).
1-4244-0537-8/06/$20.00 © 2006 IEEE
supervision of the active controller while the rest of the supervisors remain passive observing the behavior of the robot team. When a failure occurs in the robot team, the high level controller activates the appropriate supervisor, which redistributes task assignments between the remaining robots. The control model also considers cases where the resource may come back online. When, the high level controller observes a repair event in the uncontrolled system model (UCSM) it deactivates the current supervisor and determines the next active supervisor. The challenge in switching supervisors in real-time is the synchronization of the state of the UCSM and the state of the newly activated supervisor. For this reason all the controllers observe the system’s behavior and update their states but only the active one provides control feedback. This paper considers the partition based patrolling strategy described in [2] to develop a control model to oversee the behavior of the robot team. As a case study, a scenario where a team of mobile robots is assigned to patrol a warehouse containing hazardous materials has been developed to demonstrate the implementation of the supervisory control model. Three robots with different sensory capabilities are considered. Robot 1 has a fire detection sensor, Robot 2 has a chemical detection sensor and Robot 3 has both fire and chemical detection sensors. The warehouse’s territory is partitioned into 3 regions as shown in Fig. 1.
Fig. 1. Warehouse partitioning
Region 1 contains flammable materials, Region 2 chemical materials and Region 3 contains both. This configuration allows us to introduce characteristics such as task assignment flexibility, cooperation between the robots, task prioritization and task sequencing. An example of task assignment flexibility is that Region 1 can be patrolled either by Robot 1 or Robot 3. An example of sequencing and cooperation between the robots is that Region 3 must be patrolled either by Robot 3 or by Robot 1 and Robot 2 in that sequence. The team’s objective is to continuously inspect all the regions of
53
of task k by robot j” and the uncontrollable events Σ ju = { f jk } correspond to “completion of task k by robot j”. The set of states for the robot j is Qj = {Ij, Bjk} and denotes the status of the robot as idle (Ij) or busy (Bjk) on task k. The initial and the final state of the robot j is idle, namely qj0 = Qjm = {Ij}. Fig. 2 depicts the transitions graph for the automata describing each robot. The initial states are marked by an arrow and the marked states are shown as bold circles. The system’s flexibility to assign tasks to different robots is incorporated into the robots’ finite automata model. Note that the capability of each robot to complete different tasks is based on the sensors it carries. For example in Fig. 2 Robot 1 can perform Tasks 1 and 3, while Robot 3 can perform all tasks. A robot can only perform one task at a time. For example in state B11, where Robot 1 is assigned Task 1, event s13 which assigns Task 3 to Robot 1 is undefined. 22 2
f 2
1
s
11
f 1
s 23
and the uncontrollable events Σ jc ∪ Σ ju = {s jk , f jk } , and
32
f3
f 31
f 23
behavior of the robot, where Σj is the set of events for robot j = {1,2,3} , Qj is the set of states, δj : Σj x Qj → Qj is the transition function, qj0 and Qjm are the initial and the final states respectively. The set of events Σ j consists of the controllable
s 13
A. The uncontrolled system model Each mobile robot is modeled as a finite automaton G j = (Σ j , Q j , q j 0 , δ j , Q jm ) representing the uncontrolled
B31
s
I3
s 31
II. SUPERVISORY CONTROL In the proposed framework, the uncontrolled system model (UCSM) and the requirements model are designed separately and the supervisory control pattern is generated by coupling the individual models. For the patrolling scenario described in Section I, four controllers have been designed to maintain the robot team’s functionality in cases of resource failures and repairs. The first controller is responsible for the team’s behavior when all the robots are functional while the rest of the controllers are designed to accommodate failures on each robot. It is assumed that only one robot is offline at any time. The rest of this Section describes the design of the UCSM, the requirements model and generating the supervisory control pattern.
f 13
A. Related work Significant research effort has been directed in the area of cooperative mobile robots over the past years. Teams of robots have been used by the military for battlefield surveillance, target tracking [3] and humanitarian minefield demolition applications [4, 5]. In space, teams of mobile robots were used for Mars exploration [6, 7, 8]. Civilian use involves search and rescue applications [9, 10], shipboard guarding and cleaning [11, 12] and fire detection [13, 14, 15]. Supervisory control based on discrete event system models has been used by a number of researches to monitor and control the behavior of robot teams. Although resource failures are taken into consideration, not much effort is found in the area of control decisions concerning resource repairs. Specifically, the automata based approaches presented in [16, 17, 18] consider situations where some robots go offline but do not take into account situations where robots come back online. Similarly, the Petri Net controller in [19] disregards robot repairs. Finally, the control architectures presented in [20, 21] handle only robot failures.
based on the tasks assigned to the robots considering their sensory capabilities: 1,3 , if j = 1 (1) k = 2,3 , if j = 2 1,2,3 , if j = 3 The controllable events Σ jc = {s jk } correspond to “initiation
s
the warehouse. The overall objective is divided into 3 tasks where task k corresponds to the patrolling of the Region k of the warehouse and k = 1, 2,3 . The rest of this Section presents a review of related work in supervisory control of robot teams. Section II describes the supervisory control model and Section III introduces resource failures. Section IV discusses a supervisor reduction technique and Section V presents the concept of the high level supervisor. Finally, section VI concludes the paper and discusses future work.
2
B32
B33 Robot 3 Fig. 2. Transition graph for each robot
The behavior of the robot team is modeled by the automaton G = (Σ, Q, q0 , δ , Qm ) = G1 || G2 || G3 representing the concurrent behavior of G1, G2 and G3.
B. Requirements Model The requirements model is a finite automaton that models the set of specifications that govern the robots’ operation in regard to the patrolling application. For the scenario described in Section I three sets of specifications have been identified as follows: Specification 1: Task completion 1.1. Task 1 must be assigned and completed by Robot 1 or 3. 1.2. Task 2 must be assigned and completed by Robot 2 or 3 1.3. Task 3 must be assigned and completed by Robot 3 or robots 1 and 2 Specification 2: Task sequencing and robot cooperation
54
2.1. Task 3 must be assigned first to Robot 1 and then to Robot 2 Specification 3: Task priorities 3.1. Task 1 must be assigned to Robot 1 3.2. Task 2 must be assigned to Robot 2 3.3. Task 3 must be assigned to Robot 3 Specification 1 ensures that all tasks are assigned to robots. Specification 2 allows task sequencing and robot cooperation to perform a task. Consider the case that Robots 1 and 2 must perform Task 3. Since Robot 2 is not equipped with fire detection sensors it is vulnerable to fire. For this reason Task 3 must be completed first by Robot 1 and then by Robot 2. Specification 3 introduces task prioritization characteristics to the system. Robots that are designed to patrol a specific area must be assigned to this area. For example Robot 1 carries a fire detection sensor and must be assigned to Region 1 of the warehouse that stores flammable materials. Fig. 3 depicts the transition graphs for the previously defined specifications.
The control pattern Ψ : Σ × X → (0,1) enables or disables the controllable events in the UCSM. The marked language Lm ( D | G ) describes the sequences of events which take the coupled system from its initial state to its final state. The control pattern which restricts the system to executing the strings in the marked language guarantees deadlock-free operation and completion of all tasks. Table 1 shows the supervisory control pattern for the patrolling scenario discussed in Section I. An event sij is either undefined (denoted by (-)) where the event cannot be performed in the UCSM model, disabled (denoted by (0)) where the event can be performed in the UCSM but is disabled by the supervisory controller, or enabled (denoted by (1)) where the execution of the event in the UCSM is allowed. For example in state 0 only the events associated with initiation of Tasks 1, 2 and 3 from Robots 1, 2 and 3 respectively are enabled. In state 1, where Robot 1 has been assigned to Task 1, the events associated with initiation of Tasks 1 and 3 from Robot 1 are undefined. Finally, in states 20 to 26 where all the tasks have been assigned to robots, all the controllable events are disabled and only the uncontrollable events associated with task completion occur in the UCSM. State 26, which is the final state, all the tasks have been completed and the supervisor reinitializes. III. RESOURCE FAILURES
Fig. 3. Transition graphs of the specification models
Each specification model is described by a finite automaton. The requirements model D is synthesized by shuffling these individual models as: D = (Σ, Χ, ξ , x0 , X m )
= SP11 || SP12 || SP13 || SP31 || SP32 || SP33
(2) where SP11, …, SP33 are the individual finite automata for the specifications 1.1, …, 3.3 respectively. C. Supervisory Controller The supervisory controller SUP = (Φ, Ψ) consists of the coupled system model Φ and the control pattern Ψ. The coupled system model includes the transitions that are allowed by both the UCSM and the requirements model and it is defined as: Φ = D/G = (Σ, Q × X , δ × ξ , q 0 × x0 , Qm × X m ) (3)
In practice, a robot may go offline during its operation resulting in failure to start or to finish its assignment. It assumed that, under the concept of smart sensors [22], each robot notifies the supervisor when it starts and completes a task or when a failure of its sensors forbids it to perform a task. In the latter case the supervisor considers the specific robot offline and reassigns the tasks between the remaining robots of the group. Failures may happen both in the busy and in the idle state of the robot. These failures are grouped into four categories according to the state of the robot before the failure as: • Robot fails while in the idle state 1. Failure without possibility of repairing. The failure is considered catastrophic and the robot will remain offline. The supervisor will assign the tasks to the remaining robots. 2. Failure with possibility of repairing. The failure is considered temporal and the robot can be assigned to a task when it is repaired. During its failure the supervisor reassigns the tasks to the remaining robots. • Robot fails while in the busy state 3. Failure with partial completion of the task. The robot returns to the idle state when repaired. Since the task is incomplete the supervisor reassigns it to the remaining robots of the team. 4. Temporal Failure. The robot will return to the busy state when repaired completing its assignment.
55
TABLE 1. SUPERVISORY CONTROL PATTERN FOR THE PATROLLING SCENARIO
State\Event 0 1 2 3 4 5 6 7 8 9 10 11 12 13
s11 1 1 1 0 1 1 1 0 0 -
s13 0 0 0 0 0 0 0 0 0 -
s22 1 1 1 1 1 0 1 1 0 -
s23 0 0 0 0 0 0 0 0 0 -
s31 0 0 0 0 0 0 0 0 0 -
s32 0 0 0 0 0 0 0 0 0 -
s33 1 1 1 1 1 1 0 1 1 -
To accommodate resource failures and repairs in the controller design, modifications to the UCSM and the requirements model are required since the failed robot may no longer perform its assigned tasks. Each robot’s failure results in an alternate supervisor that will redistribute task assignments between the remaining robots and ensure task completion. In this scenario, failures in more than one robot will lead to a system incapable of carrying out the team’s objective due to resource limitations. For example, if Robot 3 and 1 fail then Tasks 1 and 3 cannot be performed due to the lack of fire detection sensors. This paper will not discuss the degenerative case where both Robots 1 and 2 have failed and the team’s objective is assigned to Robot 3. A. Modified UCSM and requirements model The traditional method to handle resource failures is to include failure states with the appropriate failure and repair events to the UCSM [23]. To illustrate this method, Fig. 4 shows the transition graph including the failed states for finite automaton model of Robot 1. In this model there are two failed states (F1, F2). F1 corresponds to failure from the idle state while F2 to failure from the busy state. This approach considerably increases the size of the UCSM. For example the finite automaton representing the UCSM for the scenario described in Section I will have 150 states instead of 36. As an alternative, modifications to the UCSM are performed to exclude the failed resource. For example if the Robot 1 fails in either idle or busy state the modified UCSM will consider only Robots 2 and 3 and will be defined as: G23 = (Σ 23 , Q23 , q 23, 0 , δ 23 , Q23,m ) = G2 || G3 . (4) Similarly, the UCSMs in the case that Robots 2 or 3 fail are:
G13 = (Σ 13 , Q13 , q13, 0 , δ 13 , Q13, m ) = G1 || G3
(5)
G12 = (Σ12 , Q12 , q12 , 0 , δ 12 , Q12 , m ) = G1 || G 2
(6)
In addition, events describing resource failures and repairs must be included in the UCSMs. These events are observed by the high level controller allowing activation of the
State\Event 14 15 16 17 18 19 20 21 22 23 24 25 26
s11 1 1 0 0 0 -
0 0 0
s13 0 0 0 0 0 0 0 0 0
s22 1 0 0 1 0 0 0 0 0
s23 0 0 0 0 0 0 0 0 0
s31 0 0 0 0 0 0 0 0 0
s32 0 0 0 0 0 0 0 0 0
s33 0 0 1 0 0 0 0 0 0
appropriate supervisor. Thus:
Σ = Σ1 ∪ Σ 2 ∪ Σ 3 ∪{b1,b2 ,b3 } Σ12 = Σ1 ∪ Σ 2 ∪{r3 } Σ13 = Σ1 ∪ Σ 3 ∪{r2 } Σ 23 = Σ 2 ∪ Σ 3 ∪{r1}
(7)
where, Σ, Σ 12 , Σ 13 , Σ 23 are the event sets of the automata G , G12 , G13 and G 23 respectively, Σ j are the event sets of the G j and {b j , r j } are the events associated with failures and repairs of the robot j.
Fig. 4. Transition graph for Robot 1 including the failure states
Additional modifications to the requirements model are also required. The task prioritization specifications (SP31, SP32 and SP33) require all robots to be functional. Thus, the task prioritization specification corresponding to a failed robot must be excluded from the requirements model. Namely, the requirements model in the case that Robot 1 fails is: D23 = (Σ 23 , Χ 23 , ξ 23 , x 23,0 , X 23,m ) (8) = SP11 || SP12 || SP13 || SP32 || SP33
56
TABLE 2. SUPERVISORY CONTROL PATTERN WITH RESOURCE FAILURE
State\Event 0 1 2 3 4 5 6 7 8 9 10 11 12
s11 1 1 0 1 1 0 -
s13 1 1 1 0 1 1 -
s22 1 1 1 1 1 0 1 0 1
s23 0 0 0 0 1 0 0 0 1
State\Event 13 14 15 16 17 18 19 20 21 22 23 24 25
Similarly the models for Robots 2 and 3 are: D13 = (Σ13 , Χ13 , ξ13 , x13, 0 , X 13, m )
= SP11 || SP12 || SP13 || SP31 || SP33 D12 = (Σ 12 , Χ12 , ξ 12 , x12, 0 , X 12,m )
s11 1 1 0 0 1 1 0 0 -
(9)
(10) = SP11 || SP12 || SP13 || SP31 || SP32 Having the modified UCSM and requirements models a set of alternate supervisors can be created to control the robot team in case of resource failures. B. Alternate supervisors To handle all possible resource failures, a set of alternate supervisors has been created. Each supervisor is generated by coupling the appropriate requirements models (D12, D13 and D23) and the UCSMs (G12, G13 and G23) as follows: SUP12 = (Φ 12 , Ψ12 ) where Φ12 = D12 / G12 (11) SUP13 = (Φ 13 , Ψ13 ) where Φ13 = D13 / G13 SUP23 = (Φ 23 , Ψ23 ) where Φ 23 = D23 / G23
s13 0 0 0 1 0 0 0 0 -
s22 0 1 0 0 1 0
s23 0 1 0 1 0 0
State\Event 26 27 28 29 30 31 32 33 34 35 36 37 38
s11 1 1 0 0 1 0 0 0
s13 0 0 0 0 0 0 0 0
s22 0 1 0 1 0 0 0
s23 1 0 1 0 0 0 0
associated with the states belonging to a group are consistent. This means that an event is enabled or disabled for all the states in a group. A formal definition on control covers is found in [22, 24]. The authors of [25] present an algorithmic technique to compute all possible covers of a supervisor. Fig. 5 shows one of the possible reduced supervisors RSUP of the supervisor SUP and Fig. 6 shows one possible reduced supervisors RSUP13 of the supervisor SUP13 . Note that as shown in Fig. 5 the transitions that cause state changes in the supervisor RSUP are associated with task completion events, while events related to task initiation appear as self-loops. A possible future research direction is to synthesize supervisors which only need to observe task completion events.
(12)
(13) The supervisors are created offline and they remain passive until a resource failure event occurs. The high level controller activates the appropriate supervisor to ensure continuous operation of the robot team. Table 2 shows the control pattern for the supervisor SUP12 . In this case, Robot 3 has failed and the supervisor assigns the tasks to the remaining robots. Notice that all the events corresponding to Robot 3 are not observed by this supervisor.
Fig. 5. RSUP: Reduced supervisor of SUP (all robots are functional)
IV. SUPERVISOR’S STATE REDUCTION The set of supervisors described in the previous sections contain redundant information because of the event sequences that are enforced by both the UCSM and the requirements model. A reduced supervisor eliminates these redundancies and at the same time guarantees the desired behavior. Research in [24] provides a supervisor reduction technique based on control covers. A control cover is used to group the states of the supervisor such that each state belongs to at least one group and the marked and unmarked states belong in different groups. Furthermore, the events
Fig. 6. RSUP13: Reduced supervisor of SUP13 (Robot 2 has failed)
57
V. HIGH LEVEL SUPERVISOR The high level supervisor is a rule-based controller that decides which supervisor will provide control feedback to the robot team. Fig. 7 demonstrates the control loop containing the high level controller. The high level controller observes only the events associated with failures and repairs of the robots. Based on these events it activates the appropriate supervisor. Let σ ∈ Γ = {b1 , r1 , b2 , r2 , b3 , r3 } be an event in the UCSM. The set of rules for the high controller is: 1. If σ = b1 (failure of Robot 1) then activate the RSUP23 reduced supervisor 2.
If σ = b2 (failure of Robot 2) then activate the RSUP13 reduced supervisor
3.
If σ = b3 (failure of Robot 3) then activate the RSUP12 reduced supervisor If σ ∈ {r1 , r2 , r3} (repair of any robot) then activate the
4.
RSUP reduced supervisor at the next patrolling cycle 5. If more than one robot fail then stop The supervisors, active or passive, observe the events occurring in the UCSM and update their current states based on their own transition graphs. However only the active supervisor provides control feedback to the UCSM. In this way the high level controller does not need to compute complex models for control switching every time an event associated with resource failure or repair occurs. For example, consider the case where a failure occurs in Robot 2 when the reduced supervisor RSUP is in state 1 (Fig. 5). At this point the high level controller activates the reduced supervisor RSUP13 . Based on the previous event sequences the current state of the reduced supervisor RSUP13 is 1 (Fig. 6) and the task of the failed Robot 2 is assigned to Robot 3. In reverse, consider that Robot 2 is repaired when the reduced supervisor SUP12 is in state 5. The high level controller will activate the reduced supervisor RSUP as soon as the current supervisor RSUP12 reaches a marked state. In this way the next cycle of the patrolling will start with all the robots functional. The high level controller can be modified to switch supervisors immediately after a repair event occurs in the UCSM by changing the 4th rule to: “If σ ∈ {r1 , r2 , r3 } (repair of any robot) then activate the reduced supervisor RSUP ” Consider the last example where Robot 2 is repaired. Suppose that the supervisor RSUP is in state 4 (Fig. 6) when the repair event occurs. Based on the event sequence, the newly activated supervisor RSUP is in state 1 (Fig. 5). Since the supervisor RSUP cannot observe events associated with Robot 3 performing Task 2, it will not realize that Task 2 has been completed. Thus the supervisor will assign Task 2 to Robot 2.
Both approaches, switching at the next cycle or immediately after a repair event occurs, achieve the team’s objective in a different manner. The former approach will activate the appropriate supervisor at the next cycle of the system but it will not allow an additional robot failure in the same cycle. The latter will activate the appropriate supervisor immediately when a repair event occurs but it may repeat task assignments.
Fig. 7. High level controller structure
VI. CONCLUSIONS This paper discusses the development of a supervisory control model designed to oversee the behavior of a team of mobile robots in a warehouse patrolling application. The control model consists of a set of alternate supervisors and a high level controller. The alternate supervisors are designed to handle resource failures and repairs while the high level controller decides which supervisor will provide control feedback to the uncontrolled system model. Each supervisor’s design accommodates flexibility in task assignments, robot cooperation, task sequencing and prioritization to accomplish a set of objectives. Unique to the work described here, events associated with task assignments and completions, and failures and repairs are controlled separately by a hierarchical supervisory control model reducing real-time computational requirements. The work also reveals some interesting issues related to the supervisory control of cooperative mobile robots. As mentioned in Section III (A) the traditional approach to handle resource failures is to include the failure states to the UCSM. Although the number of states and transitions in the UCSM is increased, such an approach can be used to derive adaptive supervisory controller models as pursued in [23] for medium sized team of robots. In the described patrolling application, Robot 3 carries fire and chemical detection sensors. A failure of a fire detection sensor can be considered by the supervisor as a partial failure of a robot and a task that does not require fire detection capabilities can still be assigned to that robot. In this manner the robot is considered partially
58
functional, leading more intelligent utilization of system resources. Another future research direction involves the development of generally applicable requirements model definitions to incorporate task assignments and task dependencies. In more complex scenarios, robot cooperation may be necessary without the involvement a centralized supervisory controller, where the robots communicate with each other directly or log/share data from a centralized database autonomously to complete their tasks. In such applications, procedures are required to assure that these processes are synchronized appropriately. Generally applicable system specification models must be developed independent of specific applications and preferably on already established data transaction standards such as ACTA as pursued in [26]. A control architecture based on Discrete Event System Theory facilitates modular development of system and specifications models and allows for a single model to be used to simulate, control and analyze system behavior. Furthermore, continuous control requirements for mobile robots, such as navigation, can be incorporated within a hybrid control architecture as described in [27, 28].
[14] [15] [16] [17] [18] [19]
[20] [21]
[22]
REFERENCES [1] [2] [3]
[4] [5] [6] [7]
[8] [9] [10] [11] [12] [13]
P.L. Ramadge, W.M. Wonham, “Supervisory control of a class of discrete event processes”, in SIAM Journal of Optim Control, vol 18, No 5, pp. 452-462,1987. Y. Chevaleyre, “Theoretical Analysis of the Multi-agent Patrolling Problem”, in Proc. of Int. Conf. on Intelligent Agent Technology, pp 302-308, 2004. Cheng Chen, Han Wang, Ng Teck Chew, J. Ibanez-Guzman, Shen Jian, Chan Chun Wah, “Target-tracking and path planning for vehicle following in jungle environment”, in Control, Automation, Robotics and Vision Conference, vol. 1, pp. 455 – 460, 2004 Y. Zhang, M. Schervish, E.U. Acar, H. Choset, “Probabilistic methods for robotic landmine search”, in Proc. of Inter. Conf. on Intelligent Robots and Systems, vol.3, pp. 1525-1532, 2001. V. Kumar, F. Sahin, “Cognitive maps in swarm robots for the mine detection application”, in Inter. Conf. on Systems, Man and Cybernetics, vol. 4, pp. 3364 – 3369, 2003. B.L.Gajjar, R.W. Johnson, “Kinematic modeling of terrain adapting wheeled mobile robot for Mars exploration”, in Proc. of the Third International Workshop on of Robot Motion and Control, 2002. P.C. Leger, A. Trebi-Ollennu, J.R. Wright, S.A. Maxwell, R.G. Bonitz, R.G., J.J. Biesiadecki, F.R. Hartman, B.K. Cooper, E.T. Baumgartner, M.W. Maimone, “Mars Exploration Rover surface operations: driving spirit at Gusev Crater”, in Proc. of Inter. Conf. on Systems, Man and Cybernetics, vol 2, pp. 1815 - 1822 Vol. 2, 2005. R. Washington, K. Golden, J. Bresina, D.E. Smith, C. Anderson, T. Smith, “Autonomous rovers for Mars exploration”, in Proc. of Aerospace Conference, vol. 1, pp.237 - 251, 1999. J.S. Jennings, G. Whelan, W.F. Evans, “Cooperative search and rescue with a team of mobile robots”, in 8th Inter. Conf. on Advanced Robotics, pp. 193 – 200, 1997. N. Ruangpayoongsak, H. Roth, J. Chudoba, “Mobile robots for search and rescue”, in Inter. Workshop on Safety, Security and Rescue Robotics, pp. 212 – 217, 2005. G. Roznowski, “Neural network based control system architecture proposal for underwater ship hull cleaning robot”, in Proc. of Intern. Conf on CAD Systems in Microelectronics, pp. 368 – 370, 2003. R.T. Pack, J.L. Christopher, K. Kawamura, “A Rubbertuator-based structure-climbing inspection robot”, in Inter. Conf. on Robotics and Automation, vol. 3, pp. 1869 – 1874, 1997. D.J. Pack, R. Avanzato, D.J. Ahlgren, I.M. Verner, “Fire-fighting mobile robotics and interdisciplinary design-comparative
[23] [24] [25] [26]
[27]
[28]
59
perspectives”, in IEEE Trans. on Education vol. 47, issue 3, pp. 369-376, 2004. A. Bradshaw, “The UK Security and Fire Fighting Advanced Robot project”, in IEE Colloquium on Advanced Robotic Initiatives, pp. 1/1 – 1/4,1991 Y. Takahashi, I. Masuda, “A visual interface for security robots”, in Proc. of Inter. Workshop on Robot and Human Communication, pp.123 – 128, 1992. D. Gordon-Spears, K. Kiriakidis, “Reconfigurable Robot Teams: Modeling and Supervisory Control”, in IEEE Transactions on Control Systems Technology, vol. 12, no. 5, pp. 763-769, 2004. K. Kiriakidis, D. Gordon, “Supervision of Multiple Robot Systems”, in Proc. Of American Control Conference, pp. 21172118, 2001. X. Wang, A. Ray, P. Lee, S. Phoha, , “A behavior-based Collaborative Multi-Agent System”, in Proc. of Inter. Conf. on Systems, Man and Cybernetics, vol. 5, pp. 4242-4248, 2003. J. King, R.K. Pretty, R.G. Gosine, “Coordinated Execution of Tasks in a Multiagent Environment”, in IEEE Transactions on Systems, Man, and Cybernetics – Part A, vol. 33, no. 5, pp. 615620, 2003. A. Shirkhodaie, “Supervised control of cooperative multi-agent robotic vehicles”, in Proc. of the 34th IEEE Southeastern Symposium on System Theory, pp. 386-390, 2002 S. Kimura, M. Takahashi, T. Okuyama, S. Tsuchiya, Y. Suzuki, “A Fault-Tolerant Control Algorithm Having a Decentralized Autonomous Architecture for Space Hyper-Redundant Manipulators”, in IEEE Transactions on Systems, Man, and Cybernetics – Part A, vol. 28, no. 4, pp. 521-527, 1998. H. Darabi, M.A. Jafari, A.L. Buczak, “A Control Switching Theory for Supervisory Control of Discrete Event Systems”, in IEEE Transactions on Robotics and Automation, vol. 19, no. 1, pp. 131-137, 2003. A. Yalcin, “Supervisory Control of Automated Manufacturing Cells with Resource Failures”, in Robotics and Computer Integrated Manufacturing, vol. 20, no. 2, pp.111-121, 2004. R. Su, W.M. Wonham, “Supervisor Reduction for Discrete Event Systems”, in Discrete Event Dynamic Systems: Theory and Applications, vol.14, pp. 31-53, 2004. A.F. Vaz, W.M. Wonham, “On Supervisor Reduction in discrete event systems”, in Inter. Journal Control, vol. 44, no. 2, pp. 475491, 1986. Ali Yalcin, Atul Khemuka, Pranav Deshpande, "Modeling and Control of Workflow Managements Systems based on Discrete Event Systems Theory", International Journal of Production Research, vol. 43, no. 20, pp. 4359-4379, 2005. Jung-Min Park, Insup Song; Young-Jo Cho, Sang-Rok Oh,“A hybrid control architecture using a reactive sequencing strategy for mobile robot navigation”, in Inter. Conf. on Intelligent Robots and Systems, vol. 3, pp. 1279 – 1284, 1999. R. Fierro, F.L. Lewis, “A framework for hybrid control design”, in IEEE Trans. on Systems, Man and Cybernetics, part A, vol. 27, issue 6, pp. 765-773, 1997.