Professional Documents
Culture Documents
Shepherding Via Deformable Shapes
Shepherding Via Deformable Shapes
Shepherding Via Deformable Shapes
I. I NTRODUCTION
Group motion control is the problem of moving a group
of agents in coordination. An instance of this problem is
shepherding, where the objective is to herd a group of agents
(e.g. a flock of sheep, crowd of people, etc.) using one or
more “shepherd” agents (e.g. shepherds, riot police, etc.). (c) (d)
The objective of shepherding is typically to guide the group
to a goal, though other variants exist (e.g. escort or protection Fig. 1. Snap shots (a-d) of 15 shepherds successfully herding a
- a “parent” tries to maintain separation between their “child” large flock with 200 members exhibiting simple flocking behaviors
from one plaza to another in a street like environment.
and “stranger” [1]). A solution to the shepherding problem is
usually a sequence of movements the shepherd can perform
to guide the group to the goal. This sequence may be the for several reasons. First, it more accurately represents the
output of a high-level motion planner, the result of agent- contour of the flock than simpler representations such as
based behaviors working independently or in coordination to spheres or bounding boxes. Second, it favors areas of the
achieve high-level commands, or some combination thereof. search space where there is enough clearance for the blobs
Our recent work [2] showed that high-level planning to pass through.
combined with low-level shepherding behaviors can be an Our experiments show that D EFORM broadly outperforms
effective approach to guiding flocks amongst certain kinds our previous method (M AGB) in terms of robustness (higher
of obstacles. However, the results were inconsistent, and success rate), and scalability (effective for larger flocks and
on environments with narrow corridors and multiple paths larger teams of shepherds).
to the goal, our simplest method, “Medial Axis Graph-
Based” (M AGB) outperformed the planning-based methods II. R ELATED W ORK
when given a fixed budget of simulation steps. However, The group motion control problem is one that merges
M AGB does not scale well to larger flocks or larger teams the simulation and modeling of multi-agent dynamics with
of shepherds. cooperation, planning, and control. There is a large body
Main results This paper introduces a new approach to of work on the dynamics and modeling of human crowds,
shepherding called D EFORM, which is a hybrid of behavior- but there is still very little work on swarm motion control
based shepherd motions and low-level planning. The method via agent interactions, and no work has been proposed to
relies on an abstraction of the flock as a discretized de- systematically study group motion control as a whole.
formable shape or “blob”. We have chosen this abstraction Works that explore the crowd control problem have used
a variety of simple approaches such as introducing new
All authors are with Department of Computer Science, George Mason
University, 4400 University Drive MSN 4A5, Fairfax, VA 22030 USA, objects or agents into the environment. For example, the
{jharri1, cvo1, jmlien}@cs.gmu.edu effect of adding barriers into disaster scenario environments
was studied in [3]. Other works have attempted to model the Let the composite states of C at the time step t be SC (t) and
effect of adding agents with various social forces. The effect let those of G be SG (t). Therefore, a group control problem
of adding robots with attractive social forces was examined with n flock members and m shepherds in a 2-d workspace
in [4], and crowd dynamics in the presence of “leader” will have a state space in 4(n + m) dimensions.
individuals was modeled in [5]. Each flock member g ∈ G will be repelled by each visible
There are several works in robotics and computer ani- shepherd c ∈ C. We assume that the shepherd c knows about
mation related to modeling behaviors such as shepherding. g’s reactions. The flock G also exhibits certain behaviors
For example, Schultz et al. [6] applied a genetic algorithm when no shepherds are visible. In this paper, we will use
to learn rules for a shepherd robot. Its objective was to the flocking behavior [16]; however, other models such as
control the movement of other robots (sheep) that react by pedestrian dynamics [17] can also be used. In fact, the
moving away from the shepherd. Vaughan et al. [7] simulated proposed methods will be independent of G’s behaviors. In
and constructed a robot that shepherds a flock of geese addition to the collision-free constraint, other (user-defined)
in a circular environment. In computer animation, Funge constraints may be added, such as constraints that prevent
et al. [8] simulated an interesting shepherding behavior in the flock from separating for too long or prevent merging
which a T. Rex chases raptors out of its territory. Potter different types of flocks. A state that does not violate any
et al. [9] studied a herding behavior using three shepherds constraints is called a feasible state.
and a single sheep in a simple environment. None of the We use the term target to denote any intermediate position
aforementioned methods have shown the ability to guide that the shepherd attempts to steer the flock towards, and we
flocks in environments with obstacles. use the term steering point to denote any position to which
Swarm control can also be viewed as a cooperative prob- the shepherd moves himself in order to influence the move-
lem. The survey from Parker [10] provides an overview of ment of the flock. A roadmap is an abstract representation
multi-robot systems. From the perspective of multi robot sys- of the feasible configuration space in a given environment,
tems, the task of crowd control requires inherent cooperation, given as a directed graph G = (V, E), where each node in
in which the success of a robot in the team depends on the V represents a valid configuration, and each directed edge
actions of other robots. Inherent tasks (such as crowd control) (p, q) ∈ E denotes that it is possible for the flock to travel
are distinguished from non-inherent tasks (such as covering) from configuration p to configuration q.
in that they cannot easily be decomposed into independent
sub-tasks and thus are generally more difficult. Multiple B. Problem Statement
robots may also move in formation [11] to accomplish a Finally, we define the group-control problem as follows:
given task. In our previous research on shepherding behaviors Given SC (0) and PG (0), find a sequence of feasible states
[12], we observe that formations can be used effectively to SC (t) for 0 < t ≤ 1 so that all PG (t) are feasible and
control the motion of the group. Similar observations have PG (1) ∈ GS, where GS is a set of user specified goal states.
also been found in sociological studies of crowd control [13].
Recently, Shell and Matarić [14] have used multiple robots IV. OVERVIEW OF O UR M ETHOD
to deploy and assist with the evacuation of pedestrians. In this section, we will talk about the main framework
Effective solutions to the shepherding problem might also of the proposed method. This framework can be realized in
be applicable in other areas. The deformable shapes used in many different ways. An implementation of this framework
this paper have dynamic properties similar to oil spills [15], is discussed in Section V.
and this approach may be useful for developing effective
containment and cleanup strategies. A. Group Control as Deformable Shape Manipulation
Other Recent Work (note: integrate these into the other In order to control the flock’s motion, the shepherd’s
sections) Yeh et al. developed composite agents [1] which internal models should comprise the following components:
can exhibit many different behaviors including guidance, for (1) the shepherd’s behavior model, (2) the environment
which they use proxy agents as temporary obstacles. model, (3) the flock model, and (4) a model to represent
the other shepherds. Later, we will use these models as our
III. P RELIMINARIES
basis to define shepherd’s motion. Details of each model are
A. Group Control Problem described below.
In this section, we define some of the terms and concepts Behavior model The shepherd’s behavior is similar to
that are used later in the paper. that of a single- or multiple-arm robot performing object
In a group control problem, there are two types of agents: manipulation. To manipulate an object, a robot arm must
shepherds C and a flock G. A shepherd is an external agent alternate between two basic behaviors: “Transit” (reaching
that influences the movement of the flock. A flock is a and grasping the object) and “Transfer” (transporting the
collection of agents that try to steer away from the shepherd. grasped object) [18], [19]. The shepherd has two analogous
The shepherd’s task is to steer the flock to desired locations. behaviors: “Approach” (transit) and “Steer” (transfer). In
All agents have the shape of 2-d discs (of varying radii). approaching behavior, the shepherds attempt to get close
The state of an agent A (a shepherd or a flock member) is to the flock without disturbing it. In steering behavior, the
represented by the position and velocity of A, i.e., (xA , vA ). shepherd attempts to move the flock.
obstacle
Fig. 2. (a) An environment with a global roadmap, two obstacles, a shepherd (larger disc) and two sub-flocks. Each flock member is shown as a small
disc enclosed in a dashed circle, which represents its visibility. (b) The shepherd’s flock model is shown as two α-shapes for the two sub-flocks. (c) A
local roadmap is built around the flock nearest the shepherd.
Environment model All shepherds have access to a global problem. Given a desired shape, the shepherds’ task is to
roadmap representing the workspace. An example of such a find and position themselves at the contact points near the
roadmap is shown in Fig. 2(a). deformable object. A solution to the problem is likewise
Flock model It is impractical to handle each flock member reduced to determining a sequence of target shapes that will
individually, even when controlling a small flock. We believe eventually lead the flock to the final goal. D EFORM, shown
that the shepherd should have a high level representation in Algorithm 1, outlines the steps necessary to achieve the
of the flock to more efficiently guide the flock. In most goal.
existing methods, a bounding circle of the flock is used to
model the flock. This model works fine when the workspace Algorithm 1 D EFORM (G, C, g)
is relatively sparse. However, in environments with many Input: G (flock), C (shepherds), and g (goal)
obstacles or narrow corridors or when the flock size is large, while g is not reached do
a bounding circle is excessively restrictive. Compute the contour polygon PG (t) of G at time t
In the proposed framework, the shepherd represents the Determine the next target polygon PT (t + δt)
flock as a deformable object which can also split and Find ssteer ∈ SC to morph PG to PT
merge. During steering, the shepherd acts as a “deformer”, Move C to ssteer
continuously reshaping the contour of the flock to some
target shape. For example, the shepherds can represent the More precisely, D EFORM regards the flock as a deformable
contour of the flock using α-shape [20], [21], shown in object with an area conservative constraint. That is, D E -
Fig. 2(b), which is updated as the flock moves. To prevent the FORM will find a sequence of continuously deforming poly-
shepherd from disturbing the flock unnecessarily, the value gons PG (t), t ∈ [0, . . . , 1], so that PG (1) is near a goal. For
of α can be determined from the flock’s sensing range. In this each PG (t), the shepherds can tightly pack all flock members
paper, the shepherds represent the flock using “pixel blobs” in PG (t). Because D EFORM may not consider shepherd
(see Section V for details) to represent the flock’s deforming positions when building PG (t), additional soft constraints on
contour. PG (t) should be imposed to increase the chance of finding a
Shepherd model A shepherd needs to have a model to successful control plan. For example, the shepherds should
represent other shepherds. This model affects how we solve keep each polygon PG (t) as “fat” as possible and keep the
the the task allocation problem that assigns steering positions medial or the principal axis of PG (t) close to the edges of the
to shepherds. In this framework, we use a centralized system global roadmap. The fatness increases the controllability of
that knows the locations of all the shepherds. the flock and the centeredness reserves room for maneuver.
This is analogous to a large robot arm with many fingers There are many ways to compute the target polygons PT (t).
(i.e. shepherds) manipulating a deformable object (i.e. flock). For example, we can grow a search tree along the edges
All these fingers are connected to and only communicate with of the global (workspace) roadmap. Alternatively, we can
a central command center, which coordinates the shepherds. simply extract a path with maximal clearance and build a
Therefore, we reduce the task assignment problem to a sequence of area-conserving polygons along the path. Details
bipartite matching problem between the steering points and are discussed in the next section.
the shepherds. Then, the edge weight of the bipartite graph is Next, D EFORM computes the movements for the shep-
the geodesic distance (estimated using the global roadmap) herds so that the flock can assume the shape of polygon
between a shepherd and a steering point. PG (t) at each time step t. More specifically, given the
desired shape PT (t + 4t) in the next time step and the
B. Shepherding current flock model PG (t), the behavior will determine the
By representing the flock as a deformable object, the shep- necessary deformation and transformation to morph PG (t)
herding problem becomes a deformable object manipulation to PT (t + 4t) using, for example, the Iterative Closest Point
(ICP) algorithm [22] when α-shape is used to compute the B. Target Blobs
contour. In this paper, we use boolean operators between Given the current flock blob, the target shape is defined
pixel blobs to determine the necessary deformation. Finally, as another pixel blob, called a target blob, that includes all
D EFORM calculates a steering state ssteer ∈ SC for the flock members at the next time step. It is straightforward
shepherds (recall that SC is the state space of the shepherds). to compute the target blob. First, we pick a pixel that is
occupied by the closest flock member to the final goal
a potential steering point position. The closeness to the goal is measured by geodesic
distance. Once the center pixel o is determined, we grow the
PG − PT blob using free pixels, starting with the 8-connected set and
expanding in concentric rings around o. We stop when the
blob contains the same number of pixels as the number of
flock members. This ensures that the blob is large enough to
contain all flock members and also conserve the area of the
target blobs throughout the entire control behavior.
PT We say a flock configuration conforms to a target blob if
the target blob includes all flock members.
(a) (b)
Note that the target blob could be grown in many different
Fig. 3. (a) Target shape, current flock blob, and a potential steering point. ways. For example, one could make it grow away from
(b) Finding steering points using a radial partitioning. obstacles or toward the medial axis. The version we used
in this paper makes the blob grow as fat as possible.
flock
shepherds
Success Rate
0.6
(5, 10, 15, 20, and 25) on each of the 6 test environments. 0.4
We computed success rates as the proportions of sample
runs where the algorithm successfully moved the flock to 0.2
the goal. Table I shows example results for the “broken- 0
t” environment. For small flock sizes, D EFORM and M AGB
perform similarly. However, as the size of the flock increases, -0.2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
M AGB shows significant decay in performance - it is clear Flock Randomness
that more shepherds are needed to control larger flocks using
the M AGB behavior. On the other hand, D EFORM manages Fig. 7. Success Rate vs. Randomness Ratio on the broken-t Environment.
to achieve excellent results throughout (above 90% sucess
rate) with no negative trend in performance up to 25 flock
members.1 1.2 DEFORM
MAGB
We also ran experiments to test larger shepherd and flock
1
sizes on the “s” environment. The results, shown in Fig. 6,
show that D EFORM once again outperforms M AGB across 0.8
Success Rate
D EFORM M AGB 0
# Shepherds # Shepherds
1 2 3 4 1 2 3 4 -0.2
5 0.93 1.00 0.90 0.83 0.90 1.00 0.93 0.97 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
Flock Size
10 1.00 0.93 0.93 0.93 0.56 0.97 1.00 0.97 Flock Randomness
15 1.00 1.00 1.00 0.93 0.47 0.80 0.77 0.83
20 1.00 0.97 1.00 0.90 0.07 0.67 0.43 0.83 Fig. 8. Success Rate vs. Randomness Ratio on the s Environment.
25 1.00 1.00 0.97 0.97 0.00 0.40 0.33 0.43
empty 1.00 0.00 0.77 1.00 0.00 0.33 [11] T. Balch and R. Arkin, “Behavior-based formation control for multi-
env6 1.00 0.30 0.97 0.10 0.00 0.00 robot teams,” IEEE Trans. Robot. Automat., vol. 14, no. 6, pp. 926–
pillars 0.97 0.96 1.00 0.93 0.00 0.00 939, 1998.
s 0.97 1.00 0.83 0.70 0.00 0.00 [12] J.-M. Lien, O. B. Bayazit, R.-T. Sowell, S. Rodriguez, and N. M.
spiral 0.83 0.70 0.53 0.00 0.00 0.00 Amato, “Shepherding behaviors,” in Proc. IEEE Int. Conf. Robot.
Autom. (ICRA), April 2004, pp. 4159–4164.
[13] R. Applegate, Riot control: materiel and techniques. Stackpole Books,
VIII. C ONCLUSION AND F UTURE W ORK 1969.
[14] D. A. Shell and M. J. Matarić, “Directional audio beacon deployment:
This paper introduces and applies a new type of abstraction an assistive multi-robot application,” in Proc. IEEE Int. Conf. Robot.
to the problem of shepherding. By representing the flock Autom. (ICRA), 2004, pp. 2588–2594.
[15] X. Chao, N. J. Shankar, and H. F. Cheong, “Two- and
configuration as a discretized deformable object, we show three-dimensional oil spill model for coastal waters,” Ocean
that shepherding can be done more effectively than our pre- Engineering, vol. 28, no. 12, pp. 1557 – 1573, 2001. [On-
vious best method [2] in terms of handling larger flock sizes line]. Available: http://www.sciencedirect.com/science/article/B6V4F-
43MKKTY-3/2/26621349ce0865179e08c508afb58f69
and unpredictable flock behavior. This algorithm also has the [16] C. W. Reynolds, “Flocks, herds, and schools: A distributed behaviroal
virtue of needing less information about the environment. model,” in Computer Graphics, 1987, pp. 25–34.
Whereas our previous method relied on the medial-axis of [17] P. Kachroo, S. J. Al-nasur, S. A. Wadoo, and A. Shende, Pedestrian
Dynamics: Feedback Control of Crowd Evacuation. Springer, 2008.
the map, this new algorithm needs only an occupancy grid [18] Y. Koga, K. Kondo, J. Kuffner, and J. Latombe, “Planning motions
indicating open and closed tiles. This makes it significantly with intentions,” in Proc. ACM SIGGRAPH, 1995, pp. 395–408.
more applicable to robotics scenarios where a priori map [19] C. L. Nielsen and L. E. Kavraki, “A two level fuzzy PRM for manip-
ulation planning,” IEEE/RSJ International Conference on Intelligent
information is not available. Robotics and Systems, pp. 1716–1722, 2000.
In the future, we’d like to try growing target blobs that [20] H. Edelsbrunner, D. G. Kirkpatrick, and R. Seidel, “On the shape of
favor metrics besides just “fattest”, such as growing away a set of points in the plane,” IEEE Trans. Inform. Theory, vol. IT-29,
pp. 551–559, 1983.
from obstacles or towards planned waypoints. We are also [21] H. Edelsbrunner and E. P. Mücke, “Three-dimensional alpha shapes,”
further exploring the interaction between high level planning ACM Trans. Graph., vol. 13, no. 1, pp. 43–72, Jan. 1994. [Online].
and these behaviors. Available: ftp://cs.uiuc.edu/pub/edels/geometry/shapes-94.tar.Z
[22] P. J. Besl and N. D. McKay, “A method for registration of 3-d shapes,”
IEEE Trans. Pattern Anal. Mach. Intell., vol. 14, no. 2, pp. 239–256,
R EFERENCES 1992.
[1] H. Yeh, S. Curtis, S. Patil, J. van den Berg, D. Manocha, and M. Lin, [23] H. Cheng, H. Edelsbrunner, and P. Fu, “Shape space from defor-
“Composite agents,” in Proceedings of Eurographics / ACM SIG- mation,” in PG ’98: Proceedings of the 6th Pacific Conference on
GRAPH Symposium on Computer Animation, M. Gross and D. James, Computer Graphics and Applications. Washington, DC, USA: IEEE
Eds., 2008. Computer Society, 1998, p. 104.
[2] C. Vo, J. F. Harrison, and J.-M. Lien, “Behavior-based motion planning [24] S.-W. Cheng, H. Edelsbrunner, P. Fu, and K.-P. Lam, “Design and
for group control,” in Proceedings of the IEEE International Confer- analysis of planar shape deformation,” Comput. Geom. Theory Appl.,
ence on Intelligent Robots and Systems (IROS), St. Louis Missouri. To vol. 19, pp. 205–218, 2001.
Appear., 2009. [25] H.-L. Cheng, T. K. Dey, H. Edelsbrunner, and J. Sullivan, “Dynamic
[3] M. Brenner, N. Wijermans, T. Nussle, and B. de Boer, “Simulating skin triangulation,” in SODA ’01: Proceedings of the twelfth annual
and controlling civilian crowds in robocup rescue,” in Proceedings of ACM-SIAM symposium on Discrete algorithms. Philadelphia, PA,
RoboCup 2005: Robot Soccer World Cup IX, 2005. USA: Society for Industrial and Applied Mathematics, 2001, pp. 47–
[4] J. Kirkland and A. Maciejewski, “A simulation of attempts to influence 56.
crowd dynamics,” in IEEE International Conference on Systems, Man
and Cybernetics, vol. 5, 2003, pp. 4328–4333.
[5] F. Aubé and R. Shield, “Modeling the effect of leadership on crowd
flow dynamics.” in ACRI, ser. Lecture Notes in Computer Science,
P. M. A. Sloot, B. Chopard, and A. G. Hoekstra, Eds., vol. 3305.
Springer, 2004, pp. 601–621.