Generation of multimodels and selection of the optimal model
for realtime simulation
Kangsun Lee and Paul A. Fil'i, 1:
Department of Computer Information Science and Engineering
University of Florida
Bldg. CSE, Room 301
Gainesville, FL 32611
ABSTRACT
As we model a complex l. in modelers need a way to better handle multiple perspectives of the  i. i 1 I [,I,
a model of a complex l. in that is at the right level of detail for a specific purpose is a t.1! tli il task. Also there
is a need to simulate the model under a time constraint, when the modeled  I. i, has to meet a given deadline
in order to avoid hard/soft disasters. Considering these .[t!!. i. Ii needs, our question is "How to determine the
optimal model that simulates the  . ii, by a given deadline while still producing good .,it i l at the right level of
detail?" We try to answer this question on Multimodeling Object Oriented Simulation Environment (MOOSE). The
proposed framework has three phases: 1) Generation of multimodels in MOOSE using both structural and behavioral
abstraction technique 2) Assessment of 1.,ii l and runtime for each generated model 3) Selection of the optimal
model for a given realtime constraint. A more detailed model is selected when we have enough time to simulate but
a less detailed model is selected when the deadline is immediate.
Keywords: Model Abstraction, RealTime Simulation, Multimodeling
1. INTRODUCTION
i.1 I I simulation of complex  , i, requires a model that is accurate enough to accomplish the simulation
objective and is computationally t inI 1, 2 We define model accuracy in terms of the ability of a model to capture
the  I. ii at the right level of detail and to achieve the simulation objective within an allowable error bound.
Computational ti. i. involves the satisfaction of the realtime constraints to simulate the  1. i, in addition
to the t! . of computation of the model itself. In most existing applications, it is a user's responsibility to
construct the model appropriate for the simulation task. This is a .ltI!. LI1, errorprone and timeconsuming,, 1i i if'
requiring skilled and experienced engineers.
We propose a ii 11 1. .1..  to build a model that meets the simulation objective and meets realtime constraints,
while minimizing the modeler's responsibility. The key to our method is to use an abstraction technique as a way of
handling realtime constraints given to the  l, i, We generate a set of models for the l, i, at .lt!! i, II levels of
detail through model abstraction and choose a model that has the optimal abstraction degree to simulate the  1, i,
for a given deadline.
Several areas of research relate to our problem statement. Realtime computing determines a schedule that defines
when to execute what task to meet a deadline and the objective of the simulation. Typical approaches to realtime
scheduling assume task priorities and resource needs are completely known in advance and are unrelated to those of
other tasks, so that a control component can schedule tasks based on their individual characteristics. If more tasks
exist than the  1, i, can process, the decision about which tasks to ignore is simple and local, usually based only on
task priority.3'4 Our claim is that the resulting schedule of tasks doesn't reflect the real objective of the simulation
when the selection is made based only on the task priority.
D'Ambrosio5 described the realtime model selection problem as a I I of problemsolving method in A.I that
it a time bound, dynamically construct and execute a problem solving procedure which will (probably) produce
a reasonable answer within (approximately) the time :i ,! i.,!. Examples of this I I" are found in chess programs.
Other author information:
P.A.F.:Email: fishwickcise.ufl.edu; !i 1. I.i.... and Fax: 3523921414; WWWV home page: http://www.cise.ufl.edu/~ fishwick
K.L.: Email: kslee(cise.ufl.edu; !I 1. ...... 3523921435; WWWV home page: http://rwww.cise.ufl.edu/~ kslee
Virtually all performance chess programs in existence f. 1 . use fullwidth, fixeddepth, alphabeta minimax search
with node ordering, quiescence, and iterativedeepening for the real time problem solving. They make very high
'!I ,11 i I move decisions under realtime constraints by properly controlling the depth of search (or move) and having
a good heuristic function that guides the search (or move). Research on the realtime problem solving through search
methods can be found in 6,7.
The key to these approaches is to have single problem solving method that achieves a better result as the method
is given more time. One of the problems is that these approaches rely on the existence of iterative refinement
algorithms that produce incrementally improving solutions as they are given increasing amounts of runtime. ('I! 1, I,
such algorithms exist for some problem cases, but also there are problems that will be t!! 111, il to solve in an
incremental fashion.1'2 An alternative to this approach is to have multiple methods to model the I. i, which
make tradeoffs in cost versus ,!Li 1ill and i i have different performance characteristics in .1!11. i I environment
situations. Garvey and Lesser proposed the Designto I .. method, which is related to our approach. Design
totime assumes that we have multiple methods for the given tasks and try to find a solution to a problem that uses
all available resources to maximize solution 1,, 1 ii i within the available time. They present an algorithm for finding
optimal solutions to a realtime problem under task tree graph and task relationships.8 The algorithm generates
all sets of methods that can solve the problem and prunes those superseded by other sets of methods that generate
greater or equal .,! ii in equal or less time.
Designtotime has a single model I i" and multiple methods are generated through approximation techniques,
therefore it concerns only the behavioral aspects of the  I. 11 Our approach doesn't restrict modelers to use one
universal model i" but rather encourages them to use .ti,. i. I> model i" to describe the I. I according to
the characteristics of the component being modeled. Multiple methods of the 1. i are generated through both
structural and behavioral abstraction. Therefore the selected model can be a useful device that reflects the right
perspective to view the  1. i for a given time in addition to achieving the best tradeoffs in model execution time
versus accuracy. Our method has three phases :
1. Generating a set of models at different abstraction levels.
2. Arranging a set of models under the abstraction relationship and assessing the Ii ill /cost for each model
3. Executing a model selection algorithm that finds the optimal model for a given deadline
In the first phase, a set of methods is generated at different degrees of abstraction. i, studies have been done
on the model abstraction techniques, especially in the modeling and simulation group.912 Based on the study of
model abstraction techniques, we propose a  i. 11, I;l abstraction 1 i. 1!. .1. ..,. _ to build multiple methods of the
1. iIl at Itl,!. 1i II degrees of abstraction. The second phase is to assess the expected [L 1 Mi11 and runtime of each
model and to organize a set of models in a way that facilitates the selection algorithm for realtime simulation. In
the third phase, we select an optimal model among alternatives by deciding the optimal abstraction level to simulate
the  I. i! within a given time. A more detailed model (low abstraction level) is selected when we have enough time,
while a less detailed model (high abstraction level) is used when there is an imminent time constraint. This method
works in the domain where multiple methods are available for iii i tasks and sacrificing solutions are acceptable.
We also assume that duration and !iL ,li associated with each method is fairly predictable. Each phase will be
explained in the following sections through an example.
One of the contributions of our research is that, with the ;,1 ,ii I to select an optimal model for a given deadline,
we provide a way to handle realtime constraints for the simulation group. In particular, we handle a time constraint
out of the modeling processes, therefore modelers are relieved from considering time constraints that are not supposed
to be part of modeling. Another contribution is that by generating a set of multiple methods through abstraction
techniques and selecting the optimal abstraction degree to compose a model for the realtime simulation, we meet not
only realtime constraints but also the perspective which modelers see the  1. 1 for a given timeconstraint situation.
We expect that the proposed method can provide better sources of multiple methods for realtime computing groups.
This paper is organized as follows : In Section 2, we discuss what kinds of abstraction we will use for the sources
of multiple methods and then present an optimal model selection algorithm in Section 3. A complete process from
model generation to the selection of the optimal model will be illustrated in Section 4 through an example. I i i 1 ,!,
conclusions and future work follow.
2. SOURCES OF ABSTRACTION
Our model abstraction technique is a method (, !lf ii i transformation) that derives a "w il!. model from a more
complex model while maintaining the validity (consistency within some standard of comparison) of the simulation
results with respect to the behaviors addressed by the simpler model. The simpler model reduces the '. I~!!.1. .i 1 as
well as behaviors allowed by the model.12 It suggests that proper use of abstraction provides computational savings
as long as it guarantees the validity of the simulation results. Our idea is to use the abstraction method when we
need to reduce the simulation time to deliver the simulation results by a given deadline. Models generated through
abstraction techniques are different in their perspectives to describe the  I'. i in addition to l!itl i. II execution
time according to the degree of detail. Therefore a model that is selected for a given realtime simulation is useful
not just because it meets a given deadline but also because it suggests a perspective with which modelers view the
S1 i for a given timeconstraint situation.
In order to have an. ti i. I 1 abstraction methods, we've studied model abstraction techniques available in i, i,,
disciplines and created an unified I i...,!in for model abstraction where they are structured with [li,1. l ii char
acterization of a general approach.9 l Our premise is that there are two different approaches to model abstraction:
structural and behavioral. ~I i IL 1 iL I abstraction is a process of abstracting a I. 11, in terms of the structure using
refinement and homomorphism. Mri I iL 11, abstraction provides wellorganized abstraction hierarchy on the 1. ii,
while behavioral abstraction only focuses on behavioral aspects of the  1. ii without structural preservation. We
abstract a 1. 11, by following ObjectOriented Pli ; ,1 Modeling (OOPM) i!!. ,iL. 1.1. .,3 where abstraction oc
curs both structurally and behaviorally. We organize the  . i,1 hierarchically in structural abstraction phase. One
constructs an abstraction hierarchy with simple model I first, refining them with more complex model I " later.
Our structural abstraction provides a way of structuring I l!!. i. II model I" together under one framework so that
each I performs its part and the behavior is preserved as levels are mapped. The resulting structure become a base
model which has the highest resolution to model the  1. i The problem is that selecting one 1. 11 component
from an abstraction level is dependent on the next lowest level due to the hierarchical structure, so that it can't be
executed at a random abstraction level though it can be viewed independently. Behavioral abstraction is used when
we want to simulate the base model at a random abstraction level. We isolate an abstraction level by approximating
the lower levels behavior and replacing them with a behavioral abstraction method. The method discards structural
information of the lower levels but still preserves behavioral information. Several possible techniques for behavioral
abstraction are discussed in Refs 911, such as  I. i identification, neural network and wavelets. Since our method
involves less computation time by discarding lower levels structural information, it will be used when there's too
little time to simulate the  . ii in detail. The abstraction mechanism is implemented in MOOSi. and the models
produced by MOOSE become the sources of methods with which the realtime simulation will be performed.
3. SELECTION OF THE OPTIMAL ABSTRACTION LEVEL
As we stated in section 1, our way for the realtime simulation is to find an optimal abstraction level for a given
deadline and compose a model based on the level. The decision of optimal abstraction level is to find places where we
use behavioral abstraction methods over the abstraction hierarchy for a given time constraint. In order to facilitate
the selection process, we first construct an Abstraction Tree (AT) based on the precedence relations of the given
methods.
AT contains two kinds of information: Methods and Relation.
Method Represents tasks the model perform
Mi high resolution method. It takes the form of dynamic or static methods of MOOS1. We have
FBM (Functional Block Model), 1 S. I (1I I!, I i ,1. Machine), SD (System Dynamics), El IN (i.1 .1L '. .Nal
Model) and RBM (RuleBased Model) choices for the dynamic method, and the CODE method for the
static method
Ai low resolution method. It takes the form of a neural network.
Ii intermediate node to connect M, and its associated Ai.
Relation Specifies how a parent task relates to the child tasks.
AND A parent task is executed only if all its children are executed from left to right.
OR A parent node is executed by one of its children
Selection of the optimal abstraction level for a given model structure falls into the NPHard question. 1415 It
is a scheduling problem in the sense that the precedence relationship between methods (tasks) should be preserved
and the resulting scheduling scheme should deliver the result by a deadline. Our 1i I,.l L. i is that as we need
more tight time constraints, we tend to ....1.1,., more behavioral abstraction methods. We increase the number of
behavioral abstraction methods as we require tighter deadlines for the search heuristic. The selection algorithm
starts from one behavioral abstraction. If this satisfies the time constraint, we stop and don't go further to examine
other possibilities, with the hope that increasing the number of behavioral abstraction methods will result only
in a less accurate model. If the time can't be met by one behavioral abstraction method, we examine how 1ii, i,
behavioral abstraction methods will be needed for a given time constraint. This is done by examining r fast behavioral
abstraction methods. If combining r fast behavioral abstraction methods satisfy the time constraint, it tells us that
the optimal abstraction level will be determined by r behavioral abstraction functions. At this point, we start to
examine all combinations of size r set and find out the most accurate combination which still satisfies the given time
constraint. Algorithm 1 shows the overall idea in detail.
Algorithm 1 Select the optimal abstraction level of a model
1: size = at.ConstructAT( fid, nodes)
2: baseCost = .,,...i, [i]l *, C n: ost(
3: if baseCost <= deadline then
4: return(0)
5: end if
6: at.CollectOrNodes(nodes, orNodes)
7: at.SortByCost(orNodes)
8: size < at.SelectByDeadline(orNodes, deadline)
9: if size > 0 then
10: at.SortByCost(orNode)
11: OptimalAbstraction = o N' .iL [i] ,. iName(
12: else
13: degree < OptimalAbsDegree(orNodes, deadline, baseCost)
14: if IJ., .. == 1 then
15: return(1)
16: else
17: OptimalSet = OptimalCombination(orNodes, deadline, baseCost, degree)
18: OptimalCost ( OptimalSet.cost
19: OptimalAccuracyLoss < OptimalSet.accuracy
20: end if
21: end if
22: return(0)
This algorithm considers the cost factor in line 8, and then starts to examine the accuracy factor in line 17. We
check the time constraint first, since a model that exceeds the deadline can't be used no matter how accurate the
result is in a realtime simulation. We'll explain the algorithm and the overall idea of the proposed method in detail
through an example.
4. FULTON EXAMPLE
Consider a steampowered propulsion ship model, named FULTON*, as shown in Fig. 1. In FULTON, furnace heats
water in boiler: when the fuel valve is 01'.'\, fuel flows and furnace heats; when fuel valve is CLOSi.1), no fuel
flows and furnace is at ambient temperature. Heat from the furnace is added to the water to form highpressure
steam. The highpressure steam enters the turbine and performs work by expanding against the turbine blades.
*We name it "FULTON", after Robert Fulton, who designed and oversaw construction of the first steampowered warship, the "USS
FULTON", for the US
CONDENSER
Figure 1. Highlevel view of a shipboard steampowered propulsion plant, FULTON
M'O 
BBHBol~ HB H
Figure 2. Conceptual model of FULTON: FULTON is modeled on MOOSE Conceptual model is designed in terms
of classes, attributes, methods (dynamic method and static method) and relationships of classes (inheritance and
composition)
After the highpressure steam is exhausted in the turbine, it enters the condenser and is condensed again into liquid
by circulating sea water.16'17 At that point, the water can be pumped back to the boiler. Fig. 1 shows a highlevel
view of FULTON example.
A conceptual model is constructed on MOOSi. 1 It is designed in terms of classes, attributes, methods and the
relationship between classes (inheritance and composition). Fig. 2 shows class hierarchy of FULTON, which basically
follows the 11! 1, 1 composition of a steamship. ('I! . are connected by a composition relationship as denoted by
rectangular boxes in Fig. 2.
4.1. Structural abstraction of FULTON
Fig. 3 and Fig. 4 show structural abstractions of FULTON. FULTON has 4 distinct 1.1 1. 1 components: Boiler,
Turbine, Condenser and Pump. We configure the  I. i in terms of objects which are connected in a directed order
as the way steamships work in general. Since the objects are primarily functional in nature, we start with 1 I;.l
which has 4 blocks, Li for the function of a boiler, L2 for turbine, L3 for condenser and finally L4 for pump.
Boiler assembly (Li) has distinct states according to the temperature of the water. Li is refined into :
1. B, : method of class Knob, which provides fuels to the boiler
2. B2 : I S, as shown in Fig. 4, which determines temperature of the boiler and makes state transitions according
to the temperature
IB
1 2 3 4
LI L2 LI L4
1 lI /
Figure 3. Top level : structural abstraction for FULTON
IFSAI ]O I IMl
MO a
positionfMtcemperatuie>=100
"
position==0 & temperature=20
0
position == 0
Coolip position == 0
Figure 4. Si1,L i,. I I abstraction of LI: 1 S. has 4 states (Cold, Cooling, Heating and D.B ,;1;! _
3. B3 : provides highpressure steam
Each state of Fig. 4 is defined by an algebraic equation, which calculates the temperature based on the position
of knob (Open, ('! .... I
L2 is decomposed into two temporal phases: Exhausting and Waiting. If there's no steam to exhaust, L2 resides
in the waiting state. Otherwise, L2 exhausts steam to generate the work of the steamship. Fig. 5 shows 1 S. I of
the turbine. L3 also has two distinct temporal phases: condensing and cooldown, as shown in Fig. 5. Condenser
decreases temperature in cooldown state, waiting for the turbine to send more steam. Otherwise, L3 resides in
condensing state where the steam from the turbine turns into liquid again.
4.2. Behavioral abstraction of FULTON
We start with the observed data set of (input, output) from the simulation of the base model. \\ ii this prior knowl
edge, the method of behavioral abstraction is to generate a C++ procedure which codes input/output relationship
using a neural network based model. An ADAptive i.I'\. 1 1.1. Ii. !ii (.\ .\i.i '\ .) neural i. i ..i 1' is embedded in
MOOSE and used for the behavioral abstraction technique. For the best abstraction result, we use a linear transfer
function instead of a sigmoidal or hardlimit function.
File Edit Fbm Link
Fl.
lHelp
_V2l
I" aHIBIt r .B n
O1, M,
(a) Structural abstraction of L2
(b) Structural abstraction of L3
Figure 5. SI i I1 I abstraction of L2 and L3
Table 1. New multimodels of FULTON with behaviorally abstracted componentss: A capital letter represents a
fullresolution model, while a small letter represents a lowresolution model. The low resolution model is generated
through behavioral abstraction
no Model Abstracted Component
M1 BTCP N/A, base model
M2 BTcP Condenser
M3 BtCP Turbine
M4 BtcP Turbine, Condenser
M5 bTCP Boiler
M6 bTcP Boiler, Condenser
M7 btCP Boiler, Turbine
M8 btcP Boiler, Turbine, Condenser
We abstract the multimodel method of L1, L2 and L3 with the Al 1. \ .I\ neural network. By switching on/off
these behavioral abstraction methods, we can generate 8 (23) new models, each with a i! i< 1i degree of abstraction.
To create one of the models listed in Table 1, modelers pick the dynamic function to abstract and then the
learning process begins. Fig. 6 shows this process. Based on the learning parameters of the Al \1.. L1\1. neural
network, we learn the input/output functional relationship. Once the performance of the neural network model
is accurate enough, we generate a behavioral abstraction method based on the resulting weight and bias vector.
One important observation is that the execution time of .,!! behavioral abstraction method is predictable since the
contents associated with it represent an algebraicbased routine that calculates an output based on the learning
algorithm of the neural network. As long as the output calculation algorithm is the same, the execution time of
behavioral abstraction method differs only by the size of the weight and bias vectors.
4.3. Assessment of model quality and execution time
To see the effects of using abstraction techniques, we measured the execution time of each model by i I simulation
logical clock from 50 to 500 using a time step of 50. As shown in Fig 7, the most detailed model, Ml takes the
longest time and the least detailed model, M1s runs faster than the other models.
Accuracy loss is also measured as shown in Fig. 7. As simulation proceeds, the accuracy loss increases for each
model. For the least detailed model, lM has the maximum accuracy loss, while M2 shows the minimum accuracy
loss over time.
steam inflow r 0
' stam inflow >= 0 .
102'309 FOR 
@ml @
Condensing steam 0 CoolDown
steam > 0
Figure 6. Behavioral abstraction : The user selects a dynamic function to abstract, Turbine::Propel, which is an
1 S. 'I [I. and their transitions will be lost, but behavioral information will be preserved to some level of fi1 li.
In the learning process, the user gives several parameters, for example, learning rate and .I 1I,
500
200
Real time measurement of multimodels
1 2 3 4 5 6 7 8 9
Simulation Time
Simulation Time
Legend
......... M 1
......+" M 2
o M3
 M4
.... .. M 5
 M6
 x M7
xM8
(a) Execution time of multimodels
(b) Accuracy loss of multimodels
Figure 7. Execution time/ accuracy loss of models: Behavioral abstraction yields shorter elapsed times. As we
increase the level of abstraction by using more behavioral abstraction methods, the model execution time decreases.
Accuracy is lost as we increase the number of behavioral abstraction methods in the base model
ir Generate an abstracted function
Learning Result Plot
Flunc ilon T. .I rr..: tr,..r 11.
30
Select training input by : j
SH II, Correlalion ilysisl User
Abslraclon Technique:
^ ADALI,1E
, Backiropagalion
, System IdeihInicabionI
, Wavelelllelwork
Learning Paranelers
Delay [ Learning Rale I U U.
SveI Done Slart Iew
V
Ui
I .
.4:
M1
MS..p
S ," ."FBM ~ ~  ._ "
M17 M3 M18 M19 M20
Figure 8. Abstraction hierarchy of FULTON exar Pump
M2 M3 M4 M5
Exeute TBE CDEx
FBM FBM ~. FM 
M6 M M8 M9 MlO M11 M12
Knob Pot Boiler Turne Turbine Condener Condener
7 FSA7 M0 A M FSA
M1M4 5 M6 M17 M18 M19 M20
M15 M16
Figure 8. Abstraction hierarchy of FAULTNON example
Ml
M2 M3 M4 M5
M6 7 M8 M9 Mil 12
M7 A7 M10 A10 M12 \ 12
M13 M14 M15 M16 M17 M18 M19 M20
Figure 9. Abstraction Tree for the FULTON example : AT has AND/OR node. When there's a behavioral
abstraction method, OR node exists in order to specify either one of the method is executed for a simulation
Realtime simulation needs to control the advantages/disadvantages of using the behavioral abstraction method in
a way to maximize the tradeoff model execution time for accuracy. The execution time of each behavioral abstraction
method is measured for the selection of the optimal abstraction level. By subtracting the time savings of behavioral
abstraction methods to be used in the realtime simulation from the base model, we predict the new execution time
of a model being considered. The accuracy loss should be carefully assessed to be applied in general cases. The
,ti i ll1 of accuracy assessment arises from the fact that we can't predict all possible inputs to the  lI 1i and that
the assessment of accuracy is done by known input patterns with limited size. Also, we need to determine the most
meaningful measurements) that can tell us the accuracy of the behavioral abstraction. For the ADA1.1\ neural
network model, we choose Sum of Squared Error (SSE) to represent the accuracy, since the learning procedure of the
ADA 1. \ 1. neural network is performed based on SSE and therefore confirms to us it is a reasonable way to represent
the accuracy of the behavioral abstraction method.
4.4. AT Construction
The base model gives us the abstraction hierarchy of the FULTON example as shown in Fig. 8.
By ,,,'l1 ii, the behavioral abstraction technique to three methods, M7, M10, M12 and producing A7, A10,
A12, we generate an AT as shown in Fig. 9. IJ node sits where the two associated different resolution methods reside.
Intermediate nodes IJ are connected to the children by an OR relationship.
Execution time and accuracy loss of parent nodes are determined by :
Cost of AND node : summing up the cost of all children, Mi.
* Accuracy loss of AND node : summing up the accuracy loss of children, MNi.
Ml
M2 M3 M4 M5
M6 7 M8 M9 0 M11 12
M7 'A7 M10 A10 M12 12
M13 M14 M15 M16 M17 M18 \ M19 M20
Figure 10. Optimal abstraction degree for a given deadline, 20
M6 M13 M14 M15 M16 M8 M9 M17 M18 Mll M19 M20 M5
2 4 6 8 10 12 14 16 18 20 22 24 26
M6 M8 M9 M11 M19 M20 M5
2 4 6 8 10 12 14 16 18 20 22 24 26
A7 A10 deadline
Figure 11. Scheduling diagram
Cost of OR node : t!!. i. between the cost of highresolution child and the one of lowresolution child
Accuracy loss of OR node : itl!!. I. i .. between the accuracy loss of highresolution child and lowresolution
child
When we calculate the cost and accuracy loss of AND node, we are concerned with only Ml, and Ai nodes. Unlike
an AND/OR tree, our intermediate node, Ii connects the two different resolution models and passes the difference
of accuracy between Ml, and Ai to the higher levels as well as the tl, i. i .. of execution time.
4.5. Selection of the optimal abstraction model
To illustrate the algorithm, we assign the execution time and accuracy loss of each method with the same natural
number. We assume that each leaf method of AT (M13, M14,M15,M16,M17,: II1 M19, M20) takes 2 time unit
uniformly to execute, and has 1 for accuracy loss. By iteratively ;, '1,1 il the rules to determine cost and accuracy
loss of parent nodes of AT, we find that the base model takes 26 units to complete the simulation. Suppose we have
20 units for a deadline. Upon receiving the time constraint, we immediately know that the behavioral abstraction
is needed to make the simulation faster. The optimal abstraction level is determined by the algorithm discussed in
section 3. The algorithm increases the number of behavioral abstraction methods to be used for the deadline and
concludes that we'll need 2 behavioral abstraction methods at M7 and M10. Other possible combinations might have
been found during the selection, but replacing structural abstraction methods with behavioral ones at 17 and I10
gives the most accurate simulation result and therefore achieves the best tradeoff model execution time for accuracy
in a given 20 unit deadline. Fig. 10 shows the optimal abstraction level determined from the algorithm and the
corresponding scheduling trajectory is shown in Fig. 11.
5. CONCLUSIONS
We demonstrated a i i. I! 1. 1. to build a model that is right for the simulation objective and realtime constraints,
while minimizing the modeler's involvement. The key to our method is to use the model abstraction technique to
generate multiple methods of the I. i which make tradeoffs in runtime versus accuracy. Modelers construct
the abstraction hierarchy through structural abstraction phase and we use it for the source of information where
the optimal abstraction degree is determined. By I,1i',1 ii, the proposed algorithm that determines the optimal
abstraction level to simulate the I. i! for a given deadline, we find positions) where the behavioral abstraction
technique is applied. Behavioral abstraction brings simulation execution time savings by discarding detailed structural
information, though accuracy is sacrificed. The resulting model simulates the 1. i at an optimal level of abstraction
to satisfy the simulation object for a given deadline in a way to maximize the tradeoff model execution time for
accuracy. One of our assumptions was that accuracy and execution time of the abstraction method is predictable.
Predicting the execution time is possible in general, however assessing the accuracy associated with a model is
[liti! .ili as stated in section 4.3. We're 1rl i;,_ a general way to assess model accuracy in all cases regardless of
input patterns and simulation time. I 111,iiL the most reasonable measurement for the model accuracy should also
be studied and we might need to have different measurements according to the abstraction techniques rather than
just one universal measurement for all abstraction I i" Also, other approaches to select the optimal abstraction
degree are being considered where selection criteria can include the modeler's interest to view the 1. i in addition
to model accuracy.
ACKNOWLEDGMENTS
We would like to thank the following funding sources that have contributed towards our study of modeling and
implementation of the MOOSE multimodeling simulation environment: GRCI Incorporated (Gregg Liming) and
Rome Laboratory (Si. . Farr) for webbased simulation and modeling, as well as Rome Laboratory (Al Sisti) for
multimodeling and model abstraction. We also thank the Department of the Interior under a contract under the
ATLSS Project (Don DeAngelis, University of Miami). \\ i 1. ii their help and encouragement, our research would
not be possible.
REFERENCES
1. A. J. Garvey and V. R. Lesser, "A ,i. of research in deliberative realtime artificial intelligence," .1...
Computer Science Technical Report 9384, 1993.
2. A. J. Garvey and V. R. Lesser, "Designtotime realtime scheduling," IEEE I...... ..... on ,"t ...... Man and
C.,, ..... 23(6), pp. 14911502, 1993.
3. K. Ramamritham and J.A. I i! :. ,, "Dynamic task scheduling in distributed hard realtime  I. i IEEE
f," ...... 1(3), pp. 6575, 1984.
4. J.A. I i!!:.. K. Ramamritham and S. ('I!. "1. i1 1i. of a flexible task scheduling algorithm for dis
tributed hard realtime l. Ii IEEE l....I.... .... on Computers 34(12), pp. 11301143, 1985.
5. B. D'Ambrosio, "Resource boundedagents in an uncertain world," IJCAI, 1989.
6. R. E. Korf, "Depthlimited search for realtime problem solving," Real I ,. .S.i .... 2, pp. 724, 1990.
7. A. Barr and E. A. Feigenbaum, Ib., Handbook of AI !'t ', Intelligence, \\ ill, iii, Kaufmann, 1981.
8. A. J. Garvey and V. R. Lesser, "Designtotime scheduling with iL ii. ,11 ,i I .1I... Computer Science Technical
Report 9503, 1995.
9. P. A. Ii ! I: and K. Lee, "Two Methods for Exploiting Abstraction in Systems," in AI, Simulation and
Planning in High Autonomous .,!. ..... pp. 257264, 1996.
10. K. Lee and P. A. i1! 1, !: "Dynamic Model Abstraction," in In proceedings of II Sm. .' Simulation C,,, ... ..
1996.
11. K. Lee and P. A. 1 i'! 1 !:, "A semiautomated method for dynamic model abstraction," in In proceedings of
AeroSense 97, 1997.
12. D. Caughlin and A. F. Sisti, "A Summary of Model Abstraction Techniques," in Proceedings of SPIE97, 1997.
13. P. A. 1 ! ' ii !: "i.1.I. I1.!, ObjectOriented Design for P! 1; 1 Modeling," .Ii [ l'......I.,' ..... on Modeling
and Computer Simulation 1996.
14. R.L Graham, E.L Lawler, J.K Lenstra and A.H.G Kan, "Optimization and approximation in deterministic
sequencing and scheduling:A ,. ," Discrete Optimization II, 1979.
15. J.W.S Liu, K.J Lin, W.K. hI !i, A.C. Yu, J.Y. ('I ii, i, [ W. Zhao, "Algorithms for scheduling imprecise com
putations," IEEE Computer 24(5), pp. 5868, 1991.
16. B. Falkenhainer and K. D. Forbus, "Compositioal modeling: finding the right model for the job," AI i't' '.
Intelligence 51, pp. 95143, 1991.
17. F. J. K. W. Edward Gettys and M. J. I:. ., Physics, McGrawHill, 1989.
18. R. M. Cubert and P. A. i! I : : I".!OOS. AN ObjectOriented Multimodeling and Simulation Application
Framework," Simulation 6, 1997.
19. L. M. Fu, Neural Networks in Computer Intelligence, McGrawHill, 1994.
