ac modelacion multiescala

Upload: jose-emmanuel-sainz

Post on 03-Jun-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 Ac Modelacion Multiescala

    1/9

    Towards a Complex Automata Framework for

    Multi-scale Modeling: Formalism and the Scale

    Separation Map

    Alfons G. Hoekstra1, Eric Lorenz1, Jean-Luc Falcone2, and Bastien Chopard2

    1 Section Computational Science, Faculty of Science, University of Amsterdam,Kruislaan 403, 1098 SJ Amsterdam, The Netherlands

    {alfons,lorenz}@science.uva.nlhttp://www.science.uva.nl/research/scs

    2 Department of Computer Science, University of Geneva, 24, Rue du GeneralDufour, 1211 Geneva 4, Switzerland

    {Bastien.Chopard,Jean-Luc.Falcone }@cui.unige.chhttp://spc.unige.ch/

    Abstract. Complex Automata were recently proposed as a paradigm tomodel multi-scale complex systems. The concept is formalized and thescale separation map is further investigated in relation with its capabilityto specify the components of Complex Automata. Five classes of scaleseparation are identified, each potentially giving rise to a specific multi-scale modeling paradigm. A number of canonical examples are brieflydiscussed.

    Keywords: Complex Automata, Cellular Automata, Multi-Scale Mod-eling, Scale Separation Map.

    1 Introduction

    Complex Automata (CxA) were recently proposed as a paradigm to model multi-

    scale complex systems [1]. The key idea is that a multi-scale system can bedecomposed intoNsingle-scale Cellular Automata (CA) that mutually interactacross the scales. The decomposition is achieved by building a scale map onwhich each system can be represented as an area according to its spatial andtemporal scales. Processes having well separated scales are easily identified asthe components of the multi-scale model.

    In this contribution we further elaborate on the CxA framework by first pro-viding a formal definition. Next, we investigate in some detail the concept ofthe scale separation map, by taking into account the temporal and spatial scales

    that are covered by a single CA. We thus identify 5 classes of scale separation,each potentially giving rise to specific multi-scale modeling paradigms.

    To illustrate our framework we discuss a number of canonical examples,demonstrating how to formulate them as a CxA, how the decomposition intoa number of single scale CAs can be obtained, and how these systems are char-acterized by their mutual positions on the scale separation map.

    Y. Shi et al. (Eds.): ICCS 2007, Part I, LNCS 4487, pp. 922930,2007.c Springer-Verlag Berlin Heidelberg 2007

    http://www.science.uva.nl/research/scshttp://spc.unige.ch/http://-/?-http://-/?-http://-/?-http://-/?-http://spc.unige.ch/http://www.science.uva.nl/research/scs
  • 8/12/2019 Ac Modelacion Multiescala

    2/9

    Towards a Complex Automata Framework for Multi-scale Modeling 923

    2 Complex Automata Modeling

    2.1 Definition

    A CxA is a collection of interacting CA. We refer the reader to standard text-books for a complete definition of a CA [2]. Here we shall define a CA as atuple

    C=< A(x,t,L,T),S,R,G,F > (1)

    whereAis the spatial domain. It is made of cells of sizex and it spans a regionof size L. The quantity t is the time step and T is the number of iterationsduring which the CA will be run. Therefore, processes with time scales betweent and Tcan be represented and spatial scales ranging from x to L can beresolved.

    We call Sthe set of all possible states of each cell and R the evolution rule.G is the topology describing the neighborhood relation.

    At the boundaries of A, additional information is needed (boundary con-ditions). We define F as the flux of information exchanged at each iterationbetween the system and its environment.

    From definition1we can define a CxA as a graph X = (V, E) whereV is theset of vertices andEthe set of edges with the following properties

    Each vertex is a CA Ci=< Ai(xi, ti, Li, Ti), Si, Ri, Gi, Fi > each edge Eij is a coupling procedure describing the interaction between Ci

    and Cj . In practice, Eij will define how information is exchanged betweenthe two subsystems.

    During the initialization phase, this graph is built according to the modelerspecifications.

    2.2 Execution Model

    Each vertex (subsystem) knows its time step with respect to the global time as

    well as it spatial location within the whole computational domain. This knowl-edge is in part given by xi and ti

    Edges mediate an asynchronous communication between the vertices theyconnect. The main idea is that data from one CA that need to be known byanother is written in the link that connects them, as soon as it is available.Similarly, when the recipient CA needs new input information from its neighbors,it reads it from the link. If this information is not yet available, the CA has towait. In this way one achieves a decentralized, asynchronous communicationmodel, which is compatible with parallelization or distributed computing.

    The format under which this information is exchanged depends on the typeof coupling. Yet, clearly, a conceptual model is needed to find a generic way ofexchanging information (with little programming from the users), or to have asimple model to program these links. Smart edges (i.e. edges with computingand communication capabilities) should result from this information exchangeprocedure.

    http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    3/9

    924 A.G. Hoekstra et al.

    2.3 Genericity of CAs

    The fact that each CA (vertex of the CxA) has a common instruction flow(because it is a CA) gives a way to implement generic coupling mechanisms and

    achieve the above proposed execution model.A generic CA can be programmed using the propagation-collision paradigminstead of the gather-update paradigm. In this approach, the following stepsimplement all possible CAs

    procedure executeCA

    for time t1 to t2, by step dt

    forall cells

    propagation

    computeBoundary

    collision

    end forall

    end for

    end procedure

    Here we assume that all submodels will be cast in this structure, which is possibleif the model complies with the CA definition. Clearly, a lattice Boltzmann (LB)[3]model fulfills this requirement. In an agent based model, the same fundamentaloperations are also performed with cellsreplaced by agents. The propagation

    procedure sends the local states of each cell to the neighbors that need it. So, thepropagation operator assumes an underlying topology of interconnection. In anagent based model, a special agent can be defined as a centralized informationrepository.

    The data structure is a set of cells or agents which is traversed in any orderbecause all the above operation are, in nature, parallel operations.

    ThecomputeBoundary procedure is needed to specify the values of the variablethat are defined by the external environment. In the case of a LB fluid simulation,the missing density distributions at the wall that are computed in this procedure.

    Collision is the procedure in which the evolution rule is executed for eachcell, using the cell values obtained from propagationand computeBoundary.

    2.4 Coupling Mechanisms

    In the literature, several ways of coupling have been identified. From reference[4],we have

    Sub-Domain coupling (SDC), called domain decomposition in[4]

    Hierarchical-Model coupling(HMC), called heterogenous modeling method(HMM) in[4].

    In the SDC adjacent spatial domains are described by different models on space-time grids of possible different resolution. Note that the two adjacent subdomainscan possibly overlap.

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    4/9

    Towards a Complex Automata Framework for Multi-scale Modeling 925

    In HMC, some parameters or variables of a main model (e.g. the CA rule,collision operators) are first computed locally (i.e for some selected cells) on thefly by a finer scale model.

    The above SDC and HMC coupling mechanisms can be easily incorporated in

    the flow structure of executeCA, in agreement with the concept of smart edgesconnecting the CAs together.

    For instance, the propagation step produces information that is sent to neigh-boring spatial cells, possibly those belonging a another CA. In case of SDC (sub-domain coupling) the outgoing information from the boundary of one system isexaclty what is needed by the adjacent subdomain. Thus propagation has towritethe adequate information in the edge interconnecting the two sub-models.Similarly, the procedure computeBoundary will read the missing informationfrom the corresponding edge.

    The HMC (hierarchical model coupling) is typically affecting the collisionprocedure by giving the value of a parameter needed by the collision rule andwhich is computed by a subscale model. For instance, this parameter could bea threshold on the blood shear stress that will lead to blood clotting. Sucha threshold would typically result from the own dynamics of the cells in theendothelium.

    3 The Scale Separation Map

    The Scale Separation Map (SSM) is defined as a two dimensional map with thehorizontal axis coding for temporal scales and the vertical axis coding for spatialscales. Each subsystem occupies a certain area on this map. Fig. 1 shows anexample of such SSM, in which three subsystems have been identified. Subsystem1 operates on small spatial scales, and short time scales, process 2 at intermediatescales, and process three at large scales. This could e.g. be processes operatingat the micro-, meso-, and macro scale.

    Consider two processes A and B with their own specific spatial - and temporal

    scale, denoted by i and i respectively (i {A, B}). Assume that A has thelargest spatial scale. In case the spatial scales are the same, A has the largest

    temporal scale

    spatial scale

    lumped parameter

    coupling

    3

    2

    1

    spatially andtemporally resolved

    coupling

    Fig. 1.A scale map, showing three sub-systems and their mutual couplings

    temporal scale

    spatial scale

    A01

    23.1 3.2

    Fig. 2.Interaction regions on the scalemap

    http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    5/9

    926 A.G. Hoekstra et al.

    temporal scale. In other words, (B < A) OR (B = A AND B < A).We can now place A on the scale map and then investigate the different possi-bilities of placing B on the map relative to A. This will lead to a classificationof types of multi-scale coupling, as in Fig.2.

    Depending on where B is, we find the following regions:

    Region 0:A andB overlap, so we do not have a scale separation, we aredealing here with a single-scale multi-science model.

    Region 1: HereB =A AND B < A, so we observe a separation oftime scales at the same spatial scale.

    Region 2: Here B < A AND B =A, so we observe a separation inspatial scales, like coarse and fine structures on the same temporal scale.

    Region 3: Separation in time - and spatial scales. Region 3.1 is the well-known micro macro coupling, so fast processes on a small spatial scalecoupled to slow processes on a large spatial scale. This type of multi-scalemodel has received most attention in the literature, and the SDC andHMC coupling paradigms explained earlier have mostly been applied inthis region. In region 3.2 we have the reversed situation, a slow processon small spatial scales coupled to a fast process on large spatial scales.We believe that this region is very relevant in for instance coupling of

    biological with physical processes, where the biological process is e.g. theslow response of cells to a faster physical process on a larger scale (e.g.blood flow in arteries).

    Note that we do not have to consider other regions of the scale map, becausethen the role ofAand B just reverses, and we fall back to one of the five casesidentified above.

    Next we address the question of the area that process A andB occupy on thescale map, and from that, how to quantify the regions 0 3 on the scale map.

    As discussed earlier, a single scale CA is characterized by a spatial discretiza-tion x and a system size L, where x < < L. The number of CA cells inthe full domain is then N(x) = L/x. We introduce (x) and (x) so that the

    relevant spatial scaleis represented by 10(x)

    cells (i.e.x= /10(x)

    ) and the

    spatial extension of the CA is 10(x)

    times the spatial scale, i.e. L = 10(x)

    ,

    and thereforeN(x) = 10(x)+(x) . Likewise for the temporal domain, i.e. a single

    scale CA has a time step t and the CA is simulated over a time span T, andwe havet < < T. The number of time stepsN(t) =T/t. The discretization

    has been chosen such that the temporal scale is represented by 10

    (t)

    time steps(i.e.t = /10(t)

    ) and that simulation time of the CA is 10(t)

    times the spatial

    scale, i.e. T =10(t)

    and N(t) = 10(t)+(t) .

    A process position on the scale map is now fully determined by the tuple{, (x), (x); , (t), (t)}, and is drawn in Fig. 3, where the axes are now ona logarithmic scale. On such logarithmic SSM the process is rectangular with

    http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    6/9

    Towards a Complex Automata Framework for Multi-scale Modeling 927

    Log(spatial scale)

    Log(t) Log()Log()

    Log(L)

    Log(x)

    Log()

    (t)(x)

    (t)(x

    Log(temporal scale)

    Log(x)

    Log()

    Log(T)

    )(tA

    )(tA

    Log()

    )(tB

    )(tB

    Process A

    1 0

    23.1 3.2

    Log(x)

    Log(spatial scale)

    )(xA

    )(x

    B

    Log(temporal scale)

    Fig.3.Position of a process with para-meters {, (x), (x); , (t), (t)} on the

    logarithmic scale map

    Fig.4. Interaction regions on the log-arithmic scale map, in more detail

    area ((t) + (t)) ((x) + (x)) asymmetrically centered around the point(log(), log()).

    In the special case that (x) = (x) = (t) = (t) = 1 (a reasonable firstorder assumption) we see that the process is symmetrically centered around(log(), log()) and that the size of the box extends 2 decades in each dimension.

    In Fig.4we show the extension of Fig.2, where regions 1 3 now have well

    defined positions and size. Depending on the location of process B, that is thepoint (log(B), log(B)) on the SMM, and with all information on the spatial andtemporal extensions of process A and B, we can unambiguously find in whichregion of the scale map they are located with respect to each other.

    Consider once more region 3. In region 3.1 we find that LB < xA andTB < tA. As said earlier, this is the classical micro macro coupling, and inour language this means the full spatio-temporal extend TB LB of process Bis smaller than one single spatio-temporal step tA xA of processA.

    Region 3.2 also exhibits separation of time and length scales, but now the sit-

    uation is quite different. We find that, just like in region 3.1,LB < xA. So, thespatial extend of process B is smaller than the grid spacing of process A. How-ever, now we find that TA < tB. In other words, the full time scale of process Ais smaller then the time step in processB . This will result in other modeling andsimulation paradigms than in region 3.1. Typically, the coupling between A and Bwill involve time averages of the dynamics of the fast processA.

    Let us now turn our attention to the regions where there is overlap on thetemporal - or spatial scales, or both (regions 0, 1, and 2, in Fig.4). In all thesecases we can argue that we have partial or full overlap of the scales, giving

    rise to different types of (multi-scale) modeling and simulation. We say thatthe scales fully overlap if the point (log(B), log(B)) falls within (one of) thescales spanned by process A. On the other hand, there is partial overlap if(log(B), log(B)) falls outside(one of) the scales spanned by processA, but therectangular area of process B still overlaps with (one of) the scales spanned byprocess A. The region of partial scale overlap can also be considered as a region of

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    7/9

    928 A.G. Hoekstra et al.

    gradual scale separation, a boundary region between the scale separated regions1, 2 and 3 and region 0. Simulations of this kind of multi-scale system wouldtypically involve CxAs with local grid refinements, or multiple time steppingapproaches, or a combination of both. We save this more detailed discussion for

    a future publication.

    4 Examples

    In this section we briefly indicate how some problems can be expressed as a CxA,with the benefit of code reusability, modeling flexibility and design efficiency.

    4.1 Grid Refinement

    The problem of grid refinement in LB fluid simulations is important in order toresolve small spatial scales, for instance around boundaries. The two subdomainsC and Fare the regions where a coarse and fine grid are defined, respectively.Such a situation is described in more detail in [5]. The two regions are updatedby applying a LB (i.e a CA) dynamics such as executeCA. In addition, theyinteract because C and F have a common spatial interface, at the boundarybetween the two regions. Thus, the coupling is of SCD type. The CxA edgeconnecting the two submodels consists of transfering the information for the

    cells at the interface, from one grid to the other. In grid refinement the gridspacing is typically refined by some small number (say 2 or 4), and the timestepis scaled accordingly. So, in the language of the SSM, processes C and F willhave partially overlapping spatial and temporal scales.

    Typically, the edge will collect the data from gridC, rescale it, then perform aspace and time interpolation in order to provide gridF with a data set at scalesxF andtF. Similarly, the same edge will also translate the data produced byFto the requirement of grid C.

    From the point of view of grids C and F the coupling is achieved simply

    by writing and reading the specific buffers managed by the edge, thus fullydecoupling the model part from its interaction with other system components.

    4.2 Time Splitting in Reaction-Diffusion

    Time splitting has been introduced in LB models for reaction-diffusion [6] inorder to deal with a wide range of reaction and diffusion constants in the samesimulation. The idea is to consider diffusion as a first, larger scale model. Re-action acts between the diffusion steps, at each spatial cell, with a finer time

    resolution than the diffusion process. The reaction process is modeled as an im-plicit solver for a local differential equation. So we have here a HMC type ofcoupling. In this case, the subsystem coupling edge simply consists in readingthe input chemical concentrations given by the diffusion process and pass themto the reaction solver. The new concentrations are then written back to the cellfor the next diffusion step. Depending on the characteristic time scales of the

    http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    8/9

    Towards a Complex Automata Framework for Multi-scale Modeling 929

    transmural

    diffusion

    transmural

    convection

    bulk flow

    injury

    andi

    nitialstretching

    Fluidboundary

    layers

    cell signaling

    cell cycle

    tissue growth

    inflammation

    1 hour 1 daytemporal scale

    spatial scale

    static,

    initial

    condition

    0.1 s 1 s 1 min

    1 m

    10 m

    0.1 mm

    1 mm

    1 cm

    1 week

    stress

    relaxationclotti

    ng

    Fig. 5.A SSM for in stent re-stenosis

    diffusion (specified by the diffusion constants) and the reactions (specified bythe rate constants), the CxA is has fully separated time scales (region 1 on theSMM), or the time scales are partially overlapping.

    4.3 In-stent Restenosis

    Within the EU funded COAST project [7] we have chosen the treatment andprogression of coronary artery disease as a prototypical multi-scale multi-sciencecomplex system to be modeled within the CxA framework. We will addressthe adverse vessel wall remodelling (re-stenosis), which occurs in some patientsafter placement of a metal frame (stent) within the artery lumen to expand andsupport the vessel at the site of a stenosis. This restenosis is due to the growth ofscar tissue in between the strut of the stent, which tends to block the lumen. Afull description of this application is beyond the scope of this manuscript. Here, itserves as an illustrative example of how we plan to apply CxA modeling. In-StentRestenosis involves a large number of biological and physical processes on manyspatial and temporal scales. Fig. 5 shows a simplified SMM for this process,showing relevant physical processes (such as bulk flow, transmural diffusion)and biological processes (such as cell signaling, inflammation and clotting) ontheir (estimated) characteristic scales. We are currently in the process of definingsingle scale CA or agent-based models for all processes, and once this is available,we will cast this SMM into the form of Fig.3and4.

    5 Discussion and Conclusions

    The simulation of multiscale, multiscience complex systems are a central challengein computationa science. Cellular Automata are a powerful framework to modelspatially extended dynamical systems. In order to cope with multiscale and multi-physics, we have introduced Complex Automata as a set of interacting CAs. To-gether with a description of system components through a scale separation map,

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/12/2019 Ac Modelacion Multiescala

    9/9

    930 A.G. Hoekstra et al.

    CxA offer a flexible and intuitive framework to solve problems in which severaldifferent physical processes at different spatial and temporal scales interact.

    Acknowledgments. This research is supported by the European Commission,through the COAST project [7] (EU-FP6-IST-FET Contract 033664)

    References

    1. Hoekstra, A., Chopard, B., Lawford., P., Hose, R., Krafczyk, M., and Bernsdorf, J.:Introducing Complex Automata for Modelling Multi-Scale Complex Systems. InProceedings of the European Conference on Complex Systems ECCS06, ISBN 0-9554123-0-7 (2006).

    2. Chopard, B. and Droz, M.: Cellular Automata Modeling of Physical Systems. Cam-bridge University Press (1998).3. Succi, S.: The Lattice Boltzmann Equation, for Fluid Dynamics and Beyond. Oxford

    University Press (2001).4. E, W., Engquist, B., Li, X, Ren, W., and Vanden-Eijnden, E.: Heterogeneous Mul-

    tiscale Methods, A Review. Commun. Comput. Phys., 2, 367-450 (2007).5. Dupuis, A. and Chopard, B.: Theory and applications of an alternative lattice Boltz-

    mann grid refinement algorithm. Phys. Rev. E, 67, 066707 (2003).6. Alemani, D., Chopard, B., Buffle, J. and Galceran, J.: LBGK method coupled to

    time splitting technique for solving reaction-diffusion processes in complex systems.

    Physical Chemistry and Chemical Physics 7, 33313341 (2005).7. http://www.complex-automata.org/

    http://-/?-http://-/?-