換刀機械手設計帶CAD圖
換刀機械手設計帶CAD圖,機械手,設計,CAD
J Intell Robot Syst (2009) 55:155176DOI 10.1007/s10846-008-9299-1Unified Behavior Framework for ReactiveRobot ControlBrian G. WoolleyGilbert L. PetersonReceived: 17 October 2007 / Accepted: 12 November 2008 / Published online: 2 December 2008 US Government 2008Abstract Behavior-based systems form the basis of autonomous control for manyrobots. In this article, we demonstrate that a single software framework can beused to represent many existing behavior based approaches. The unified behaviorframework presented, incorporates the critical ideas and concepts of the existingreactive controllers. Additionally, the modular design of the behavior framework:(1) simplifies development and testing; (2) promotes the reuse of code; (3) supportsdesigns that scale easily into large hierarchies while restricting code complexity; and(4) allows the behavior based system developer the freedom to use the behaviorsystem they feel will function the best. When a hybrid or three layer controlarchitecture includes the unified behavior framework, a common interface is sharedby all behaviors, leaving the higher order planning and sequencing elements free tointerchange behaviors during execution to achieve high level goals and plans. Theframeworks ability to compose structures from independent elements encouragesexperimentation and reuse while isolating the scope of troubleshooting to thebehavior composition. The ability to use elemental components to build and evaluatebehavior structures is demonstrated using the Robocode simulation environment.Additionally, the ability of a reactive controller to change its active behavior duringexecution is shown in a goal seeking robot implementation.Keywords Behavior-based roboticsReactive control architectureSoftware design patternsSoftware frameworksB. G. Woolley G. L. Peterson (B)Department of Electrical and Computer Engineering, Air Force Institute of Technology,2950 Hobson Way, Bldg 640, Wright-Patterson AFB, OH 45433-7765, USAe-mail: gilbert.petersonafit.eduB. G. Woolleye-mail: brian.woolleyieee.org156J Intell Robot Syst (2009) 55:1551761 IntroductionMobile robotics applications place vehicles into environments where uncertainty isnormal. Environments like homes, offices, and public areas are inherently uncon-strained, and the use of cost effective motors and sensors that are inaccurate andprone to failure adds additional uncertainty about the environment. As intelligentvehicles are expected to handle increasingly more complex endeavors, their design,implementation and testing requirements grow. Symbolic approaches to world mod-eling are quickly overwhelmed trying to represent detail of an environment, both incomputational time and memory requirements. The alternative, reactive behavior-based controller implementations maintain responsiveness by abandoning the goalof optimality.Behavior-based controllers employ a small number of behaviors with an arbitra-tion element that performs action selection. This design provides robust low-levelcontrol but is customized for specific environments. This customization makes reuseof the control structures and behaviors for different scenarios or reuse on differentrobots rare. Complexity issues also plague reactive approaches when they attempt toscale up to support additional system responsibilities and deal with insurmountableobstacles, known as a capability ceiling. Reactive controllers face a capability ceilingbecause they lack a mechanism for managing their complexity 18.To combat the capability ceiling, and because the deliberative qualities of sym-bolic approaches are as important as the responsiveness of reactive approaches,layered architectures combine deliberative and reactive controllers 17. Layeredarchitectures gain the benefits of both goal seeking (deliberation) and responsiveness(reaction) 14. Since sequences of specialized behaviors provide a means of achiev-ing higher order goals and plans, then a mechanism must exist that allows individualbehaviors to be called on or activated interchangeably.Software engineering has identified that encapsulation via a well defined interfaceis effective for allowing independent components to be used interchangeably. Thishas the added benefit that modular components become reusable. By establishingbehaviors as reusable atomic elements, one can quickly form new collections of be-haviors as simple adaptations or constructions of existing elements. By incorporatingexisting behavior modules, new designs capitalize on reuse as a way of reducing theirdesign complexity, allowing specific system attributes to be developed and testedindependently. To meet this need, a unified behavior framework is introduced thatenforces a generalized interface that supports: modularity, functional abstraction,and reuse. Further, because the framework is modeled after the composite pattern16, new behaviors can be formed as arbitrated hierarchies using any combinationof atomic behaviors or existing hierarchical structures. This abstraction establishesfunctional boundaries that create a modular environment in which new structuresare easily formed as arrangements of existing behaviors and hierarchies. An addedbenefitoftheabstractionisthatdevelopersarenottiedtoonetypeofbehavior-basedcontroller and can switch and combine concepts from all of them.This paper explores the development of a reactive control system and its usewithin a layered architecture. A unified behavior framework is defined for a sys-tems reactive control element that abstracts the implementation details of specificbehaviors and permits behavior reconfiguration during execution. It demonstrateshow popular behavior architectures are established within the context of the unifyingJ Intell Robot Syst (2009) 55:155176157framework, making them modular and interchangeable and concludes with twoimplementations of the framework, one in simulation and the other in hardware as agoal seeking robot.2 BackgroundInitial research efforts in robotics focused on planning and world modeling 17in an attempt to develop completely rational mobile robots 33. The sense-plan-act approach, used in Shakey 29 and Rover 28 (Fig. 1a), proved inadequate indynamic and unpredictable environments, where the robot finds itself in troublewhen its internal state loses sync with the reality it is intended to represent 2. This iscaused by the amount of time and memory required to maintain and develop plans,that the state of the environment changes before the actions can be carried out 8.The planning bottleneck was alleviated through tasks being decomposed intocollections of low-level primitive behaviors, reactive planning 17. The ideas behindreactive planning stem from arguments such as Braitenbergs, who argues thatthe complex behavior of natural organisms may be the result of combinations ofsimple behaviors that generate more complex behavior 6. In equivalent researchBrooks claims that for many tasks, robots do not need traditional reasoning, onlya tight coupling of sensing to action. This is demonstrated with the Subsumptionarchitecture 7, 9.The Subsumption architecture advocates for a layered control system based ontask decomposition, an approach that is radically different from previous research.Figure 1 shows the linear sense-plan-act architecture (Fig. 1a) in comparison with thehorizontal structure of Subsumption (Fig. 1b). This parallel organization promotesconcurrent and asynchronous responses to sensor input. Each individual layer worksto achieve its particular goal. Coordination between layers is achieved when complexactions (or higher layers) subsume simpler actions, or when low-level behaviorsinhibit higher layers.Other reactive architectures emerge as effective robot control structures, eachretaining the original ideas of reactive planning. Specifically, that the system: isresponsive to the environment, includes a tight coupling of sensing to action (keepinglittle or no state representation), and should be robust, able to perform in the face ofunanticipated circumstances or sensor failure. Additionally, the system needs to bemodular, using incremental development to add capabilities, and the system musthave an execution that embraces parallelism and concurrency 2. In addition toabFig. 1 Two organization decompositions for robot control. a Sequential execution of functionalmodules; b a task-based decomposition into parallel execution modules158J Intell Robot Syst (2009) 55:155176Subsumption 7, 9, this article uses five reactive architectures for discussion: MotorSchema 1, Circuit Architecture 22, Action-Selection 26, Colony Architecture12, and Utility Fusion 32, 33. They are briefly introduced here and revisitedin Section 4, including a description of how they map into the unified behaviorframework.Unlike the priority ordered layers of Subsumption, the motor schema architectureemerged as a cooperative control approach, allowing for the simultaneous pursuit ofmultiple goals.This approachcapturesbehavioralprimitives suchasvector fieldsthatsupport specific perception tasks (e.g. obstacle avoid, move-to-goal, stay-on-path,etc.) which are arbitrated as a normalized vector summation to form a continuouspotential field. This approach is useful in navigation tasks, but is subject to localminima and cyclical paths 1.Circuit architecture is a hybridization that allows reactive behavior elementsand logical formalisms to be bundled into arbitrated collections. Because priorityarbitration occurs at each level of abstraction, developers can bundle unlike ap-proaches into mediated hierarchies that are combinations of reactive approaches,logical formalisms, and situated automata 22.Action-selection is an architecture that uses activation levels as a dynamic mecha-nism of behavior selection. Individual behaviors are grouped as competence modulesthat respond when predefined conditions are detected. Activation levels are usedto indicate a level of confidence that can persist while specific conditions exist ormay decay over time. Action coordination is achieved by selecting the competencemodule with the highest activation level. When used in dynamic environments,action-selection gives the global behavior an emergent quality because there is nopredefined layering or order of execution. Based on events in the environment, arobot may suddenly begin to display radically different attributes 26.Colony architecture is a direct descendant of Subsumption, allowing higher layersto suppress lower layers but eliminating the ability of lower layers to inhibit higherones. As a result of enacting the suppression only approach, the colony architecturebreaks away from the total ordering of layers found in Subsumption and permits theformation of priority based behavior hierarchies 12.The utility fusion architecture is an expansion of DAMN (Distributed Archi-tecture for Mobile Navigation) 32. Under this architecture, action selection iscoordinated via an evaluation of the utility that would result from taking a particularaction from a discrete set of actions. In DAMN, the arbiter is central to thearchitecture, taking on the unique kinematics of the specific robot, allowing theevaluation behaviors to remain platform independent and reusable. Behaviors usetheir own criteria to assess the utility of a proposed future state. The action thatcollects the highest overall utility is enacted by the arbiter. Although actions areenacted in a winner-takes-all fashion, the utility fusion approach is considered tobe cooperative because it selects the action that best serves the global goals of thesystem 33.Current research uses behavior based systems in three layer architectures 17, orhybrid architectures 4. This research focuses on refining connections between thebehavior based system and other components such as the deliberator. Extensionsinclude adding stochasticity to the deliberator 3, 31, temporal components 25,andalternativefuzzyrepresentations21.Additionally,behaviorbasedsystemshaveseen application in games 19 and on airborne platforms 13.J Intell Robot Syst (2009) 55:155176159Inadditiontothearrangementofthebehaviorsandarbitrationcomponents,muchresearch has been done on having the robot learn behaviors and sets of behaviors.This includes using artificial neural networks in combination with other componentssuch as fuzzy control 34, Q-learning 10. Or alternative ANN representationssuch as CTRANN 15, 27, GasNets 27, and Convolutional NN 24. Other ap-proaches include evolutionary algorithms that evolve fuzzy based behaviors 20, oraugmented neural topologies 35.While reactive architectures that are organized as task based decompositions areresponsive and able to operate in dynamic environments, they forfeit the ability tomake plans and pursue goals. Driven by requirements that systems must not onlybe responsive in dynamic environments, but rational and deliberative as well, athree layer architecture merges these two goals by incorporating reactive planningas a low-level control element and a deliberator at the highest level. The threelayer architecture is a common paradigm for designing these hybrid autonomousrobot control architectures 16. Under this architecture, the structure of the soft-ware system consists of three components: a reactive feedback control mechanism(the controller), a slow deliberative planner (the deliberator), and a sequencingmechanism that connects the first two components (the sequencer). Each layer ofthe architecture provides additional environment and sensor abstraction over theprevious, and focuses on larger reasoning and goal time scales. Despite the previouswork on reactive behaviors, the controller remains the most time consuming segmentto design and implement.3 Unified Behavior FrameworkOften, a mobile robot design implements a single behavior architecture customizedfor the intended application, thus binding its performance to the strengths andweaknesses of that architecture. Further, the ability to change or expand the basebehavior is made difficult because it is developed as an integral part of the controller,making one indistinguishable from the other. By making a clear separation betweenthese two pieces, the controller can use various packages of behavior logic withoutchanging the controller implementation. Additionally, behavior packages are nolonger tied to specific platform implementations, encouraging reuse. This sectionintroduces a Unified Behavior Framework (UBF) which allows a robot to seamlesslychange between disparate architectures and provides mechanisms that simplify thedesign, development and implementation of reactive control structures.The UBF, shown in Fig. 2, uses the strategy pattern 16 to provide the controllerwith the ability to dynamically swap its behavior packages at runtime. An abstractbehavior interface is used to define a set of related classes that can be used inter-changeably, namely leaf and composite behaviors. The controller, knowing how touse a behavior in its abstract form, is able to use any of the concrete implementationsthat belong to the family of behaviors in a uniform manner. This frees the low-levelcontroller from being bound to any single behavior architecture. In fact it providesthe ability to seamlessly switch between distinct architectures during execution, andpromotes the reuse of existing behaviors.The reuse of subcomponents is also encouraged in the UBF via a mechanismmodeled on the composite pattern 16. The composite pattern allows new control160J Intell Robot Syst (2009) 55:155176Fig. 2 Class diagram for theUnified Behavior Frameworkstructures to be formed as arbitrated hierarchies of existing behaviors, with theresulting structure being usable as a behavior. The consequence of this is that twoor more existing behaviors can be combined (regardless of their being leaves orcomposites) to form a new behavior structure.The software design mechanisms of the strategy and composite patterns encour-age a developer to use modular approaches that ease the complexity of designing,testing and implementing a collection of reactive behaviors, while providing theability to form larger hierarchies of behaviors. This isolates code complexity to theatomic (or leaf) behaviors. The freedom to join existing behaviors as compositionsencourages experimentation with various structural arrangements of elemental be-haviors, arbitration components, as well as existing behavior structures. Because theoperational logic of subcomponents is independently verified, this approach isolatesthe task of aligning a systems outward behavior to the structural arrangement ofcontrolmodules.WhiletheUBFdoesensurethatindividualelementsarecompatiblewith one another, it makes no assertion about the coherence of the resulting controlstructure. The results in Section 5.1 demonstrate these concepts as a robot simulationis used to observe the radical differences that arise in the external behavior attributesas various arbiters are used on an identical set of base behaviors.3.1 Encapsulating BehaviorsTo integrate the UBF with the controller, a layer of abstraction is required to make aclear delineation between the controller and the reactive behavior that drives it. Thisconcept is similar to that used in Pyro to provide a standard interface for applicationto multiple robot platforms 5. To make this possible, a standardized behaviorinterface is established that allows an action recommendation to be generated basedon the current state. The behavior interface of the abstract behavior class in Fig. 2consists of the genAction method that accepts the state to be evaluated and returnsan action recommendation in the form of motor outputs. The creation of a concretebehavior that sub-classes the abstract behavior has two distinct advantages overstandalone implementations. The first is that polymorphism requires the presenceof a genAction method. The second is that all such behaviors are interchangeablebecause, notionally, they are all behaviors.The interface for sensor and state information is administered by the reactivecontroller. The reactive controller uses a generic sensor interface referred to asJ Intell Robot Syst (2009) 55:155176161the Perceived State 23 to send the current perceived state to each behavior. Eachbehavior uses the perceived state to determine what action it wants to take, sent outas a motor command. The reactive controller then issues a motor commands basedon the final arbitrated recommendation of the behavior hierarchy.In order to discuss how the controller might employ this construct, assume thatfullyimplementedbehaviorsareavailable.Fromthecontrollersperspective,athree-step process is enacted as a continuous loop shown in Fig. 3. First, the state is updatedwith the robot sensor information to represent the current conditions. Second, thebehavior is asked to generate a recommended action by invoking the genActionmethod. The behaviors then get the state information and output a set of motorcommandsasan actionobject.Thereactivecontrollerreceivesaunifiedsetofactionsfrom the behaviors and identifies the motor commands that are then issued directlyto the motors via the execute method.This consistent interface enables seamlessly changing the active behaviors atruntime and provides a responsive and flexible basis of control. The ability to changebehaviors during execution allows the temporal sequencing of specialized behaviorsto pursue higher order goals without the reactive behaviors requiring informationabout the plans that they are used to achieve. This provides a means in a hybridarchitecture to have a component similar to reactive action packages (RAP) 14convert planning goals to behavior hierarchies. From an implementation perspective,specialized behaviors have limited complexity and are easier to design and test overmonolithic behaviors that attempt to address all possible world conditions. Instead asystem that relies on a collection of specialized behaviors with a common interface isable to observe the e
收藏