You are on page 1of 12

Automation in Construction 19 (2010) 750761

Contents lists available at ScienceDirect

Automation in Construction
j o u r n a l h o m e p a g e : w w w. e l s ev i e r. c o m / l o c a t e / a u t c o n

A physics-based simulation approach for cooperative erection activities


Hung-Lin Chi, Shih-Chung Kang
Dept. of Civil Engineering, National Taiwan University, Taipei City 10617, Taiwan

a r t i c l e

i n f o

Article history:
Accepted 1 March 2010
Keywords:
Cooperative erection activities
Rigid body dynamics
Forward kinematics
Construction crane
Physics-based simulation
Erection planning
Virtual reality
Robotics

a b s t r a c t
Cooperative erection activities are critical to projects which involve the erection of heavy loads or the
installation of special equipment. Detailed simulation on computer prior to construction can identify
constructability problems, and subsequently avoided during actual erections. This paper describes an
integrated approach for simulating the detailed motions of cranes. This research develops a physics-based
model that follows the principle of closed-form forward kinematics and constraint-based dynamics to
present the dual-crane mechanism mathematically a non-trivial task. This model can be used to analyze
the inputs from the users (i.e. virtual crane operators) and simultaneously compute the cables sway and
reaction of collisions. We also implemented the model on computer and developed a simulation system,
Erection Director, to render realistic cooperative erection activities. A demonstration of simulating two-crane
lift has been built and three performance tests including a small building (840 elements), a medium building
(1937 elements) and a large building (2682 elements) validate the feasibility of the proposed approach. The
test results indicate that Erection Director can support real-time and physics-based visualization of
cooperative erections.
2010 Elsevier B.V. All rights reserved.

1. Introduction
Cooperative erection activities are very common in modern
construction projects, especially for plant constructions, in which a
typical yet critical task is the installation of the major equipment. The
installation process usually involves the erection of extremely heavy
equipment. Even though a detailed plan is usually developed to level
the erection loads, the weight of a single erection can be as high as
1300 t on some larger plant constructions. It is efcient to complete
such erection tasks using multiple and relatively cheap cranes
cooperatively rather than specifying a single more expensive crane
[1,2]. In most cases, two cranes, usually a major crane and an assisting
crane, work cooperatively to complete such an erection activity.
In two-crane cases, erection planners need to consider three major
issues to properly arrange and plan cooperative erection activities. First,
they need to maintain the loads of the cranes within safe working
capacities for the duration of the erection processes. However, without
the use of an effective computational method, it is onerous to analyze
and calculate the loads on each individual crane. Most planners simply
rely on their experience or estimate the loads using static mechanics.
Due to a lack of reliable simulations, the erection plans are usually overly
conservative in order to reduce the possibility of dealing with
unforeseen situations.

Corresponding author.
E-mail addresses: hlchi@caece.net (H.-L. Chi), sckang@ntu.edu.tw (S.-C. Kang).
0926-5805/$ see front matter 2010 Elsevier B.V. All rights reserved.
doi:10.1016/j.autcon.2010.03.004

Avoiding collision is the second issue planners need to consider


carefully. Since most of the cooperative erections take place around
half-way into the project, the building structures are already partially
built thus the two cranes need to cooperate to transport the
equipment into the building. Every part of both the equipment and
the cranes must not collide with any object of or in the partially built
structure. This requires the consideration of the 3D geometrical
relationship between the cranes' congurations, the rigging object,
and the crane cables sway. In current practice, planners rely on
experience or a simplied model that preserves working space to deal
with this problem.
The third consideration is the attitude (i.e. position and orientation
in space) of the equipment for the entirety of the erection processes.
The equipment needs to follow a specic path or sequence to be
transported safely to the location of installation, especially for
processes performed in an environment with many obstacles. Two
cranes need to work cooperatively to maintain the equipment on
predened paths. After reaching the installation location, the
equipment needs to be maintained at a certain attitude until
installation commences.
To handle such complexities, we need to develop a simulation that
can realistically reect actual erection scenarios. This simulation
should not only include the visual presentation of erection processes,
but also the related physical information, such as force feedback, cable
sways, and collision behaviors. Such a simulation will be workable in
real time and would facilitate erection planners in generating safe,
efcient, and collision-free paths for cooperative erection activities in
the future.

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

2. Related work
Many previous studies are aimed at realizing the simulation of
erection activities while considering the safety loading range, collision
avoidance, and transportation attitude [3,4]. In the eld of training
simulator development, SimLog1 and CMLabs Corporation2 provide
advanced devices for crane operation training. These are assistant
tools that help novice crane operators practice their skills using
several different training scenarios, each customized to prepare
operators to sit for a particular certication examination. The
movements of the virtual crane are directed by user manipulation
and the reactions reect actual physical behaviors.
Many construction consulting rms have developed adds-on or
external modules for existing visualization tools to simulate cooperative erections. An engineering consulting corporation, Chung-Ting
(CTCI), developed an add-on for the AutoCAD3 system which provides
a visualization interface for erection simulations. A product from JGC
Corporation4 also provides a virtual environment with various
viewing interfaces for visualizing the planning movements. Both of
these products can automatically generate animations of rigging paths
for erection activities.
Some related works can also be found in academia. Researchers
usually use automated approaches that integrate modern search
processes [5,6] or heuristic technologies from the eld of numerical
kinematics [7] and motion planning [8] to generate the movements of
cooperative virtual cranes automatically. Users need to set up the
initial conditions of a construction jobsite and the software determines the most efcient yet safe and collision-free paths for use in
simulating the erection activities.
In popular software, such as 3D Studio Max [9] and Maya [10],
semi-automation is used to produce animation. Users set key frames
so that the frames in-between can be interpolated. Such technology is
also feasible for planning the movements of erection processes.
These approaches and technologies are capable of simulating
different aspects of erection activities, but there should be appropriate
ways of integrating these methods to negotiate all of the three major
issues mentioned in Introduction section. Therefore, due to the
complexity of the combinations of the cranes' motions and issues of
realism, the challenge in the simulation of cooperative erection is to
develop a methodology for generating accurate, feasible, and
collision-free motion paths that represent the complex interactions
between cooperating cranes, and to perform visualizations in realtime.
3. Research goals
This research aims at utilizing physics-based animation methods,
which are widely used in game physics and training simulators, to
generate detailed cooperative erection activities in a virtual environment. Unlike game environment which focus more on the visual
stimulation instead of precision. Our work, on the contrary,
emphasizes the precision of the simulation. By using these methods
and real construction cases, it should be more exible to build up the
simulation scenarios and at the mean time to show them at acceptable
frame rate per second. The simulation is not just for training purpose
but focuses on the evaluations of erection plans. Work-items need to

751

be simulated as accurately as possible in order to nd potential


problems before physical operations commence. In order to retain
exibility and generality in solving these problems, a prototype
system for visualizing the simulations has been developed and
evaluated to perform the simulations.
4. Existing methods for generating physics-based simulation
To simulate high-risk erection activities, the integration of physicsbased simulation methods plays a signicant role in this research.
Physics-based simulation methods utilize various theoretical laws of
physics and a variety of mathematics; combined they describe a
mathematical model of the real world.
Existing methods for generating physics-based simulations can be
generally divided into two categories: kinematic and dynamic, to
fulll the needs of the kinematic and dynamic simulation respectively.
Table 1 presents the classication of physics-based simulation
methods. According to the modeling directions, is the two categories
can be further divided into four groups: forward kinematics (FK),
inverse kinematics (IK), forward dynamics (FD) and inverse dynamics
(ID).
Kinematics is the study of an object's motion without considering
its mass or the forces acting on it. By describing the properties of
geometry and the relations of coordinates, the movements of an
object can be formulated in a virtual environment. Differing from the
principle of kinematics, dynamics takes mass and forces into
consideration and generates more realistic and accurate behaviors
during simulation.
Forward modeling means that the position and orientation of
every part of the articulated-object can be manipulated and is known
by the modeler. When the next time-step of the animation is
generated, there exists only one solution to achieve the resulting
motion from calculation and accumulation of the status of each part of
the object. In contrast, inverse modeling means that the resultant
position and orientation are known. However, there is more than one
solution (or sometimes no solution) for each articulated part of the
object to achieve the goal motion.
The methods of the inverse kinematics and dynamics group of
Table 1, are heuristic and usually used to nd the feasible paths or
movements by assigning the objective position and orientation. They
can be useful in generating animation for automatic construction
planning. Kamat and Martinez [7] used the cyclic coordinate descent
method to automatically simulate the operations of articulated
construction equipment.
In the forward kinematics and dynamics group of Table 1, key frame
animation is a semi-automatic method where users rst set up the key
positions and orientations (frames). The software's built-in function for
key-frame animation then automatically interpolates the continuous
movements between each frame. The particle system method [12], used
to simulate the movement of points of mass, is the base theorem for
deriving rigid body dynamics. This means that it does not completely
fulll the use of rigid body simulation. The nite element method [13]
can be used to analyze ne movements such as vibrations and

Table 1
The classication of physics-based simulation methods (Modied from [11]).

Simlog, Mobile Crane Personal Simulator, Retrieved June 25, 2007, from http://
www.simlog.com/personal-crane.html.
2
CMLabs, Vortex Training Simulators, Retrieved April 2, 2007, from http://www.
vortexsim.com.
3
Autodesk, AutoCAD, Retrieved June 25, 2007, from http://usa.autodesk.com/adsk/
servlet/index?siteID=123112&id=2704278.
4
JGC, 4D CAD System, Retrieved June 25, 2007, from http://www.jgc.co.jp/en/
03srvs/07const/02e_const/4d_cad.html.

Forward
kinematics (FK)

Inverse
kinematics (IK)

Forward
dynamics (FD)

Inverse
dynamics (ID)

Closed-form
solutions
Key-frame animation
(interpolation)

Cyclic coordinate
descent
Jacobian method

Constraint-based
simulation
Particle systems

Recursive newton
euler method
Optimization
problems

Finite element
method

752

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

deformations of cranes. However, a set of simplifying assumptions is


required to be applied on the conditions, and deformations on rigid
equipment are relatively small.
Unlike automatic animation, this research is focused on operationallevel simulation and controllable manipulations. In other words, it
targets the situation where the crane operator manipulates the virtual
crane without knowing the exact reaction of the crane when the action

is executed. For example, the operator can control a gear to rotate


the boom of the crane, but the user would not know to where the
hook of the crane will swing. For these reasons, the remaining methods,
closed-form solutions and constraint-based simulations, are appropriate approaches to numerically modeling a crane. They will be called
closed-form forward kinematics and constraint-based rigid body
dynamics, and are explained in the following sections.

5. Single crane modeling


A two-step methodology, as will be described, is required to develop a cooperative erection simulation. The rst step is single crane modeling.
This describes a numerical modeling method using the principle of closed-form forward kinematics and constraint-based rigid body dynamics.
The second step is to derive the modeling method for a cooperative dual-crane scenario.
The principle of closed-form forward kinematics and constraint-based rigid body dynamics are individually used to model different parts of
the crane. Fig. 1 shows the architecture of the numerical single crane model.
The manipulation model, which includes the track, cabin, and the boom of the crane, is modeled using closed-form forward kinematics.
Closed-form forward kinematics can model the articulated crane piece by piece according to the transformation matrices described between each
rigid part of the crane. This transformation information is able to identify the status of every point on the manipulation model during crane
operations. By using this method, it is easy to simulate the behaviors of the track, cabin, boom, every rigid components of crane and the
connections between these rigid bodies. However, dynamic properties such as operational vibrations and loading deformations are not
considered in this model. Compared with the cable and suspended portion of the crane, the dynamic properties are insignicant and can be
ignored on the rigid parts of a crane. Therefore, this rigid part, also called the manipulation model, uses the principle of closed-form forward
kinematics to generate a model for effective simulation.
The suspension model, which includes the cable and the hook of the crane, is produced using constraint-based rigid body dynamics, which is
the most widely used principle in the eld of game physics and caters for physical reactions by modeling every kind of constraint implied in the
real world, such as the limitation of the joint, the contact point, friction, and damping. These constraints are used to construct the connections
between each part of the suspension model, and to generate physical behaviors, including cable sway and object collision, during simulation.
The process of numerically modeling the crane can be completed by combining the manipulation model with the suspension model. By
calculating the position and orientation of the top of the boom using the manipulation model, we can change the state of the joint attached at the
top of the boom and generate a chain reaction on the suspension model. The new status of the top of the boom can be treated as an external force
applied at the top of the cable. Therefore, the physical swinging behavior of the suspension system can be shown when the user operates this
crane model virtually.
The details of these two models are described individually in following sections.
5.1. Manipulation model
The purpose of using closed-form forward kinematics in this research is to describe the motions of the rigid part of the crane manipulation
model in a mathematical form. The rigid part of the crane can be treated as a stationary robot that is composed of a series of rigid bodies. By
describing all spatial information between these rigid bodies, a controllable model in a virtual environment can be developed. The spatial
information between these rigid bodies can be represented by a 4 4 matrix which describes the position and orientation of specic connections.
Through the denition of a rigid object in a three-dimensional space, we transfer the manipulation model of the crane into the schematics of a
manipulator. A manipulator identies each connection and describes the relative motion between neighboring pieces. In the case of Fig. 1, the
type of joint used between every part of the manipulation model is always a hinge. For example, the joint between the track and cabin, or the
cabin and boom, are hinges, and have nite rotation along a specic plane between the neighboring rigid objects. As for rotation between the
track and cabin, this is along the xy plane in an ideal situation.
In the manipulation model of the crane shown in Fig. 2(a), the top of the boom can be temporarily treated as a free end (without connecting
the suspension model in this discussion). There are three rotation hinges and, the contact plane between the ground and the track is also
considered as a hinge. This is because if the movable base is excluded, the track is allowed to rotate along the contact plane, changing the

Fig. 1. The architecture of the numerical single crane model.

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

753

Fig. 2. The manipulation model of a single mobile crane: (a) illustration; (b) schematic representation.

orientation of the entire crane. Therefore, the rotation angles 1, 2, and3 denote the working range of these joints, while X0, Y0, and Z0 represent
the moveable position where the manipulation model is located. A schematic representation is shown in Fig. 2(b).
After constructing the schematics of the manipulator, we have to nd out the relationship between neighboring rigid objects and integrate the
transformation matrix to represent them. Here we employ the DenavitHartenberg notation [14]. DH notation can be used to describe any type of
articulated manipulator by following a general procedure. This general procedure may not only be applied to the simple conguration described in
this paper, but also to more complex mechanisms for further use. In addition, DH notation presents the relationship between joint movement by a
4 4 matrix. This mathematical presentation can aid software developers when designing and implementing the system. The notation denes a
coordinate system attached to each joint that is used to describe the displacement of each object relative to its neighbors in a general form. Following
the rules of the notation, four parameters, ai 1, di, i 1, and i, are used to describe the relationship between two coordination systems in a general
form. By identifying these four parameters, the transformation matrix between coordinate system {i 1} and {i} can be derived. We can transfer
coordinate system {i} to {i 1} by translating two directions, ai 1 and di, and rotating i 1 and i along ai 1 and axis i 1. Similarly, this is a general
way to describe any other type of connection. The general form of a transformation matrix can be presented as follows:

i1

Ti =

sin i

a i1

sin i cos i1

cos i

cos i cos i1

sin i1

sin i1 d i

sin i sin i1

cos i sin i1

cos i1

cos i1 d i

where i 1Ti maps the coordinate system {i} relative to the coordinate system {i 1}. Notice that it is a 4 4 homogenous matrix and the following
derivations are all used this kind of representation.
Fig. 3 illustrates the geometrical relationship using the schematic of the manipulator that we derived earlier. The ve coordinate systems, xi, yi,
and zi (where i represents a number from 0 to 4), are each simplied to {i} and attached to the manipulator. We now have every property
represented by four parameters, ai 1, di, i 1, and i, between each neighboring coordinate system. The coordinate system {0} is the global
reference and is xed in virtual space. Compared with the coordinate system {1}, which is attached to the contact plane between the track and the
ground, there are positional offsets (X0, Y0, Z0) and a directional difference (1) between the coordinate systems {0} and {1}. Similarly, we have
transformation information between each neighboring coordinate system.
By assigning these parameters to the general form of the transformation matrix in Eq. (1), we can formulate four matrices, 0T1, 1T2, 2T3 and 3T4
to describe all the relationships. By multiplying the developed matrices that describe all the relationships between each rigid body of the
manipulation model, we can generate motions numerically by identifying the position and orientation of each rigid body when the statuses of
some are changed after a simulation time-step. This is the main reason behind using closed-form forward kinematics to model the construction
crane. For example, the relationship between the top of the boom (coordinate system {4}) with respect to the origin (coordinate system {0}) can
be represented by multiplying together all the transformation matrices 0T1, 1T2, 2T3, and 3T4 as follows:
2

c1 + 2 c3
6 s1 + 2 c3
0
0 1 2 3
6
T4 = T1 T2 T3 T4 = 4
s3
0

s1 + 2
c1 + 2
0
0

c1 + 2 s3
s1 + 2 s3
c3
0

3
c1 + 2 a2 s3 d4 + s1 + 2 d3 + X0
s1 + 2 a2 s3 d4 c1 + 2 d3 + Y0 7
7
5
c3 d4 + d1 + Z0
1

where 0T4 denotes the transformation matrix between coordinate system {0} and {4}. The symbol c denotes the cosine function and s denotes the
sine function.
If the crane moves forward and the location is changed by the crane operator, the new position and orientation of the top of the boom can be
identied by the equation described below:
0

P = T4 P

754

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

Fig. 3. The geometrical relationship of the manipulation model: (a) right side view; (b) top view.

where 0P represents the homogenous vector describing the location of the top of the boom with respect to coordinate system {0}. Likewise, 4P
represents the homogenous location vector of the top of the boom with respect to coordinate system {4}. This location vector's form can be seen
as below:
T

P = x; y; z; 1 :

After multiplying the transformation matrices, we can nd the value of the vector in the same coordinate system.
Similarly, any other vector described in this chain relationship system can be identied using the forward kinematics method. As the
exibility of the rigid part of the crane is relatively small compared to the suspension model, we can use this method for efcient rendering
without having to follow the principles of dynamics.
5.2. Suspension model
This section introduces the principle of constraint-based rigid body dynamics and describes how to formulate the motions of the suspension
model using this principle. It is mainly used for simulating the physical motions of articulated objects. The articulated objects can be treated as
systems with specic types of constraints among connected joints and contact planes. These constraints represent the limitations of motion and
place restrictions that cause the virtual objects to act as they would in the real physical world. For example, the constraints can be formed as the
movement range of joints, contact points which exhibit spring-like or stiff reactions, and even the behaviors of motors.
In this research, the joint descriptions of the suspension model are identied. We use the methodology of formulating the constraints,
followed by applying constraint-based rigid body dynamics. The basic idea for formulating all kinds of constraints is to represent them in a matrix
form. First, we take the ball-in-socket joint as an example. The detailed formulating procedures can be referenced from previous works [15] and
other references [16,17]. Second, we explain how the model of the suspension part of the crane is constructed.
The number of degrees of freedom (DOFs), which is the minimum set of parameters needed to describe the motion of a rigid object in the
system, is the key part of the constraints formulation. A free moving body has six DOFs: three parameters, x, y, and z, to describe its position and

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

755

Fig. 4. Constraint formulation for a ball-in-socket joint.

three parameters, , , and to describe its orientation. If there are two bodies Bi and Bj in the system, we have twelve DOFs. The general form P
for describing these two bodies can be represented as follows:

P = xi

yi

zi

xj

yj

zj

T

A xed connection between two rigid bodies Bi and Bj reduces the number of DOFs of the system to six. Similarly, if rigid bodies Bi and Bj are
connected together by another kind of joint, some of the DOFs can be removed, the number depending on the type of connection. However, the
maximum number of DOFs that can be removed is six.
Assume that the l'th joint is a ball-in-socket joint between the two bodies Bi and Bj as represented in Fig. 4. With equality in the x, y, and z
dimensions at the common point we can formulate three equations as follows:
x P =

h
 
i
i
j
Pi + R i Panc Pj + Rj Panc
=0

y P =

h
 
i
i
j
Pi + R i Panc Pj + Rj Panc
=0

z P =

h

 
i
i
j
Pi + R i Panc Pj + Rj Panc
=0
z

where Pi and Pj are the position vectors of Bi and Bj respectively, Ri and Rj are the corresponding rotation matrices of each body's orientation, and
P ianc and P janc are the anchor vectors which represent each body's center of mass to the connected point. By formulating these three constraint
equations, three DOFs can be removed from the joint.
If we reorganize these formulations, the constraint equations can be represented by the following vector form:

P = x P

y P

z P

T

= 0:

By using the same rules for other types of joints, we can nd the same expression (P) but with a different row m, which represents the
number of constraints or removed DOFs. The removed DOFs imply restrictions on the movement capability of the joint.
Now we explain how the suspension model of the crane is constructed. We built the suspension model of the crane by imitating the relationship of
connections between each piece. The cable and hook on the suspension model present dynamic motions and are easily inuenced by wind force,
suspended objects, and so on. To simulate the natural properties of these components, we use ball-in-socket joints and slider joints to represent the DOFs
potentially required on the model. Fig. 5 illustrates the conguration of joints on the suspension model. The ball-in-socket joints attached between the
hook and the cable or the cable and the top of boom represent the relative movements during a swinging situation. Following the same idea, we divide the
cable into several pieces and consider the ball-in-socket joints as connectors within each part. For extension and shortening movements, we also attach
slider joints on the cable. Thus, the exibility of the cable can be simulated to provide physical suspended actions during an erection simulation.

Fig. 5. The connection relationships of the suspension model: (a) illustration and joints conguration in static condition; (b) illustration and joints conguration in swinging
condition.

756

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

6. Dual-crane modeling
In this section, we present the method for modeling the dual-crane
building cooperative erections. Dual-crane cooperation usually involves
high risk and specialized construction events on a jobsite. In this
research, dual-crane cooperative erection refers to an erection task
performed concurrently by two cranes for a specic, unusual, and largescaled piece of construction equipment such as a petroleum tank. This
kind of erection activity requires the operators to manipulate both
cranes synchronously to keep the rigging object stable during the
erection cycle. This requires not only advanced operating skills of a
single crane, but also the careful coordination of the two cranes.
The numerical crane models of a dual-crane system are derived
from the single crane model as described in the previous section. This
is done by connecting the relationship from one crane with the other
by a single suspension model. In Fig. 6(a), the manipulation models
are used to describe the rigid parts of two cranes in the same way as
with a single crane case. However, there is only one suspension model
representing the suspended cables, hooks, spreader-bars, and the
erected object. This means that the suspension system is controlled by
two displacements from each manipulation model. Once the position
the top of the boom of one crane is changed, the status of the
suspension model would be immediately updated. Hence, the effects
on the cooperative erection simulation can be composited and any
other kinds of erection scenarios can be easily realized based on this
modeling methodology.
In the eld of erection planning, dual-crane cooperative erection is
treated as a key work-item which requires exhaustive planning due to its
uniqueness and expense. In this research, we constructed the relationship
of the connections between the two cranes and rigging equipment in
order to simulate the cooperative behaviors. In Fig. 6(b), ball-in-socket
joints are set between the spreader-bar, h, and the rigging object, r. This
connection simulates the ropes of the spreader-bar that are wound

around the protruding part of the rigging object or circled around the
rigging object.
In a situation where two ball-in-socket joints are located at two sides
of an object and combined with a spreader-bar, the joints may work like
hinge joints which only allow single-axial rotation. However, there can
still be slight twisting motions along the other two axes during
movement. Therefore, ball-in-socket joints are appropriate for modeling
this relationship. After the joints have been congured, the suspension
model of each crane can be manipulated by the individual crane
operator to generate the physical erection movements.

7. Development of erection director


A prototype system, Erection Director, was developed through this
research to fulll the research goal of simulating the entire erection
cycle: securing the objects, moving to the destination, releasing the
suspension, and repositioning. To realize the simulations of these
actions, we developed a virtual environment that incorporates the
physical principles that describe every detailed motion and collision
reaction [15] during crane operations. This is required for simulating
movements along the erection path, and also for lifting and locating
suspended objects.

7.1. Overall workow of Erection Director


The overall workow for applying Erection Director to generate
the simulation of erection activities is illustrated in Fig. 7. Once the
timer starts during the simulation, the physics engine will calculate
the object attitudes according to joints constraints and user
manipulations. The engine also checks collision statuses including
rigging objects, existed structures and surrounding facilities in the
virtual environment to provide warning messages and reactions to
potential collisions. The manipulation and suspension models we
introduced before are controlled separately according to calculations
by following physics principles and user manipulation. The calculated
results and user input will modify the attitude of the suspension
model and manipulation model at each time-step, and the rendering
processes can then generate movements that simulate real physical
actions.

7.2. System architecture

Fig. 6. The connection relationships of a dual-crane model: (a) illustration; (b) joints
conguration.

The overall architecture of Erection Director is illustrated in Fig. 8.


It has a three-layer structure, comprising the interface, kernel, and
external libraries. Each layer is composed of major components (also
called functions), which are represented by blocks in the gure. The
arrows pointing between each layer represent direction of communication. In this architecture, the interface layer is responsible for
interactions with users and presenting the simulation results. The
kernel layer stores and manages the internal data that is relevant to
scene visualization and collision detection. The external libraries layer
includes two open source libraries that are used as application
programming interfaces for providing graphics rendering and physics
calculations. The application programming interface (API) is the
interface that the program library provides to support requests for
services made by the computer program. It is used as the base engine
of the system.
The architecture also provides the exibility for a developer to derive
and expand upon the three-layer structure. The developer can create
additional functions by constructing vertical connections at each layer
without having to consider horizontal relationships between each
component in the same layer. Conceptually, the architecture allows
developers to expand the system in an effective way.

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

757

Fig. 7. Overall workow of Erection Director.

7.3. User interface layer


The user interface layer allows users to manipulate the window
layout freely and choose which information is displayed. The information is divided into four windows, each for a different purpose: 3D
Rendering, Control Panel, Erection Information and Recording. As
shown in Fig. 9, the visualization window of the virtual environment
provided by the 3D rendering window presents construction scenarios
and movements of the crane through each time-step (Fig. 9(a)). By
manipulating the Control Panel, users can operate the crane model to
observe real-time reactions in the system (Fig. 9(b)). At the same time,
the detailed status of activities that are generated by the operation
can be seen under Erection Information (Fig. 9(c)); for example, the
position of the crane, the angle of the boom, loading capacity, and so
on. Furthermore, the system has the ability to save the object information at arbitrary time intervals of the simulation and replay them at
a later stage using the Recording function, the functions of which are
shown in Fig. 9(d).
7.4. Kernel layer
In the kernel layer, there are two tree structures for managing the
display and collision model. The tree structure for scene visualization
contains the data of virtual elements in the scene. This data, such as
the parameters of the light sources, the geometrical properties of
models, are necessary for constructing the virtual environment.
Furthermore, the tree structure used to combine all the elements in

Fig. 8. Three-layer structure of Erection Director.

the virtual environment provides hierarchical relationships between


each element. This kind of tree structure for scene management is
widely used in the eld of computer graphics. With every time-step,
the rendering processor traverses every node on the tree and paints
them to refresh the virtual scene.
For efcient computation, the tree structure for collision detection is
a mechanism that can be used to reduce the number of pair comparisons.
In the Erection Director, every elements including crane components,
existed structures and surrounding facilities can be considered as
potential collision object. But if the collision evaluations of every pair of
objects are executed, it will take too much computation power to
inuence the efciency of the system. In this research, we used the Quad
Tree structure [18], where each internal node has up to four children, to
build the geometrical relationships between every object in the virtual
environment. First, all the objects in the virtual environment are put into
the tree root. The virtual environment is then split into quadrants and the
objects being covered in each quadrant are recorded into the
corresponding child node. Second, each quadrant is split and the date
is recorded in the same way repeatedly until there are no objects in the
split block that remain to be recorded. The layout of the Quad Tree
structure with respect to the current environment is thus built. The
procedures for building the Quad Tree structure can be completed while
preparing the data before the simulation. After constructing the Quad
Tree, we have reduced the number of groups of pairs which have the
possibility of colliding with each other during each time-step of the
simulation. The algorithm which traverses the Quad Tree and identies
the group to be detected is shown in Fig. 10.
The algorithm CollisionQuadTree takes two parameters as input
data: TreeNode and MovingObj. The parameter TreeNode represents
the location in the Quad Tree structure and species the node being
traversed in the current stage. The parameter MovingObj denotes the
movable object which is usually the hook of the crane in the virtual
environment. The procedure of the algorithm is started by initializing
an empty array, Group, for recording the potential collision pairs, and
identifying whether the volume occupied by MovingObj overlaps
with the space represented by TreeNode. If an overlap occurs, we
traverse recursively along the children of TreeNode until there are no
leaf nodes left to visit, hence recording the objects contained in the
current TreeNode into the Group and returning it. By collecting all of
the Groups when the traversing process is nished, the smallest group
of potential collision pairs is obtained.
By using this approach, the time required to detect collisions has
been reduced as most of the pairs unlikely to collide with each other
have been ltered out through the traversing process. In an ideal case,
the number of pairs can be reduced from N to log4M. The variable N
represents the number of objects in the virtual environment, and the

758

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

Fig. 9. Overview of the interface: (a) visualization window; (b) control panel; (c) erection information; (d) recording window.

variable M represents N plus the number of over counting objects


which are located on the border between neighboring spaces. Since
the number of over counting objects is constant and relatively small,
the M can be treated as an equivalent of N. As such, this approach
makes collision detection more efcient when simulating detailed
erection activities, especially in a complex construction site layout
containing numerous obstacles. The performance of the system using
this approach is discussed in the Performance Evaluation section.

in-socket joint and slider joint, which have dened constraint


properties, are assigned to each node of the suspension model to
present relative motions. Similarly, the geometrical shape and mass
are also assigned to the nodes for collision detection.
After building up all these functions in Erection Director as an
integrated platform for displaying the cooperative erection simulation, we implemented the visualization of a dual-crane cooperative
erection by following a practical pattern we observed in a real case.
The performance evaluation for the real-time issue is also presented
in the following sections.

7.5. External libraries layer


In the external libraries layer, we used OpenGL [19], a graphical
language library generally used in the area of computer graphics, as
the Rendering Engine to communicate with the graphical hardware
and render the virtual environment. OpenGL provides various
functions to draw basic elements such as lines, triangles, and
polygons, for on-screen visualization. A detailed model and virtual
environment can be displayed by using these functions to generate
the layout information on the tree structure for scene visualization.
The library used to form the Physics Engine is the Open Dynamic
Engine (ODE) [20]. The ODE follows the principle of constraint-based
rigid body dynamics and provides object-oriented components for
developing the physics environment in the program. The built-in ball-

8. A demonstration of the visualization of cooperative erections


To validate the feasibility of Erection Director, we demonstrated a
simulation. In order to realistically simulate the cooperative activity, a
practical pattern for a dual-crane cooperative erection needs be
followed. In the common scenario of dual-crane cooperative erection,
the process is usually led by one of the cranes, and cooperation only
occurs at the securing step. We use the activity of lifting a large-scale
petroleum tank as an example. Fig. 11 illustrates the common process
of two cranes cooperatively lifting a petroleum tank. Firstly, the
rigging equipment of both cranes are tied to each side of the tank
separately (Fig. 11(a)). The main crane, responsible for lifting the tank

Fig. 10. Algorithm for traversing the Quad Tree and targeting of the minimum pair comparisons to perform the collision detection.

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

759

Fig. 11. Illustrations of the lifting process of a dual-crane cooperative erection: (a) Tying; (b) Lifting cooperatively; (c) Gradually erecting the tank; (d) Unsecure the connections
from the tail crane.

from horizontal to vertical, starts to raise the top of the tank by


hoisting its cable. The tail crane, responsible for keeping the tank
stable and minimizing swinging, follows the movement of the main
crane and raises the bottom of the tank until it is at an appropriate
height away from the ground (Fig. 11(b)). The main crane then
continues the lifting action while the tail crane steadily moves closer
to the main crane (Fig. 11(c)). The tank then gradually becomes
vertical during this step. Finally, the connections of the tail crane are
disconnected when the tank is completely vertical (Fig. 11(d)). The
main crane then completes the remaining movements of the erection
cycle.
By using the conguration mentioned in the dual-crane modeling
section, the movements during the erection can be fully simulated and
the appropriate motions can be created through manipulation of the
virtual crane. The developed method is also feasible for mapping the
usual patterns followed by operators to the virtual construction site.
These patterns can be induced as the most efcient ways of operating
a crane, where cables sway and vibrations are minimized. These are
relatively safe motions that prevent dangerous situations such as

collisions or reactions of the suspension system to large amounts of


acceleration.
When these steps are simulated in Erection Director, the visualization
results in a smooth animation sequence. The snapshots shown in Fig. 12
are sequential. These are ordered from left to right to present the detailed
lifting process of a dual-crane cooperative erection. The time representations marked on each image highlight the key moments during erection
and show the time duration between each snapshot. These time
durations are not equal as the simulation is generated from manual
manipulations and the operation of the crane is not uniform throughout.
Therefore, we only present the relatively signicant time steps in this
gure. Also, the times have been scaled and are not exact values.
At the beginning of the sequence, binding processes are executed
to tie the suspension cables to the two spreader-bars and the tank
(from Time 0:00 to Time 0:20). The main crane, located on the right
side of the picture, starts to lift the tank, and the tail crane, located on
the other side, follows the movement until the appropriate height is
reached (from Time 0:20 to Time 0:38). The lifting speed has to be
slow enough to keep the movements synchronized. After that, the

Fig. 12. Snapshots of the cooperative lifting of a large-scale petroleum tank using two cranes.

760

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

main crane continues with the lifting movement while the tail crane
moves forward to make the tank vertical (from Time 0:38 to Time
1:04). The rotations due to gravity can be seen from the connections
between the tank and the spreader-bars. After the erection process is
complete, the objective of the dual-crane cooperative erection has
been attained.

Table 2
The performance of the Erection Director system.
Scenario

Number of structural
elements

Number of rendering
triangles

Average
FPS

Lowest
FPS

1
2
3

840
1937
2682

33280
73388
103632

64
64
55

45
45
21

The performance has reached the rendering limitation of the system.

9. Performance evaluation
To prove that physics-based motions of dual-crane cooperation can
be simulated and visualized in real-time, we created three virtual
scenarios with different levels of rendering complexity for performing
the cooperative erection activity in three different scenarios. As shown
in Fig. 13, the scenes are the construction site of steel-frame buildings
with different numbers of beam and column objects. They are composed
of 840, 1937, and 2682 elements to be rendered. The three scenarios
represent alternative ways for crane manipulators to complete the
cooperative erection tasks. We implemented the cooperative erection
activity in these tasks on the Erection Director system and evaluate the
performance by recording the average and lowest value of the frames
per second (FPS) during the simulations. The FPS value represents the
capacity of a 3D-graphics system in rendering a virtual scene; it denotes
the number of frames that can be rendered per second. We recorded the
average value observed throughout the entire simulation and the lowest
value observed during simulation. The results table is shown in Table 2.
We used a computer with an Intel Pentium M 740 CPU and 1G RAM to
execute these performance tests.
The result shows that the simulation of erection activities can be
considered smooth and real-time visualization during the entire process
of the construction scenario is feasible. Typically, an animation is
observed to be continuous when the value of the FPS is greater than 30,
and delay cannot be observed when the value of the FPS is greater than
60. According to the result in Table 2, the simulations were acceptable
for the human eye when the erection is performed on Scenario 1 and

Scenario 2. The worst case, Scenario 3, had an average FPS value of 55,
but still greater than the requirement of 30.
In current stage of our research, we only focus on the usability of the
simulation method but not address its effectiveness. We actually invited
many industrial partners to review the work. Many of them show positive
feedbacks in our research results. And currently the system is integrating
to an engineering consulting company for construction simulation.
High-leveled project managers were potential users for our system.
One of the project managers commented that the simulations could be
very useful during the bidding process. Because the installation of the
equipment is the major concerns in a plant construction, the owners will
appreciate a detailed simulation, especially with physics feedbacks. Site
planners also believe the simulations can be useful. They can replace
their current paper-based erection plan, usually cumbersome and hard
to review with strong engineering background.
In the near future, we plan to perform more quantitative evaluations.
This including comparison between guided operations based on the
simulations and transitional operation ways will be provided. We also
plan to improve the system (Erection Director) to make the results more
practical.
10. Conclusions and future works
The approach and prototype system developed in this research
allows for the generation and visualization of a physics-based simulation

Fig. 13. The orthographic view of the construction scenes: (a) Scenario 1, (b) Scenario 2 and (c) Scenario 3.

H.-L. Chi, S.-C. Kang / Automation in Construction 19 (2010) 750761

of cooperative erection activities. The combination of the manipulation


and suspension model for modeling a numerical crane model can be
used to derive various construction scenarios to simulate actual
situations. The simulations in this research provide detailed information
on the motions of cooperative erection activities by following the
principle of kinematics and dynamics. From the performance evaluation,
realistic simulations can be performed in real time. The prototype
system, Erection Director, was developed to plan erection scenarios and
provides physical actions in an instructive way and rigging information
to assist users in evaluating feasibility and rationality before actual
construction. It will be a clear and simple way for engineers, and nonengineers alike, to identify potentially dangerous situations due to
irregular movements or collisions. Planners may then generate several
alternative plans, or modify existing plans, to produce different
simulations. A preferred efcient solution based on the results of the
simulations can then be implemented.
In the future, the evaluations for performing the real cooperative
crane operations based on the simulation results will be promoted. And
it will be able to examine the physics-based simulation in practical
perspective. Furthermore, the boarder applications of the system could
be extended to many purposes. For example, the simulation methods
can be used to review of erection plan. Because precise simulations are
available, the designers can see the construction progress during
design phase. Many unsafe crane movements can be avoided during the
review process. Another example is that the physics-based simulation
can become a good reference in a bidding process. Because all the
erection details can simulated, the owners can have more condence to
adopt the proposed solution. In addition, our work can also be extended
for training purpose by designing appropriate learning lessons and
integrating them into the virtual environment. Also, it can be assisted by
other equipments, such as HMD, immersive screen setups, and so on, to
improve the training performance.
Acknowledgments
This work was supported by the National Science Council of
Taiwan. We thank RUENTEX Corporation for providing the construction information of the practice erection patterns.

761

References
[1] Hornaday, W. C., Haas, C. T. and O'Connor, J. T., Computer-aided planning for heavy
lifts, Journal of Construction Engineering and Management 119(3), (1993),
pp. 498515.
[2] Lin, K. L. and Haas, C. T., Multiple heavy lifts optimization, Journal of Construction
Engineering and Management, 122(4), (1996), pp. 354362.
[3] Kamat, V. R. and Martinez, J. C., Visualizing simulated construction operations in
3D, Journal of Computing in Civil Engineering, 15(4), (2001), pp. 329337.
[4] Kamat, V. R. and Martinez, J. C., Efcient Interference Detection in 3D Animations
of Simulated Construction Operations, Proceedings of the 2005 International
Conference on Computing in Civil Engineering, American Society of Civil Engineers,
Reston, Virginia.
[5] Sivakumar, P. L., Varghese, K. and Babu, N. R., Automated path planning of
cooperative crane lifts using heuristic search, Journal of Computing in Civil
Engineering, 17(3), (2003), pp. 197207.
[6] Ali, M. S., Babu, N. R. and Varghese, K., Collision free path planning of cooperative
crane manipulators using genetic algorithm, Journal of Computing in Civil
Engineering, 19(2), (2005), pp. 182193.
[7] Kamat, V. R. and Martinez, J. C., Dynamic 3D visualization of articulated
construction equipment, Journal of Computing in Civil Engineering, 19(4),
(2005), pp. 356368.
[8] Kang, S. C., Computer Planning and simulation of construction erection processes
using single or multiple cranes, Ph.D. Dissertation, Department of Civil and
Environmental Engineering, University of Stanford, California, 2005.
[9] Bicalho, A. and Feltman, S., MAXScript and the SDK for 3D Studio MAX, Sybex.
[10] Derakhshani, D., Introducing Maya 6: 3D for Beginners, Sybex.
[11] K. Erleben, J. Sporring, K. Henriksen, H. Dohlmann, Physics-Based Animation,
Charles River Media, Boston, 2005.
[12] Reeves, W. T., Particle Systems a Technique for Modeling a Class of Fuzzy
Objects, ACM Transactions on Graphics (TOG), 2(2), (1983), pp. 91108.
[13] Ju, F. and Choo, Y. S., Dynamic Analysis of Tower Cranes, Journal of Engineering
Mechanics, 131(1), (2005), pp. 8896.
[14] Denavit, J. and Hartenberg, R. S., A kinematic notation for lower-pair mechanism
based on matrices, Journal of Applied Mechanics, (1955), pp. 215221.
[15] S.C. Kang, H.L. Chi, E. Miranda, Three-dimensional Simulation and Visualization of
Crane Assisted Construction Erection Processes, Journal of Computing in Civil,
Engineering, 23 (6), (2009), 363371.
[16] K.G. Murty, Linear Complementarity, Linear and Nonlinear Programming, HeldermanVerlag, 1988 This book is now available for download from http://ioe.engin.umich.
edu/people/fac/books/murty/linear_complementarity_webbook.
[17] H. Goldstein, C.P. Poole, C.P.J. Poole, J.L. Safko, Classical Mechanics3 rd Edition,
Prentice Hall, 2002.
[18] Finkel, R. and Bentley, J. L., Quad Trees: A data structure for retrieval on composite
keys, Acta Informatica, 4(1), (1974), pp. 19.
[19] Shreiner, D., Woo, M., Davis, T. and Neider, J., OpenGL Programming Guide: The
Ofcial Guide to Learning OpenGL, Version 1.4, Fourth Edition, Addison-Wesley
Professional, 2003.
[20] R. Smith, Open Dynamic Engine, 2006 Retrieved May 23, 2006, from http://ode.org.

You might also like