Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 14-Day Trial for You or Your Team.

Learn More →

Modeling of decentralized processes in dynamic logistic networks by means of graph-transformational swarms

Modeling of decentralized processes in dynamic logistic networks by means of... Logist. Res. (2016) 9:20 DOI 10.1007/s12159-016-0147-6 ORIGINAL PAPER Modeling of decentralized processes in dynamic logistic networks by means of graph-transformational swarms 1 1 Larbi Abdenebaoui Hans-Jo ¨ rg Kreowski Received: 16 December 2015 / Accepted: 10 August 2016 / Published online: 31 August 2016 The Author(s) 2016. This article is published with open access at Springerlink.com Abstract In this paper, we propose to employ the frame- 1 Introduction work of graph-transformational swarms for the modeling of dynamic logistic networks with decentralized processing As logistic networks get larger and larger and more and and control. The members of a graph-transformational more complex, they become more difficult to handle and to swarm act and interact in a common environment graph control. The traditional central control does not work with massive parallelism of rule-based activities according flexibly and efficiently enough in any case so that one must to local control conditions and a global cooperation con- look for alternative approaches. This applies particularly if dition. This corresponds directly to the logistic hubs and the logistic network may change dynamically. One of the their processes in a logistic network where the processes most significant current paradigms that faces this com- run simultaneously and autonomously with a proper way of plexity is the so-called autonomous control approach (cf. coordination. This covers also dynamic changes on the [11]). This approach proposes that each logistic object such network structures as the members of a swarm can change as a container or an automated guided vehicle receives its the environment anyhow. The approach is illustrated by the own computing processor and makes its decision autono- modeling of automated guided vehicles. mously. Therefore, the components can react locally and quickly to changes in the environment. However, a major Keywords Dynamic logistic networks  Decentralized challenge within this kind of decentralized approach is how control  Automated guided vehicles  Graph- the individuals act and cooperate with each other to reach a transformational swarms  Swarm computation  Graph desired global goal. In this paper, we introduce and discuss transformation graph-transformational swarms as a formal modeling approach to dynamic logistic networks with decentralized control. As an illustrative example, we consider and dis- cuss the routing problem of automated guided vehicles. The concept of graph-transformational swarms combi- nes the ideas of swarm computing and the methods of graph transformation. The basic framework is introduced in [1], where a simple ant colony, cellular automata, and discrete particle systems are modeled to demonstrate the This article is part of a focus collection on ‘‘Dynamics in Logistics: usefulness and flexibility of the approach. A graph-trans- Digital Technologies and Related Management Methods.’’ formational swarm consists of members that act and & Larbi Abdenebaoui interact simultaneously in an environment, which is rep- larbi@informatik.uni-bremen.de resented by a graph. The members are all of the same kind Hans-Jorg Kreowski or of different kinds. Kinds and members are modeled as kreo@informatik.uni-bremen.de graph-transformational units (see, e.g.,[15]); each unit consists of a set of graph-transformational rules specifying University of Bremen, P.O. Box 330440, 28334 Bremen, Germany 123 20 Page 2 of 13 Logist. Res. (2016) 9:20 the capability of members and a control condition which and form are also not changed by the rules. K can be regulates the application of rules. identified in this way as the identical parts of L and R. This paper is organized as follows. In Sect. 2, graph- In order to permit more flexibility in modeling, we transformational swarms are recalled starting with the basic consider in this paper rules with negative application concepts of graph transformation. Section 3 discusses how conditions. This extends the notion of rules permitting to graph-transformational swarms can be used to model express what should not be present in a graph in order to dynamic logistic networks. To illustrate this, essential apply a given rule. A rule with negative application con- aspects of the routing problem of automated guided vehi- dition r ¼ðN; L; K; RÞ consists of four components such cles are modeled as graph-transformational swarms in that (L, K, R) is a rule and N is the associated negative Sect. 4. Section 5 concludes the paper. application condition composed from a finite set of graphs N ¼fC ; ...; C g called each a negative context such that 1 k L  C for i 2½k. Every negative context specifies a neg- 2 Graph-transformational swarms ative part C  L which consists of the items of C that do i i not belong to L. This section recalls the concept of graph-transformational We depict a rule r ¼ðN; L; K; RÞ with N ¼fC ; ...; C g 1 k swarms as introduced in [1] starting with the basic com- as N ! R where N is represented as a graph with sub- ponents of the chosen graph-transformational approach as graph L and extra information such that the negative con- far as needed in this paper (for more details, see, e.g., texts are identified. In this representation, the dashed items [8, 14, 16, 20]). of N belong to the negative parts, the remainder is L. In one case in Fig. 8, the negative part contains two edges which 2.1 Basic concepts of graph transformation are enclosed by a dotted line. In all other cases, the nega- tive part contains a single edge. In this way, all negative 2.1.1 Graphs and rules contexts are easily recognized Figure 1 shows the rule move which is used in a mod- A (directed edge-labeled) graph G ¼ðV ; E; s; t; lÞ consists ified form in Sect. 4 to model the movement of an auto- of a set V of nodes, a set E of edges such that every edge is mated guided vehicle with the name a having the target T directed and labeled, i.e., s : E ! V and t : E ! V are which is represented by an edge labeled by a, T. The mappings assigning a source s(e) and a target t(e) to each (T, d)-edge indicates the direction in which the target T can e 2 E and l : E ! R is a labeling function for some be reached in the distance d. In this rule, there are two labeling alphabet R. If the target is equal to the source, then negative contexts. The first one is specified by the negative 00 00 the edge is called a loop. In the following, we call a node part consisting of the dashed edge labeled by a ; T and its an i-node if it has an i-loop for i 2 R. The components V, source node. It means that the vehicle a can move into the E, s, t, and l of G are also denoted by V , E , s , t , and l , new position only if there is no other (concurrent) vehicle G G G G G respectively. that can occupy the same next position. The second neg- Given two graphs G ¼ðV ; E; s; t; lÞ and ative context is specified by the negative part that consists 0 0 0 0 0 0 0 H ¼ðV ; E ; s ; t ; l Þ,a graph morphism g : G ! H is given of the dashed edge labeled by a ; T requiring that the 0 0 by two mappings g : V ! V and g : E ! E such that vehicle a can move into the new position only if there is no V E 0 0 0 s ðg ðeÞÞ ¼ g ðsðeÞÞ, t ðg ðeÞÞ ¼ g ðtðeÞÞ and l ðg ðeÞÞ ¼ other vehicle present there. The gluing graph consists of E V E V E lðeÞ for all e 2 E. The image gðGÞ¼ the three nodes and the edge labeled by T, d. 00 00 00 00 00 00 ðg ðVÞ; g ðEÞ; s ; t ; l Þ where s ,t and l are restrictions The application of a rule r ¼ðL; K; RÞ to a graph G V E 0 0 0 of s , t and l to the subsets g ðEÞ and g ðVÞ is called a replaces a match of L in G by R such that the match of K is E V match of G in H.If g and g are inclusions, G is called a kept. More explicitly, let g : L ! G be the graph morphism E V subgraph of H, denoted by G  H. In particular, a match of yielding the match g(L). Then, the resulting graph H is G in H is a subgraph. It should be noted that the graph obtained by removing gðLÞ gðKÞ from G and adding morphisms yielding matches are not assumed to be R  K. All edges keep theirs sources, targets, and labels injective. with the exception of edges in R  K with sources or A rule r ¼ðL; K; RÞ consists of three graphs, the left- hand side L, the gluing graph K, and the right-hand side R such that L  K  R. In this paper, we consider rules that manipulate only edges (i.e., the nodes are neither deleted nor added). And when depicted, the gluing graph is omitted using the same relative positions of nodes in L and R. The edges in L and R that have the same sources, targets, labels, Fig. 1 A graph-transformational rule 123 Logist. Res. (2016) 9:20 Page 3 of 13 20 targets in K.If e 2 E  E with s ðeÞ2 V (or of matches of their component rules. As we use parallel R K R K t ðeÞ2 V ), then s ðeÞ¼ g ðs ðeÞÞ (or t ðeÞ¼ g ðt ðeÞÞ rules only in this way, there is no need to carry the negative R K H V R H V R resp.). application conditions over to the level of parallel rules. A rule with negative condition (N, L, K, R) with N ¼ Negative application conditions are only checked for fC ; ...; C g is applied in the same way as (L, K, R) pro- component rules. 1 k vided that, for i 2½k, the match of L cannot be extended to Two direct derivations G ¼) H and G ¼) H of rules r 1 2 C . This means that a rule can only be applied if none of its i 0 and r are (parallel) independent if the corresponding negative contexts is around. matches intersect only in gluing items. Due to the paral- Hence, the application of the rule move moves forward lelization theorem in [13], we can use the following fact: A an (a, T)-edge (i.e., the target node becomes the source parallel rule p ¼ r can be applied to G if the rules r i i i¼1 node) provided that in the new position, there is no other for i ¼ 1; ...; n can be applied to G and the matches are 0 0 00 00 (a ; T )-edge. And there is no other ða ; T Þ-edge having pairwise independent. This allows the use of massive par- the same target node. allelism in the context of graph transformation based on A rule application is denoted by G ¼) H where H is the r local matches of component rules which are much easier to resulting graph and called a direct derivation from G to H. find than matches of parallel rules. As an example of a rule application, let us consider the graph G with the explicitly given subgraph in Fig. 2 (The 2.1.2 Control conditions and graph class expressions dots in the graph indicate that the graph G may actually contain more items than the depicted subgraph). There is A control condition C is defined over a finite set P of rules an (a, T)-edge meaning that the vehicle a has the target T. and specifies a set SEM(C) of derivations. Typical control Moreover, there are four edges ahead, but one is occupied conditions are regular expressions over P. The regular 0 0 by vehicle a and another one is not accompanied by a expressions have the form r for some rule r or e; e or eje (T, d)-edge so that target T is not reachable with minimal or e where e and e are regular expressions themselves. distance in this direction. Two options remain to complete The satisfaction of a control condition in the form of a a match of the left-hand-side of rule move that avoid the regular expression is defined as follows. A direct derivation negative context. One is chosen non-deterministically to applying r satisfies r. A derivation satisfies e; e if an initial derive the graph H where the vehicle a is moved forward section of the derivation satisfies e and the rest e . It sat- 0 0  n by one edge. Continuing in this way, the vehicle a will isfies eje if it satisfies e or e . It satisfies e if it satisfies e 0 ðnþ1Þ n reach its destination T eventually following always the for some n 2 N where e ¼ k and e ¼ e ; e.A directions with minimal distance. derivation of length 0 satisfies k. Alternatively to e , e!is A sequence G ¼ G ¼) G ¼)¼) G ¼ H is 0 1 m used. A derivation satisfies e! if it satisfies e , but not r r r 1 2 m ðnþ1Þ e , i.e., e is followed as long as possible. We use also called a derivation from G to H of length m. priority conditions of the form r \ r requiring that r can Given the rules r ¼ðN ; L ; K ; R Þ for i ¼ 1; ...; n, the i i i i i only be applied if r is not applicable. Moreover, control parallel rule p ¼ðL; K; RÞ is given by the disjoint unions n n conditions can be combined by logical operations of which of the components, i.e., L ¼] L ; K ¼] K ; R ¼ i i i¼1 i¼1 we use the conjunction and with the obvious meaning: ] R.If g : L ! G for i ¼ 1; ...; n are some graph i i i i¼1 0 0 C&C are satisfied if C and C are satisfied. The expression morphisms from L in some graph G, then this induces a 0 0 eje can be restricted by the priority condition e \ e which graph morphism g : L ! G defined, for all i ¼ 1; ...; n,by requires that e is applied only if e is not applicable. Other g ðvÞ¼ g ðvÞ for all v 2 V and g ðeÞ¼ g ðeÞ for all V i;V L E i;E examples of control conditions that are used in this paper e 2 E . Therefore, matches of parallel rules are composed Fig. 2 A rule application a ,T a ,T T, d T, d a, T ··· ··· =⇒ ··· ··· move T, d T, d T, d T, d a, T G H 123 20 Page 4 of 13 Logist. Res. (2016) 9:20 are the expression krk and [r]. krk requires that a maxi- of members ðmðkÞ Þ with each kind k 2 K with i i2½sðkÞ mum number of rule r be applied in parallel. [r] requires mðkÞ 2 RUðkÞ for each i 2½sðkÞ, c is a control condition that the rule r may be applied or not. called cooperation condition, and g is a graph class A graph class expression X specifies a set of graphs expression specifying the goal. denoted by SEMðXÞ. We use the graph class expressions A swarm may be represented schematically displaying distance and idloopedðdistanceÞ. The set SEMðdistanceÞ the components initial, kinds, size, members, cooperation, contains all graphs without loops and without parallel and goal followed by their respective values. edges (i.e., loop-free and simple graphs) where each edge is labeled with a distance (i.e., a value d 2 N). The set Definition 2 (swarm computation)A swarm computation SEMðidloopedðdistanceÞÞ contains all graphs that are is a derivation G ¼) G ¼)¼) G such that 0 1 q p p p 1 2 q obtained from the graphs in SEM(distance) as follows: The P P G 2 SEMðIÞ, p ¼ r with a rule r of 0 j j j k2K i2½sðkÞ ki ki nodes are numbered from 1 to the number of nodes, and mðkÞ for each j 2½q, k 2 K and i 2½sðkÞ, and c and the every node gets a loop labeled with its number. These control conditions of all members are satisfied. The com- graphs are called id-looped distance graphs. While the putation is successful if G 2 SEMðgÞ. underlying distance graphs provide the significant infor- mation, the id-loops are added for technical reasons That all members must provide a rule to a computational because they allow a direct access to nodes via rule step is a strong requirement because graph-transforma- applications. tional rules may not be applicable. In particular, if no rule of a swarm member is applicable to some environment, no 2.1.3 Graph-transformational units further computational step would be possible and the inability of a single member stops the whole swarm. To A graph-transformational unit is a pair gtu ¼ðP; CÞ where avoid this global effect of a local situation, we assume that P is a set of rules and C is a control condition over P. The each member has the empty rule ð;; ;; ;; ;Þ in addition to semantics of gtu consists of all derivations of the rules in P its other rules. The empty rule gets the lowest priority and allowed by C. A unit gtu is related to a unit gtu if gtu is 0 0 is only applied if no other rule of the member can be obtained from gtu by renaming identifiers and relabeling applied or is allowed by the control condition of the edges. The set of units related to gtu is denoted by member or the cooperation condition of the swarm. In this RUðgtuÞ. way, each member can always act and is no longer able to terminate the computation of the swarm. In this context, the 2.2 Graph-transformational swarms empty rule is called sleeping rule. It can always be applied, is always parallel independent with each other rule appli- A graph-transformational swarm consists of members of cation, but does not produce any effect. Hence, there is no the same kind or of different kinds. All members act difference between the application of the empty rule and no simultaneously in a common environment represented by a application within a parallel step. graph. The number of members of each kind is given by the size of the kind. While a kind is a graph-transformational unit, the members of this kind are modeled as units related 3 From swarms in nature to logistic networks to the kind so that all members of same kind are alike. as graph-transformational swarms A swarm computation starts with an initial environment. It consists of iterated rule applications requiring massive In this section, we argue that graph-transformational parallelism meaning that each member of the swarm swarms as introduced in the previous section are appro- applies one of its rules in every step. The choice of rules priate means to model dynamic logistic networks. Several depends on their applicability and the control conditions of approaches to swarm computation including graph-trans- the members as well as on a cooperation condition. formational swarms mimic swarms in nature as pointed Moreover, a swarm may have a goal given by a graph class out in Sect. 3.1 in more detail. The interesting aspect is that expression. A computation is considered to be successful if already swarms in nature solve problems closely related to an environment is reached that meets the goal. logistics. Moreover and more interesting in the context of this paper, a closer look the other way round at dynamic Definition 1 (swarm)A swarm is a system S ¼ logistic networks in Sect. 3.2 reveals that they can be ðI; K; s; m; c; gÞ where I is a graph class expression speci- considered as graph-transformational swarms. fying the set of initial environments, K is a finite set of graph-transformational units, called kinds, s associates a size sðkÞ2 N with each kind k 2 K, m associates a family ½n¼f1; .. .; ng. 123 Logist. Res. (2016) 9:20 Page 5 of 13 20 3.1 Relating swarms in nature with logistics Table 1 Correspondence between dynamic logistic networks and graph-transformational swarms The proposed framework is inspired by the swarm behavior Dynamic logistic network Graph-transformational in nature which describes the group behavior of social swarm animals. Several studies agree on the assumption that the Underlying structure Environment graph swarm behavior results from relatively simple rules on the Types of logistic entities Kinds individual level (see, e.g., [4–6, 19]). In biology, the Logistic entities Members underlying mechanism is also known as self-organization: Possible actions Rules The individuals in the group interact locally with other Autonomous control Control conditions group members and have no knowledge of the global Start structures Initial environments behavior of the entire group. Furthermore, all members Coordination Cooperation conditions play the same role without any hierarchical structure [4]. Tasks Goals Using swarm behavior, social animals solve continu- Simultaneous and decentralized Massively parallel rule ously complex problems. For instance, ant colonies as well processing application as bee hives build nests and manage the resources inside it. Furthermore, they forage for food, transporting it in an efficient and flexible way. Schools of fishes and flocks of changing. One needs appropriate modeling methods like birds travel over long distances. Obviously, such phenom- those provided by graph-transformational swarms. ena have logistic aspects. Therefore, it is somewhat evident The underlying structures of dynamic logistic networks that the behavior of swarms in nature inspires to introduce are defined as graphs so that they correspond directly to concepts of artificial swarms and swarm computation that environment graphs of graph-transformational swarms are based on the idea of self-organization to solve logistic where the initial environments play the role of the start problems. One encounters some approaches to swarm structures. The various types of logistic entities like hubs, computation in the literature (see, e.g., [2, 3, 9, 12, 18]) sites, carriers, and containers together with the actions that where logistic problems are solved as typical examples like are performed on them or affect them can be seen as kinds the shortest path problem, the traveling-salespersons prob- so that the entities themselves are the swarm members. In lem and others. One may summarize that the passage from particular, the possible process actions correspond to the swarms to logistics is not very long. rules, and the autonomous control is reflected by the con- trol conditions. Finally, the coordination of the processes 3.2 Dynamic logistic networks as graph- running on the logistic networks is embodied by the transformational swarms cooperation conditions and the overall tasks by the goals. Summarized in Table 1, there is a very close relationship On the other hand, consider dynamic logistic networks. between the main features of dynamic logistic networks Their underlying structures consist of nodes and connecting and the syntactic components of graph-transformational edges. The nodes represent logistic hubs of different types swarms. Moreover and most interestingly, the idea of such as production sites, storage facilities, and car pools autonomous processes that run simultaneously and decen- or—on a more detailed level—packages, containers, cars, tralized in a logistic network is well reflected on the and trucks, and the edges represent transport lines or semantic level of graph-transformational swarms as all the information channels or the like. Without loss of general- members act always in parallel. ity, one can assume that there is always some start struc- ture. To manage the material and information flows in a 3.3 The potentials of the approach logistic network, various logistic processes are running. If the network is large and widely distributed, then it may not We propose in this paper to model dynamic logistic net- be meaningful to control the processes centrally. Alterna- works by means of graph-transformational swarms. In the tively, the logistic processes in the network may run previous subsection, one can see that the notion of such simultaneously and independently of each other each per- swarms covers all the main features one expects and finds forming its own actions and following its own autonomous in dynamic logistic networks. Nevertheless, one may control. But such a decentralized control requires coordi- wonder which particular potentials and advantages this nation and cooperation whenever material or information approach provides: must be exchanged carrying out the overall tasks. To 1. The concept of graph-transformational swarms offers a coordinate autonomous logistic processes in a network in formal framework with a precise mathematical seman- such a way that the cooperation works properly, becomes tics based on massive parallelism of rule applications. even more difficult if the network structure is dynamically 123 20 Page 6 of 13 Logist. Res. (2016) 9:20 2. As the environments are graphs and the processing is guided vehicles are driverless transportation engines that modeled by graph-transformational rules specified by follow traditionally guide paths like lines on the ground. four graphs each, the approach provides a fundament Their use is expanding rapidly in the last decades. Beside for visualization so that it can be considered as a visual the classical application in small manufacturing systems, modeling approach. nowadays, the tendency is to use AGVs more and more for 3. In fact, graph-transformational swarms can be executed transport in highly complex systems including external on graph-transformational engines like GrGen.NET areas like container terminals (for a general overview, see, (see [10]) or AGG (see [23]) so that visual simulation is e.g., [17, 26]). One of the important problems that a possible for illustrations, tests, and experiments of designer of an AGV system faces in complex areas is the various kinds. In the next section for example, we use collision-free routing problem. The classical way to solve illustrations in Figs. 5 and 9 generated from GrGen.- this problem is the central time windows planning (see, NET. They visualize the computational steps in a e.g., [22, 24, 25]). However, the tendency in the last years simple environment in order to make it easier for a is to explore more decentralized approaches (e.g., [21, 27]). reader to understand how the developed swarm In the same vein, this section proposes a decentralized behaves. Moreover, the implementation in GrGen.NET solution using the notion of graph-transformational allows us a visual testing using different graphs. swarms. 4. The formal semantics is based on derivations which are sequences of rule applications. Therefore, a proof 4.1 The routing swarm technique is provided by induction on the lengths of derivations. We model the infrastructure where the AGVs operate as an 5. If one fixes the initial environment and bounds the idlooped distance graph. In a graphical representation, lengths of derivations, then the behavior of graph- the nodes correspond to the ends or intersections of paths transformational swarms can be translated into formu- including important stations like pickup and delivery las of the propositional calculus so that SAT-solvers locations. The edges represent the paths or segments of can be employed for automatic proving of properties, paths in the infrastructure depending on their lengths. The as far as they are expressible in propositional calculus. distance of an edge can correspond to the distance of the A typical correctness property one would like to prove corresponding path or to some cost of traversing it. in this way is: Will the goal be reached? Another We propose a solution based on two stages. The first one property of interest that can be proved in this way is consists of the preparation of the layout in a such way that deadlock freeness. the AGVs follow later only local information. The second 6. The approach is very flexible and generic because all one consists of the navigation process of the AGVs the modeling concepts can be chosen from a variety of depending on an arbitrary task assignment. possibilities. This applies to the kind of graphs which The parameter m is the number of AGVs and can be may be directed or undirected, labeled or unlabeled, chosen freely. The swarm has four kinds: preparator, re- connected, simple, etc. It applies similarly to the kind of solver, assigner, and navigator. Their sizes are n,n, m, and rules, of control conditions and of graph class expres- m, respectively, where n is the number of nodes in the sions. The actual choice may depend on the application underlying graph G 2 SEMðidloopedðdistanceÞÞ. The at hand or the taste of the network designers. members are obtained by relabeling in such a way that 7. Graph-transformational swarms do not need extra every node in the graph gets assigned two members, one of features to make logistic networks dynamic, i.e., to kind preparator and the other of kind resolver, and simi- allow the modeling of dynamic changes in the larly, every AGV gets assigned a member of kind assigner underlying structure. The members of the swarm and a member of kind navigator. How relabeling is perform their tasks by applying rules to the environ- achieved is described below in the detailed introduction of ment graph. This includes the possibility of members the kinds. Syntactically, the cooperation condition is a to change the environment structurally. regular expression as introduced in Sect. 2.1.2, but for kinds instead of rules. Semantically, the used cooperation condition requires that preparator is applied realizing the 4 Routing of AGVs by a graph-transformational layout preparation followed by an arbitrary repetition of swarm assignments each followed by an arbitrary number of conflict resolving and navigation steps. The application of a In this section, we propose a solution to the routing prob- kind means that all members of this kind act in parallel lem of the automated guided vehicles (AGVs) using the according to theirs’ own control conditions while all other notion of graph-transformational swarms. Automated members ‘‘sleep’’, i.e., they apply their sleeping rule by 123 Logist. Res. (2016) 9:20 Page 7 of 13 20 routing(m) an indicator to T with the distance D using the successor s, initial: id-looped(distance) where s is the target of e (i.e., s ¼ tðeÞ). If D is minimal kinds : preparator,resolver,assigner,navigator considering simple paths up to the maximal lengths l,we size : n =#nodes,n,m,m say that the indicator is l-minimal. If D is minimal con- members: preparator for i ∈ [n] resolver for j ∈ [n] j sidering all possible paths, then the indicator is optimal. A assigner for k ∈ [m] path composed from indicators to a target T is called an navigator for l ∈ [m] ∗ ∗ indicator path to T. If every node in the graph has only coop: preparator;(assigner;(resolver; navigator) ) goal: all vehicles arrived optimal indicators to every reachable node, then the graph is called fully indicated. Fig. 3 Schematic representation of the graph-transformational swarm The members of kind preparator realize the layout routing preparation process. The kind preparator specified in Fig. 4 default. The goal is that all AGVs reach their assigned initializes this process with rule init. It adds an indicator in an X-node to a direct successor s provided that such indi- targets. The swarm is schematically presented in Fig. 3. As mentioned before, we have implemented the swarm cator does not yet exist. The rule connect connects an X- routing in the graph-transformational tool GrGen.NET. node with an existing indicator path to T. It is applied if a The resulting computation steps of an experiment with an direct successor s of X exists having an indicator to T with a environment composed from a very small graph, and three distance D provided that there is no other direct successor AGVs are used in this section to accompany the explana- of X having the same target T with a distance D such that tion of the behavior of the swarm routing. Fig. 5 summa- D \ D þ d. The rule connect generates an indicator to T 2 1 with the new distance D þd using the successor s.If an X- rizes the layout preparation process, and Fig. 9 illustrates the remainder of the computation which consists of the node has two indicators to a target T with different dis- tances, the rule select deletes the one with the larger dis- assignment and the conflict-free navigation of the AGVs. tance selecting in this way the best one to be kept. The 4.2 Layout preparation control condition requires that the rule init is applied with maximum parallelism. Afterward, the rule connect is The layout preparation equips the underlying graph with applied followed by select both with maximum parallelism. additional edges in such a way that every node in the graph Because of the negative application condition of init, init is can indicate to an AGV having the target T which next applied only once for a given successor node in the whole node can be visited to reach T with the minimal distance swarm computation while connect and select are iterated as possible. Given an i-node, we code such an indicator as an long as possible according to the control condition of outgoing edge e labeled with a pair T, D. We say that i has preparator. Fig. 4 Unit preparator 123 20 Page 8 of 13 Logist. Res. (2016) 9:20 Fig. 5 A sample computation of the swarm routing illustrating the layout preparation process p p 1 2 In the swarm, there are n members of kind preparator. and 1 that are not 2-minimal (p deletes the indicator in 2 to The member preparator for i 2½n is obtained from 1 with distance 3 keeping the minimal indicator to 1 with preparator by relabeling all occurring X with i. distance 2). Note that a node can have more than one Then i becomes a fixed label in preparator . The role of minimal indicator to the same target (in the example, the the other labels must be explained now: They are place- node 3 gets two indicators to 1 with the same distance 4). holders for all possible values so that the rules are rather By induction, one can prove that in 2L  1 steps, all L- rule schemata that must be instantiated before they are minimal indicators are constructed. If the longest path with applied. A control condition like ||init|| means accordingly a minimal distance is constructed, then the preparator- that the maximum number of the instantiations of the rule members cannot apply any rule anymore (except the init must be applied in parallel. This mechanism that keeps sleeping rule). And the constructed indicators are optimal. the representation of rule sets small is used in all our Because the length of such a path is shorter or equal n  1, examples of transformation units. the number of steps is bounded by 2n  3. Summarizing, In the following, we describe how the members work the following correctness result holds: together using the computation in Fig. 5 as illustrating Theorem 1 Given an id-looped distance graph G, the example. In the first step, all members apply the rule init in swarm routing transforms it by the initial preparation parallel generating in every node indicators to all successor phase in a fully indicated graph in a number of steps nodes (see the result of the derivation p in the example). In bounded by 2n  3 where n is the number of nodes in G. the second step, the parallel application of the rule connect in parallel connects all nodes to construct indicator paths of Note that the layout preparation process can be con- length 2. It connects also those that are already connected sidered as a distributed version of the Dijkstra’s shortest to indicator path of length 1 if the new distance is smaller, path algorithm (cf. [7]). then the old one (in the example, p adds indicators in the The behavior of the swarm in the layout preparation nodes 2 and 3). In the third step, all members apply select stage can also be interpreted as follows. In the first step, a in parallel deleting all indicators using path of lengths 2 change in the environment is introduced using the rules 123 Logist. Res. (2016) 9:20 Page 9 of 13 20 init. The swarm reacts by propagating backwards this with a higher priority ðp [ pÞ, and can visit too the information over all nodes combining the rules connect and position hX; si ( see the edge ðT ; d Þ in the rule). This 1 1 select of all members of kind preparator. In more sophis- negative context with two edges is bordered by a dotted ticated versions of the underlying swarm, one can consider line to indicate that the two parts should be satisfied that additional changes can occur in the environment like together. (2) The position hX; si is free: There is no other suppression of indicator edges. This can simulate for outgoing AGV-edge labeled by a ; T ; p parallel to the 2 2 2 example a traffic congestion. Such a change can be also (T, d)-edge. (3) There is no reservation a for any other handled in the same way by propagating the information vehicle in the next position hX; si. (4) The AGV a has not backward to all concerned members. For illustration pur- yet a reservation: There is no outgoing edge labeled by poses, we keep the preparation process simple and show in a. The rule reserve adds an outgoing edge labeled by the next subsection how the automated guided vehicles can a parallel to the (T, d)-edge which indicates that the use the generated information to navigate conflict-free to underlying position is reserved for the AGV a. The rule their assigned targets. reserve may be applicable for two AGVs with the same priority both claiming the same next possible position 4.3 Assignment, conflicts resolving, and navigation hX; si. But the control condition requires that the rule is applied sequentially as long as possible so that only one of The kinds assigner and navigator model the task assign- the potential reservations is chosen non-deterministically. ment and navigation process from the point of view of the The member resolver for j 2½n is derived from resolver AGVs. However, the task assignment has the most simple by relabeling all occurring X with j. This means in par- form serving solely the simulation purposes of the com- ticular that reservations are done sequentially at the node putational steps. The kind resolver models the conflict with the j-loop, but in parallel for different nodes. resolving from the point of view of a node where multiple The kind navigator, which is specified in Fig. 8, con- AGVs have it as next destination and would like to visit the tains three rules wait, move, and arrive. The rule wait same next position which is determined by a direct suc- increments the priority p with 1. The rule move is cessor of the underlying node. responsible of the forward movement of the AGV until the In the following, we encode an AGV as an AGV-edge target is reached. It moves forward the AGV a with the labeled by a, T, p where a is the name of the AGV, T 2½n target T following an a-edge (which is added by a resolver corresponds to its assigned target and p 2 N is its current member). If the target node is reached, the rule arrive can priority. We call therefore a vector of nodes hn ; n i, such 1 2 be applied. The rule arrive deletes the AGV-edge signaling that an indicator (T, d) from n to n exists, an AGV 1 2 in this way to the task assigner that the AGV a is free for a position. We consider that AGVs with target T can occupy new assignment. The control condition requires that one of such position with the restriction that at most one AGV can the rules move, arrive,or wait is applied. Therefore, wait be present in a position in a given time. The priority is has the lowest priority. The member navigator for k 2½m needed to resolve conflicts if more than one AGV compete is obtained from navigator by relabeling all occurring for one position. a with a . The kind assigner, as specified in Fig. 6, has just a single After the layout preparation, only members of kind as- rule assign that creates a vehicle edge labeled with signer, resolver, and navigator are active. The assigner a, T, p between two arbitrary nodes provided that this members create an arbitrary number less or equal m of position leads to the target T and is free and that the vehicle AGV-edges in parallel. According to the parallelization edge is not yet present in the whole graph. Note that the theorem together with the fact that the T, d edges in the edges labeled by T, d in the rule assign have different rule assign do not belong to the gluing graph, the positions forms meaning that they do not belong to the gluing graph of the created AGVs are pairwise different ensuring a of the rule. The control condition [assign] requires that the conflict-free assignment. Afterward, all created AGV- rule may be applied or not so that not every vehicle must be edges act in parallel by moving forward or waiting present any time. The members assigner for j 2½m are j depending on the decision of the resolver members, which obtained from the kind assigner by relabeling all occurring a with a and the a by a for j 6¼ k. j k The kind resolver has a single rule reserve (see Fig. 7). It reserves for an incoming AGV-edge labeled by a, T, p a next possible position hX; si having an indicator T, d pro- vided that the following four negative contexts are all satisfied. (1) There is no other concurrent AGV (repre- sented in the rule by the incoming AGV-edge a ; T ; p ) 1 1 1 Fig. 6 Unit assigner 123 20 Page 10 of 13 Logist. Res. (2016) 9:20 Fig. 7 Unit resolver m ¼ 0, no car moves so that no collision can happen. Let now the computation have mþ1 assign-steps. Due to the induction hypothesis, the vehicles run collision-free for the first m assign-steps. The ðmþ1Þ-st assign-step adds some further AGVs, but only if none of these is already present and the edges where the vehicles are assigned are not occupied. All further steps are applications of the rule re- serve alternated with the applications of the rules wait, move, and arrive. A collision would only happen whenever two AGVs move onto the same edge at the same time. But such collision is impossible because the entered edge is reserved before by exactly one vehicle as discussed in Fig. 8 Unit navigator detail above in the explanations of the kinds. h are present in every node to check for and to resolve The swarm routing is designed to solve conflict-free conflicts. They reserve the next possible position of the situations where two or more concurrent AGVs want to AGVs based on their priorities. The AGVs with a reser- traverse the same node. However, it should be mentioned vation are moved forward setting their priorities to one, the that the presented swarm does not handle deadlocks caused others that arrive to their targets become their corre- from circular waits. The characterization, detection, and sponding edge deleted, all others have to wait incrementing avoidance of such situations should be treated in future their priorities by one. If the number of repetition is high work. enough, the swarm reaches its goal, otherwise the process Figure 9 illustrates the computations in the navigation starts again by assigning new tasks to inactive vehicles. process of three AGVs a ,a and a starting with the fully 1 2 3 The swarm repeats this process until the goal is reached. connected graph resulting from the preparation process in Especially, we have the following result. Fig. 5. In the first step in this stage, two AGVs are arbi- trarily chosen to get assignments and the reminder is kept Theorem 2 If the swarm routing reaches its goal, each inactive. a and a get assigned, respectively, the targets 1 1 3 AGV that has been assigned to a target reaches this target and 4 and the start positions h3; 1i and h3; 2i as a result of collision-free. the application of the rule p ¼ assign þ assign þ sleep 5 1 3 2 where the indices in the rules correspond to the indices of Proof Consider a computation G ¼) G of the swarm 0 n the members that apply them. After the assignment, the routing. According to the cooperation condition, an initial member resolver which resolves conflict in node 2 section G ¼) G for some i prepares the initial environ- 0 i reserves the next position for the AGV a through gener- ment G into a graph with the properties stated in Theo- ating an a -edge while all other members of kind resolver rem 1. And the tail G ¼) G is composed from sections of i n apply their sleeping rule, i.e., p ¼ reserve þ 6 2 sleep . The rule p ¼ arrive þ move þ sleep is i 7 1 3 2 the form G ¼) G ¼) G for i ¼ k \ \k ¼ n, i2½5nf2g k k þ1 k 1 m j j jþ1 applied making a available for other assignments because m 1 where, for j ¼ 1; ...; m, the first step is an assign- it has already arrived at its target and moving forward the step and the remainder repeats resolver-steps followed by vehicle a to its reserved position. The AGV a is still navigator-steps. For m ¼ 0, this is the empty sequence. 3 2 sleeping in this step. At this point, the repetition of Then, the theorem can be proved by induction on m. For 123 Logist. Res. (2016) 9:20 Page 11 of 13 20 p p 5 6 p p 9 8 Fig. 9 A sample computation of the swarm routing illustrating the navigation process 123 20 Page 12 of 13 Logist. Res. (2016) 9:20 resolving and navigation is finished allowing that the against informal or semiformal models or just against assignment starts again. p ¼ assigner þ sleep the intuition of the designers. 8 2 i i2½3nf2g 2. The use of tools must be made more comfortable. At assigns the target 1 and the start position h5; 4i to the AGV the moment, one must adapt each graph-transforma- a The other members of kind assigner sleep because the tional swarm separately by hand to simulate and a is not chosen to be assigned and a is already assigned. 1 3 visualize it on a graph-transformational engine or to In the next step, the rule p ¼ resolver þ sleep 9 4 i i2½5nf4g verify properties on a SAT-solver. By fixing the chooses a to move forward reserving the only possible syntactic features of swarm modeling, one can con- next edge for it. This step illustrates the behavior of a struct translators into the tools so that the tools run member resolver in a situation where concurrent AGVs automatically on swarms and simulate and verify having the same maximal priority and want to traverse the logistic networks in this way. assigned node. Namely one is chosen arbitrarily. Following 3. It may be meaningful to translate the modeling this decision, a moves forward and a waits augmenting 2 3 concepts of graph-transformational swarms into its priority by 1 as a result of the rule explicit modeling concepts of dynamic logistic net- p ¼ move þ wait þ sleep . The navigation rules yield 10 2 3 1 works. In this way, modelers of networks do not need that a applies its arrive rule and that a waits again 2 3 to make themselves familiar with the swarm ideas, and because the next position is occupied, that is, they could follow their intentions directly within the p ¼ arrive þ wait þ sleep . In the next two steps, 11 2 3 1 edifice of ideas of logistic networks. p ¼ resolver þ sleep reserves the next posi- 12 4 i i2½5nf4g tion for a followed by p ¼ move þ sleep which 3 13 3 i i2½2 Acknowledgments We are grateful to the anonymous reviewers for moves it to the reserved position. In the last step, and their valuable comments on former versions of this paper. because the last active AGV a arrives at its target p ¼ arrive þ sleep , the swarm reaches its goal. Open Access This article is distributed under the terms of the 14 3 i i2½2 Creative Commons Attribution 4.0 International License (http://crea tivecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give 5 Conclusion appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. In this paper, we have proposed to model dynamic logistic networks with decentralized processing and control by means of graph-transformational swarms. The members of References such a swarm act and interact in a common environment graph. It is a rule-based approach, the semantics of which is 1. Abdenebaoui L, Kreowski H-J, Kuske S (2013) Graph-transfor- based on massive parallelism according to local control mational swarms. In: Bensch S, Drewes F, Freund R, Otto F (eds) conditions of the members and a global cooperation con- Fifth workshop on non-classical models for automata and appli- dition of the swarm as a whole. As we have discussed cations-NCMA 2013, Umea, August 13–August 14, Proceedings. Osterreichische Computer Gesellschaft, pp 35–50 above, this corresponds to dynamic logistic networks with 2. Blum C, Merkle D (eds) (2008) Swarm intelligence: introduction their logistic hubs and their processes which run simulta- and applications. Natural computing series. Springer, New York neously and autonomously with a proper way of coordi- 3. Bonabeau E, Dorigo M, Theraulaz G (1999) Swarm intelligence: from natural to artificial systems. Oxford University Press, nation. We have sketched how automated guided vehicles Oxford and their routing can be modeled by a graph-transforma- 4. Camazine S, Franks NR, Sneyd J, Bonabeau E, Deneubourg J-L, tional swarm as an illustrative example. In this example, Theraula G (2001) Self-organization in biological systems. we have demonstrated the capability of the approach Princeton University Press, Princeton 5. Couzin ID, Krause J (2003) Self-organization and collective regarding visualization in the design level as well as the behavior in vertebrates, volume 32 of advances in the study of computation level. Furthermore, we have provided two behavior. Academic Press, Cambridge theorems using the advantage of the formal semantics of 6. Deneubourg JL, Aron S, Goss S, Pasteels JM (1990) The self- graph-transformational swarms. In order to shed more light organizing exploratory pattern of the argentine ant. J Insect Behav 3(2):159–168 on the significance of the approach, we will study the 7. Dijkstra EW (1959) A note on two problems in connection with following topics in future research. graphs. Numer Math 1(5):269–271 8. Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of 1. More case studies are needed including real applica- algebraic graph transformation (monographs in theoretical com- tions. This would allow one to test the implementation puter science. An EATCS series). Springer, Berlin of a logistic network against a formal specification by 9. Engelbrecht A P (2006) Fundamentals of computational swarm means of graph-transformational swarms rather than intelligence. Wiley, New York 123 Logist. Res. (2016) 9:20 Page 13 of 13 20 10. Geiß R, Kroll M (2008) GrGen.NET: a fast, expressive, and 20. Rozenberg G (ed) (1997) Handbook of graph grammars and general purpose graph rewrite tool. In: Schu¨rr A, Nagl M, Zu¨n- computing by graph transformation. Foundations, vol 1. World dorf A (eds) Proceedings of 3rd international symposium on Scientific, Singapore applications of graph transformation with industrial relevance 21. Schwarz C, Sauer J (2012) Towards decentralised agv control (AGTIVE ’07), volume 5088 of Lecture notes in computer sci- with negotiations. In: Kersting K, Toussaint M (eds) Proceedings ence, pp 568–569 of the sixth starting AI researchers symphosium, volume 241 of 11. Hu¨lsmann M, Scholz-Reiter B, Windt K (2011) Autonomous frontiers in artificial intelligence and applications. IOS Press cooperation and control in logistics. Springer, Berlin 22. Smolic-Rocak N, Bogdan S, Kovacic Z, Petrovic T (2010) Time 12. Kennedy J, Eberhart RC (2001) Swarm intelligence. Evolutionary windows based dynamic routing in multi-AGV systems. IEEE computation series. Morgan Kaufman, San Francisco Trans Autom Sci Eng 7(1):151–155 13. Kreowski H-J (1977) Manipulationen von Graphmanipulationen. 23. Taentzer G (2000) Agg: a tool environment for algebraic graph Ph.D. thesis, Technische Universita¨t Berlin transformation. In: in AGTIVE, ser. Lecture notes in computer 14. Kreowski H-J, Klempien-Hinrichs R, Kuske S (2006) Some science. Springer, pp 481–488 essentials of graph transformation. In: Esik Z, Martı´n-Vide C, 24. Taghaboni-dutta F, Tanchoco JMA (1995) Comparison of Mitrana V (eds) Recent advances in formal languages and dynamic routeing techniques for automated guided vehicle sys- applications, vol 25., Studies in computational intelli- tem. Int J Prod Res 33(10):2653–2669 genceSpringer, Berlin, pp 229–254 25. Ter Mors A, Witteveen C, Zutt J, Kuipers FA (2010) Context- 15. Kreowski H-J, Kuske S, Rozenberg G (2008) Graph transfor- aware route planning. In: Dix J, Witteveen C (eds) Multiagent mation units—an overview. In: Degano P, Nicola RD, Meseguer system technologies, 8th German conference, MATES 2010, J (eds) Concurrency, graphs and models, essays dedicated to Ugo Leipzig, Germany, volume 6251 of Lecture notes in computer Montanari on the occasion of his 65th birthday, volume 5065 of science. Springer, pp 138–149 Lecture notes in computer science (LNCS). Springer, New York, 26. Vis IF (2006) Survey of research in the design and control of pp 57–75 automated guided vehicle systems. Eur J Oper Res 16. Kreowski H-J, Kuske S, Rozenberg G (2008) Graph transfor- 170(3):677–709 mation units—an overview. In: Degano P, Nicola RD, Meseguer 27. Weyns D, Holvoet T, Schelfthout K, Wielemans J (2008) J (eds) Concurrency, graphs and models. Springer, New York Decentralized control of automatic guided vehicles: applying 17. Le-Anh T, Koster MD (2006) A review of design and control of multi-agent systems in practice. In: Companion to the 23rd ACM automated guided vehicle systems. Eur J Oper Res 171(1):1–23 SIGPLAN conference on object-oriented programming systems 18. Olariu S, Zomaya AY (2005) Handbook of bioinspired algo- languages and applications, OOPSLA Companion ’08, New rithms and applications. Chapman & Hall/CRC, Boca Raton York, ACM, pp 663–674 19. Partridge BL (1982) The structure and function of fish schools. Sci Am 246:114–123 http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png Logistics Research Springer Journals

Modeling of decentralized processes in dynamic logistic networks by means of graph-transformational swarms

Loading next page...
 
/lp/springer-journals/modeling-of-decentralized-processes-in-dynamic-logistic-networks-by-vvetIYRBB5
Publisher
Springer Journals
Copyright
Copyright © 2016 by The Author(s)
Subject
Engineering; Engineering Economics, Organization, Logistics, Marketing; Logistics; Industrial and Production Engineering; Simulation and Modeling; Operation Research/Decision Theory
ISSN
1865-035X
eISSN
1865-0368
DOI
10.1007/s12159-016-0147-6
Publisher site
See Article on Publisher Site

Abstract

Logist. Res. (2016) 9:20 DOI 10.1007/s12159-016-0147-6 ORIGINAL PAPER Modeling of decentralized processes in dynamic logistic networks by means of graph-transformational swarms 1 1 Larbi Abdenebaoui Hans-Jo ¨ rg Kreowski Received: 16 December 2015 / Accepted: 10 August 2016 / Published online: 31 August 2016 The Author(s) 2016. This article is published with open access at Springerlink.com Abstract In this paper, we propose to employ the frame- 1 Introduction work of graph-transformational swarms for the modeling of dynamic logistic networks with decentralized processing As logistic networks get larger and larger and more and and control. The members of a graph-transformational more complex, they become more difficult to handle and to swarm act and interact in a common environment graph control. The traditional central control does not work with massive parallelism of rule-based activities according flexibly and efficiently enough in any case so that one must to local control conditions and a global cooperation con- look for alternative approaches. This applies particularly if dition. This corresponds directly to the logistic hubs and the logistic network may change dynamically. One of the their processes in a logistic network where the processes most significant current paradigms that faces this com- run simultaneously and autonomously with a proper way of plexity is the so-called autonomous control approach (cf. coordination. This covers also dynamic changes on the [11]). This approach proposes that each logistic object such network structures as the members of a swarm can change as a container or an automated guided vehicle receives its the environment anyhow. The approach is illustrated by the own computing processor and makes its decision autono- modeling of automated guided vehicles. mously. Therefore, the components can react locally and quickly to changes in the environment. However, a major Keywords Dynamic logistic networks  Decentralized challenge within this kind of decentralized approach is how control  Automated guided vehicles  Graph- the individuals act and cooperate with each other to reach a transformational swarms  Swarm computation  Graph desired global goal. In this paper, we introduce and discuss transformation graph-transformational swarms as a formal modeling approach to dynamic logistic networks with decentralized control. As an illustrative example, we consider and dis- cuss the routing problem of automated guided vehicles. The concept of graph-transformational swarms combi- nes the ideas of swarm computing and the methods of graph transformation. The basic framework is introduced in [1], where a simple ant colony, cellular automata, and discrete particle systems are modeled to demonstrate the This article is part of a focus collection on ‘‘Dynamics in Logistics: usefulness and flexibility of the approach. A graph-trans- Digital Technologies and Related Management Methods.’’ formational swarm consists of members that act and & Larbi Abdenebaoui interact simultaneously in an environment, which is rep- larbi@informatik.uni-bremen.de resented by a graph. The members are all of the same kind Hans-Jorg Kreowski or of different kinds. Kinds and members are modeled as kreo@informatik.uni-bremen.de graph-transformational units (see, e.g.,[15]); each unit consists of a set of graph-transformational rules specifying University of Bremen, P.O. Box 330440, 28334 Bremen, Germany 123 20 Page 2 of 13 Logist. Res. (2016) 9:20 the capability of members and a control condition which and form are also not changed by the rules. K can be regulates the application of rules. identified in this way as the identical parts of L and R. This paper is organized as follows. In Sect. 2, graph- In order to permit more flexibility in modeling, we transformational swarms are recalled starting with the basic consider in this paper rules with negative application concepts of graph transformation. Section 3 discusses how conditions. This extends the notion of rules permitting to graph-transformational swarms can be used to model express what should not be present in a graph in order to dynamic logistic networks. To illustrate this, essential apply a given rule. A rule with negative application con- aspects of the routing problem of automated guided vehi- dition r ¼ðN; L; K; RÞ consists of four components such cles are modeled as graph-transformational swarms in that (L, K, R) is a rule and N is the associated negative Sect. 4. Section 5 concludes the paper. application condition composed from a finite set of graphs N ¼fC ; ...; C g called each a negative context such that 1 k L  C for i 2½k. Every negative context specifies a neg- 2 Graph-transformational swarms ative part C  L which consists of the items of C that do i i not belong to L. This section recalls the concept of graph-transformational We depict a rule r ¼ðN; L; K; RÞ with N ¼fC ; ...; C g 1 k swarms as introduced in [1] starting with the basic com- as N ! R where N is represented as a graph with sub- ponents of the chosen graph-transformational approach as graph L and extra information such that the negative con- far as needed in this paper (for more details, see, e.g., texts are identified. In this representation, the dashed items [8, 14, 16, 20]). of N belong to the negative parts, the remainder is L. In one case in Fig. 8, the negative part contains two edges which 2.1 Basic concepts of graph transformation are enclosed by a dotted line. In all other cases, the nega- tive part contains a single edge. In this way, all negative 2.1.1 Graphs and rules contexts are easily recognized Figure 1 shows the rule move which is used in a mod- A (directed edge-labeled) graph G ¼ðV ; E; s; t; lÞ consists ified form in Sect. 4 to model the movement of an auto- of a set V of nodes, a set E of edges such that every edge is mated guided vehicle with the name a having the target T directed and labeled, i.e., s : E ! V and t : E ! V are which is represented by an edge labeled by a, T. The mappings assigning a source s(e) and a target t(e) to each (T, d)-edge indicates the direction in which the target T can e 2 E and l : E ! R is a labeling function for some be reached in the distance d. In this rule, there are two labeling alphabet R. If the target is equal to the source, then negative contexts. The first one is specified by the negative 00 00 the edge is called a loop. In the following, we call a node part consisting of the dashed edge labeled by a ; T and its an i-node if it has an i-loop for i 2 R. The components V, source node. It means that the vehicle a can move into the E, s, t, and l of G are also denoted by V , E , s , t , and l , new position only if there is no other (concurrent) vehicle G G G G G respectively. that can occupy the same next position. The second neg- Given two graphs G ¼ðV ; E; s; t; lÞ and ative context is specified by the negative part that consists 0 0 0 0 0 0 0 H ¼ðV ; E ; s ; t ; l Þ,a graph morphism g : G ! H is given of the dashed edge labeled by a ; T requiring that the 0 0 by two mappings g : V ! V and g : E ! E such that vehicle a can move into the new position only if there is no V E 0 0 0 s ðg ðeÞÞ ¼ g ðsðeÞÞ, t ðg ðeÞÞ ¼ g ðtðeÞÞ and l ðg ðeÞÞ ¼ other vehicle present there. The gluing graph consists of E V E V E lðeÞ for all e 2 E. The image gðGÞ¼ the three nodes and the edge labeled by T, d. 00 00 00 00 00 00 ðg ðVÞ; g ðEÞ; s ; t ; l Þ where s ,t and l are restrictions The application of a rule r ¼ðL; K; RÞ to a graph G V E 0 0 0 of s , t and l to the subsets g ðEÞ and g ðVÞ is called a replaces a match of L in G by R such that the match of K is E V match of G in H.If g and g are inclusions, G is called a kept. More explicitly, let g : L ! G be the graph morphism E V subgraph of H, denoted by G  H. In particular, a match of yielding the match g(L). Then, the resulting graph H is G in H is a subgraph. It should be noted that the graph obtained by removing gðLÞ gðKÞ from G and adding morphisms yielding matches are not assumed to be R  K. All edges keep theirs sources, targets, and labels injective. with the exception of edges in R  K with sources or A rule r ¼ðL; K; RÞ consists of three graphs, the left- hand side L, the gluing graph K, and the right-hand side R such that L  K  R. In this paper, we consider rules that manipulate only edges (i.e., the nodes are neither deleted nor added). And when depicted, the gluing graph is omitted using the same relative positions of nodes in L and R. The edges in L and R that have the same sources, targets, labels, Fig. 1 A graph-transformational rule 123 Logist. Res. (2016) 9:20 Page 3 of 13 20 targets in K.If e 2 E  E with s ðeÞ2 V (or of matches of their component rules. As we use parallel R K R K t ðeÞ2 V ), then s ðeÞ¼ g ðs ðeÞÞ (or t ðeÞ¼ g ðt ðeÞÞ rules only in this way, there is no need to carry the negative R K H V R H V R resp.). application conditions over to the level of parallel rules. A rule with negative condition (N, L, K, R) with N ¼ Negative application conditions are only checked for fC ; ...; C g is applied in the same way as (L, K, R) pro- component rules. 1 k vided that, for i 2½k, the match of L cannot be extended to Two direct derivations G ¼) H and G ¼) H of rules r 1 2 C . This means that a rule can only be applied if none of its i 0 and r are (parallel) independent if the corresponding negative contexts is around. matches intersect only in gluing items. Due to the paral- Hence, the application of the rule move moves forward lelization theorem in [13], we can use the following fact: A an (a, T)-edge (i.e., the target node becomes the source parallel rule p ¼ r can be applied to G if the rules r i i i¼1 node) provided that in the new position, there is no other for i ¼ 1; ...; n can be applied to G and the matches are 0 0 00 00 (a ; T )-edge. And there is no other ða ; T Þ-edge having pairwise independent. This allows the use of massive par- the same target node. allelism in the context of graph transformation based on A rule application is denoted by G ¼) H where H is the r local matches of component rules which are much easier to resulting graph and called a direct derivation from G to H. find than matches of parallel rules. As an example of a rule application, let us consider the graph G with the explicitly given subgraph in Fig. 2 (The 2.1.2 Control conditions and graph class expressions dots in the graph indicate that the graph G may actually contain more items than the depicted subgraph). There is A control condition C is defined over a finite set P of rules an (a, T)-edge meaning that the vehicle a has the target T. and specifies a set SEM(C) of derivations. Typical control Moreover, there are four edges ahead, but one is occupied conditions are regular expressions over P. The regular 0 0 by vehicle a and another one is not accompanied by a expressions have the form r for some rule r or e; e or eje (T, d)-edge so that target T is not reachable with minimal or e where e and e are regular expressions themselves. distance in this direction. Two options remain to complete The satisfaction of a control condition in the form of a a match of the left-hand-side of rule move that avoid the regular expression is defined as follows. A direct derivation negative context. One is chosen non-deterministically to applying r satisfies r. A derivation satisfies e; e if an initial derive the graph H where the vehicle a is moved forward section of the derivation satisfies e and the rest e . It sat- 0 0  n by one edge. Continuing in this way, the vehicle a will isfies eje if it satisfies e or e . It satisfies e if it satisfies e 0 ðnþ1Þ n reach its destination T eventually following always the for some n 2 N where e ¼ k and e ¼ e ; e.A directions with minimal distance. derivation of length 0 satisfies k. Alternatively to e , e!is A sequence G ¼ G ¼) G ¼)¼) G ¼ H is 0 1 m used. A derivation satisfies e! if it satisfies e , but not r r r 1 2 m ðnþ1Þ e , i.e., e is followed as long as possible. We use also called a derivation from G to H of length m. priority conditions of the form r \ r requiring that r can Given the rules r ¼ðN ; L ; K ; R Þ for i ¼ 1; ...; n, the i i i i i only be applied if r is not applicable. Moreover, control parallel rule p ¼ðL; K; RÞ is given by the disjoint unions n n conditions can be combined by logical operations of which of the components, i.e., L ¼] L ; K ¼] K ; R ¼ i i i¼1 i¼1 we use the conjunction and with the obvious meaning: ] R.If g : L ! G for i ¼ 1; ...; n are some graph i i i i¼1 0 0 C&C are satisfied if C and C are satisfied. The expression morphisms from L in some graph G, then this induces a 0 0 eje can be restricted by the priority condition e \ e which graph morphism g : L ! G defined, for all i ¼ 1; ...; n,by requires that e is applied only if e is not applicable. Other g ðvÞ¼ g ðvÞ for all v 2 V and g ðeÞ¼ g ðeÞ for all V i;V L E i;E examples of control conditions that are used in this paper e 2 E . Therefore, matches of parallel rules are composed Fig. 2 A rule application a ,T a ,T T, d T, d a, T ··· ··· =⇒ ··· ··· move T, d T, d T, d T, d a, T G H 123 20 Page 4 of 13 Logist. Res. (2016) 9:20 are the expression krk and [r]. krk requires that a maxi- of members ðmðkÞ Þ with each kind k 2 K with i i2½sðkÞ mum number of rule r be applied in parallel. [r] requires mðkÞ 2 RUðkÞ for each i 2½sðkÞ, c is a control condition that the rule r may be applied or not. called cooperation condition, and g is a graph class A graph class expression X specifies a set of graphs expression specifying the goal. denoted by SEMðXÞ. We use the graph class expressions A swarm may be represented schematically displaying distance and idloopedðdistanceÞ. The set SEMðdistanceÞ the components initial, kinds, size, members, cooperation, contains all graphs without loops and without parallel and goal followed by their respective values. edges (i.e., loop-free and simple graphs) where each edge is labeled with a distance (i.e., a value d 2 N). The set Definition 2 (swarm computation)A swarm computation SEMðidloopedðdistanceÞÞ contains all graphs that are is a derivation G ¼) G ¼)¼) G such that 0 1 q p p p 1 2 q obtained from the graphs in SEM(distance) as follows: The P P G 2 SEMðIÞ, p ¼ r with a rule r of 0 j j j k2K i2½sðkÞ ki ki nodes are numbered from 1 to the number of nodes, and mðkÞ for each j 2½q, k 2 K and i 2½sðkÞ, and c and the every node gets a loop labeled with its number. These control conditions of all members are satisfied. The com- graphs are called id-looped distance graphs. While the putation is successful if G 2 SEMðgÞ. underlying distance graphs provide the significant infor- mation, the id-loops are added for technical reasons That all members must provide a rule to a computational because they allow a direct access to nodes via rule step is a strong requirement because graph-transforma- applications. tional rules may not be applicable. In particular, if no rule of a swarm member is applicable to some environment, no 2.1.3 Graph-transformational units further computational step would be possible and the inability of a single member stops the whole swarm. To A graph-transformational unit is a pair gtu ¼ðP; CÞ where avoid this global effect of a local situation, we assume that P is a set of rules and C is a control condition over P. The each member has the empty rule ð;; ;; ;; ;Þ in addition to semantics of gtu consists of all derivations of the rules in P its other rules. The empty rule gets the lowest priority and allowed by C. A unit gtu is related to a unit gtu if gtu is 0 0 is only applied if no other rule of the member can be obtained from gtu by renaming identifiers and relabeling applied or is allowed by the control condition of the edges. The set of units related to gtu is denoted by member or the cooperation condition of the swarm. In this RUðgtuÞ. way, each member can always act and is no longer able to terminate the computation of the swarm. In this context, the 2.2 Graph-transformational swarms empty rule is called sleeping rule. It can always be applied, is always parallel independent with each other rule appli- A graph-transformational swarm consists of members of cation, but does not produce any effect. Hence, there is no the same kind or of different kinds. All members act difference between the application of the empty rule and no simultaneously in a common environment represented by a application within a parallel step. graph. The number of members of each kind is given by the size of the kind. While a kind is a graph-transformational unit, the members of this kind are modeled as units related 3 From swarms in nature to logistic networks to the kind so that all members of same kind are alike. as graph-transformational swarms A swarm computation starts with an initial environment. It consists of iterated rule applications requiring massive In this section, we argue that graph-transformational parallelism meaning that each member of the swarm swarms as introduced in the previous section are appro- applies one of its rules in every step. The choice of rules priate means to model dynamic logistic networks. Several depends on their applicability and the control conditions of approaches to swarm computation including graph-trans- the members as well as on a cooperation condition. formational swarms mimic swarms in nature as pointed Moreover, a swarm may have a goal given by a graph class out in Sect. 3.1 in more detail. The interesting aspect is that expression. A computation is considered to be successful if already swarms in nature solve problems closely related to an environment is reached that meets the goal. logistics. Moreover and more interesting in the context of this paper, a closer look the other way round at dynamic Definition 1 (swarm)A swarm is a system S ¼ logistic networks in Sect. 3.2 reveals that they can be ðI; K; s; m; c; gÞ where I is a graph class expression speci- considered as graph-transformational swarms. fying the set of initial environments, K is a finite set of graph-transformational units, called kinds, s associates a size sðkÞ2 N with each kind k 2 K, m associates a family ½n¼f1; .. .; ng. 123 Logist. Res. (2016) 9:20 Page 5 of 13 20 3.1 Relating swarms in nature with logistics Table 1 Correspondence between dynamic logistic networks and graph-transformational swarms The proposed framework is inspired by the swarm behavior Dynamic logistic network Graph-transformational in nature which describes the group behavior of social swarm animals. Several studies agree on the assumption that the Underlying structure Environment graph swarm behavior results from relatively simple rules on the Types of logistic entities Kinds individual level (see, e.g., [4–6, 19]). In biology, the Logistic entities Members underlying mechanism is also known as self-organization: Possible actions Rules The individuals in the group interact locally with other Autonomous control Control conditions group members and have no knowledge of the global Start structures Initial environments behavior of the entire group. Furthermore, all members Coordination Cooperation conditions play the same role without any hierarchical structure [4]. Tasks Goals Using swarm behavior, social animals solve continu- Simultaneous and decentralized Massively parallel rule ously complex problems. For instance, ant colonies as well processing application as bee hives build nests and manage the resources inside it. Furthermore, they forage for food, transporting it in an efficient and flexible way. Schools of fishes and flocks of changing. One needs appropriate modeling methods like birds travel over long distances. Obviously, such phenom- those provided by graph-transformational swarms. ena have logistic aspects. Therefore, it is somewhat evident The underlying structures of dynamic logistic networks that the behavior of swarms in nature inspires to introduce are defined as graphs so that they correspond directly to concepts of artificial swarms and swarm computation that environment graphs of graph-transformational swarms are based on the idea of self-organization to solve logistic where the initial environments play the role of the start problems. One encounters some approaches to swarm structures. The various types of logistic entities like hubs, computation in the literature (see, e.g., [2, 3, 9, 12, 18]) sites, carriers, and containers together with the actions that where logistic problems are solved as typical examples like are performed on them or affect them can be seen as kinds the shortest path problem, the traveling-salespersons prob- so that the entities themselves are the swarm members. In lem and others. One may summarize that the passage from particular, the possible process actions correspond to the swarms to logistics is not very long. rules, and the autonomous control is reflected by the con- trol conditions. Finally, the coordination of the processes 3.2 Dynamic logistic networks as graph- running on the logistic networks is embodied by the transformational swarms cooperation conditions and the overall tasks by the goals. Summarized in Table 1, there is a very close relationship On the other hand, consider dynamic logistic networks. between the main features of dynamic logistic networks Their underlying structures consist of nodes and connecting and the syntactic components of graph-transformational edges. The nodes represent logistic hubs of different types swarms. Moreover and most interestingly, the idea of such as production sites, storage facilities, and car pools autonomous processes that run simultaneously and decen- or—on a more detailed level—packages, containers, cars, tralized in a logistic network is well reflected on the and trucks, and the edges represent transport lines or semantic level of graph-transformational swarms as all the information channels or the like. Without loss of general- members act always in parallel. ity, one can assume that there is always some start struc- ture. To manage the material and information flows in a 3.3 The potentials of the approach logistic network, various logistic processes are running. If the network is large and widely distributed, then it may not We propose in this paper to model dynamic logistic net- be meaningful to control the processes centrally. Alterna- works by means of graph-transformational swarms. In the tively, the logistic processes in the network may run previous subsection, one can see that the notion of such simultaneously and independently of each other each per- swarms covers all the main features one expects and finds forming its own actions and following its own autonomous in dynamic logistic networks. Nevertheless, one may control. But such a decentralized control requires coordi- wonder which particular potentials and advantages this nation and cooperation whenever material or information approach provides: must be exchanged carrying out the overall tasks. To 1. The concept of graph-transformational swarms offers a coordinate autonomous logistic processes in a network in formal framework with a precise mathematical seman- such a way that the cooperation works properly, becomes tics based on massive parallelism of rule applications. even more difficult if the network structure is dynamically 123 20 Page 6 of 13 Logist. Res. (2016) 9:20 2. As the environments are graphs and the processing is guided vehicles are driverless transportation engines that modeled by graph-transformational rules specified by follow traditionally guide paths like lines on the ground. four graphs each, the approach provides a fundament Their use is expanding rapidly in the last decades. Beside for visualization so that it can be considered as a visual the classical application in small manufacturing systems, modeling approach. nowadays, the tendency is to use AGVs more and more for 3. In fact, graph-transformational swarms can be executed transport in highly complex systems including external on graph-transformational engines like GrGen.NET areas like container terminals (for a general overview, see, (see [10]) or AGG (see [23]) so that visual simulation is e.g., [17, 26]). One of the important problems that a possible for illustrations, tests, and experiments of designer of an AGV system faces in complex areas is the various kinds. In the next section for example, we use collision-free routing problem. The classical way to solve illustrations in Figs. 5 and 9 generated from GrGen.- this problem is the central time windows planning (see, NET. They visualize the computational steps in a e.g., [22, 24, 25]). However, the tendency in the last years simple environment in order to make it easier for a is to explore more decentralized approaches (e.g., [21, 27]). reader to understand how the developed swarm In the same vein, this section proposes a decentralized behaves. Moreover, the implementation in GrGen.NET solution using the notion of graph-transformational allows us a visual testing using different graphs. swarms. 4. The formal semantics is based on derivations which are sequences of rule applications. Therefore, a proof 4.1 The routing swarm technique is provided by induction on the lengths of derivations. We model the infrastructure where the AGVs operate as an 5. If one fixes the initial environment and bounds the idlooped distance graph. In a graphical representation, lengths of derivations, then the behavior of graph- the nodes correspond to the ends or intersections of paths transformational swarms can be translated into formu- including important stations like pickup and delivery las of the propositional calculus so that SAT-solvers locations. The edges represent the paths or segments of can be employed for automatic proving of properties, paths in the infrastructure depending on their lengths. The as far as they are expressible in propositional calculus. distance of an edge can correspond to the distance of the A typical correctness property one would like to prove corresponding path or to some cost of traversing it. in this way is: Will the goal be reached? Another We propose a solution based on two stages. The first one property of interest that can be proved in this way is consists of the preparation of the layout in a such way that deadlock freeness. the AGVs follow later only local information. The second 6. The approach is very flexible and generic because all one consists of the navigation process of the AGVs the modeling concepts can be chosen from a variety of depending on an arbitrary task assignment. possibilities. This applies to the kind of graphs which The parameter m is the number of AGVs and can be may be directed or undirected, labeled or unlabeled, chosen freely. The swarm has four kinds: preparator, re- connected, simple, etc. It applies similarly to the kind of solver, assigner, and navigator. Their sizes are n,n, m, and rules, of control conditions and of graph class expres- m, respectively, where n is the number of nodes in the sions. The actual choice may depend on the application underlying graph G 2 SEMðidloopedðdistanceÞÞ. The at hand or the taste of the network designers. members are obtained by relabeling in such a way that 7. Graph-transformational swarms do not need extra every node in the graph gets assigned two members, one of features to make logistic networks dynamic, i.e., to kind preparator and the other of kind resolver, and simi- allow the modeling of dynamic changes in the larly, every AGV gets assigned a member of kind assigner underlying structure. The members of the swarm and a member of kind navigator. How relabeling is perform their tasks by applying rules to the environ- achieved is described below in the detailed introduction of ment graph. This includes the possibility of members the kinds. Syntactically, the cooperation condition is a to change the environment structurally. regular expression as introduced in Sect. 2.1.2, but for kinds instead of rules. Semantically, the used cooperation condition requires that preparator is applied realizing the 4 Routing of AGVs by a graph-transformational layout preparation followed by an arbitrary repetition of swarm assignments each followed by an arbitrary number of conflict resolving and navigation steps. The application of a In this section, we propose a solution to the routing prob- kind means that all members of this kind act in parallel lem of the automated guided vehicles (AGVs) using the according to theirs’ own control conditions while all other notion of graph-transformational swarms. Automated members ‘‘sleep’’, i.e., they apply their sleeping rule by 123 Logist. Res. (2016) 9:20 Page 7 of 13 20 routing(m) an indicator to T with the distance D using the successor s, initial: id-looped(distance) where s is the target of e (i.e., s ¼ tðeÞ). If D is minimal kinds : preparator,resolver,assigner,navigator considering simple paths up to the maximal lengths l,we size : n =#nodes,n,m,m say that the indicator is l-minimal. If D is minimal con- members: preparator for i ∈ [n] resolver for j ∈ [n] j sidering all possible paths, then the indicator is optimal. A assigner for k ∈ [m] path composed from indicators to a target T is called an navigator for l ∈ [m] ∗ ∗ indicator path to T. If every node in the graph has only coop: preparator;(assigner;(resolver; navigator) ) goal: all vehicles arrived optimal indicators to every reachable node, then the graph is called fully indicated. Fig. 3 Schematic representation of the graph-transformational swarm The members of kind preparator realize the layout routing preparation process. The kind preparator specified in Fig. 4 default. The goal is that all AGVs reach their assigned initializes this process with rule init. It adds an indicator in an X-node to a direct successor s provided that such indi- targets. The swarm is schematically presented in Fig. 3. As mentioned before, we have implemented the swarm cator does not yet exist. The rule connect connects an X- routing in the graph-transformational tool GrGen.NET. node with an existing indicator path to T. It is applied if a The resulting computation steps of an experiment with an direct successor s of X exists having an indicator to T with a environment composed from a very small graph, and three distance D provided that there is no other direct successor AGVs are used in this section to accompany the explana- of X having the same target T with a distance D such that tion of the behavior of the swarm routing. Fig. 5 summa- D \ D þ d. The rule connect generates an indicator to T 2 1 with the new distance D þd using the successor s.If an X- rizes the layout preparation process, and Fig. 9 illustrates the remainder of the computation which consists of the node has two indicators to a target T with different dis- tances, the rule select deletes the one with the larger dis- assignment and the conflict-free navigation of the AGVs. tance selecting in this way the best one to be kept. The 4.2 Layout preparation control condition requires that the rule init is applied with maximum parallelism. Afterward, the rule connect is The layout preparation equips the underlying graph with applied followed by select both with maximum parallelism. additional edges in such a way that every node in the graph Because of the negative application condition of init, init is can indicate to an AGV having the target T which next applied only once for a given successor node in the whole node can be visited to reach T with the minimal distance swarm computation while connect and select are iterated as possible. Given an i-node, we code such an indicator as an long as possible according to the control condition of outgoing edge e labeled with a pair T, D. We say that i has preparator. Fig. 4 Unit preparator 123 20 Page 8 of 13 Logist. Res. (2016) 9:20 Fig. 5 A sample computation of the swarm routing illustrating the layout preparation process p p 1 2 In the swarm, there are n members of kind preparator. and 1 that are not 2-minimal (p deletes the indicator in 2 to The member preparator for i 2½n is obtained from 1 with distance 3 keeping the minimal indicator to 1 with preparator by relabeling all occurring X with i. distance 2). Note that a node can have more than one Then i becomes a fixed label in preparator . The role of minimal indicator to the same target (in the example, the the other labels must be explained now: They are place- node 3 gets two indicators to 1 with the same distance 4). holders for all possible values so that the rules are rather By induction, one can prove that in 2L  1 steps, all L- rule schemata that must be instantiated before they are minimal indicators are constructed. If the longest path with applied. A control condition like ||init|| means accordingly a minimal distance is constructed, then the preparator- that the maximum number of the instantiations of the rule members cannot apply any rule anymore (except the init must be applied in parallel. This mechanism that keeps sleeping rule). And the constructed indicators are optimal. the representation of rule sets small is used in all our Because the length of such a path is shorter or equal n  1, examples of transformation units. the number of steps is bounded by 2n  3. Summarizing, In the following, we describe how the members work the following correctness result holds: together using the computation in Fig. 5 as illustrating Theorem 1 Given an id-looped distance graph G, the example. In the first step, all members apply the rule init in swarm routing transforms it by the initial preparation parallel generating in every node indicators to all successor phase in a fully indicated graph in a number of steps nodes (see the result of the derivation p in the example). In bounded by 2n  3 where n is the number of nodes in G. the second step, the parallel application of the rule connect in parallel connects all nodes to construct indicator paths of Note that the layout preparation process can be con- length 2. It connects also those that are already connected sidered as a distributed version of the Dijkstra’s shortest to indicator path of length 1 if the new distance is smaller, path algorithm (cf. [7]). then the old one (in the example, p adds indicators in the The behavior of the swarm in the layout preparation nodes 2 and 3). In the third step, all members apply select stage can also be interpreted as follows. In the first step, a in parallel deleting all indicators using path of lengths 2 change in the environment is introduced using the rules 123 Logist. Res. (2016) 9:20 Page 9 of 13 20 init. The swarm reacts by propagating backwards this with a higher priority ðp [ pÞ, and can visit too the information over all nodes combining the rules connect and position hX; si ( see the edge ðT ; d Þ in the rule). This 1 1 select of all members of kind preparator. In more sophis- negative context with two edges is bordered by a dotted ticated versions of the underlying swarm, one can consider line to indicate that the two parts should be satisfied that additional changes can occur in the environment like together. (2) The position hX; si is free: There is no other suppression of indicator edges. This can simulate for outgoing AGV-edge labeled by a ; T ; p parallel to the 2 2 2 example a traffic congestion. Such a change can be also (T, d)-edge. (3) There is no reservation a for any other handled in the same way by propagating the information vehicle in the next position hX; si. (4) The AGV a has not backward to all concerned members. For illustration pur- yet a reservation: There is no outgoing edge labeled by poses, we keep the preparation process simple and show in a. The rule reserve adds an outgoing edge labeled by the next subsection how the automated guided vehicles can a parallel to the (T, d)-edge which indicates that the use the generated information to navigate conflict-free to underlying position is reserved for the AGV a. The rule their assigned targets. reserve may be applicable for two AGVs with the same priority both claiming the same next possible position 4.3 Assignment, conflicts resolving, and navigation hX; si. But the control condition requires that the rule is applied sequentially as long as possible so that only one of The kinds assigner and navigator model the task assign- the potential reservations is chosen non-deterministically. ment and navigation process from the point of view of the The member resolver for j 2½n is derived from resolver AGVs. However, the task assignment has the most simple by relabeling all occurring X with j. This means in par- form serving solely the simulation purposes of the com- ticular that reservations are done sequentially at the node putational steps. The kind resolver models the conflict with the j-loop, but in parallel for different nodes. resolving from the point of view of a node where multiple The kind navigator, which is specified in Fig. 8, con- AGVs have it as next destination and would like to visit the tains three rules wait, move, and arrive. The rule wait same next position which is determined by a direct suc- increments the priority p with 1. The rule move is cessor of the underlying node. responsible of the forward movement of the AGV until the In the following, we encode an AGV as an AGV-edge target is reached. It moves forward the AGV a with the labeled by a, T, p where a is the name of the AGV, T 2½n target T following an a-edge (which is added by a resolver corresponds to its assigned target and p 2 N is its current member). If the target node is reached, the rule arrive can priority. We call therefore a vector of nodes hn ; n i, such 1 2 be applied. The rule arrive deletes the AGV-edge signaling that an indicator (T, d) from n to n exists, an AGV 1 2 in this way to the task assigner that the AGV a is free for a position. We consider that AGVs with target T can occupy new assignment. The control condition requires that one of such position with the restriction that at most one AGV can the rules move, arrive,or wait is applied. Therefore, wait be present in a position in a given time. The priority is has the lowest priority. The member navigator for k 2½m needed to resolve conflicts if more than one AGV compete is obtained from navigator by relabeling all occurring for one position. a with a . The kind assigner, as specified in Fig. 6, has just a single After the layout preparation, only members of kind as- rule assign that creates a vehicle edge labeled with signer, resolver, and navigator are active. The assigner a, T, p between two arbitrary nodes provided that this members create an arbitrary number less or equal m of position leads to the target T and is free and that the vehicle AGV-edges in parallel. According to the parallelization edge is not yet present in the whole graph. Note that the theorem together with the fact that the T, d edges in the edges labeled by T, d in the rule assign have different rule assign do not belong to the gluing graph, the positions forms meaning that they do not belong to the gluing graph of the created AGVs are pairwise different ensuring a of the rule. The control condition [assign] requires that the conflict-free assignment. Afterward, all created AGV- rule may be applied or not so that not every vehicle must be edges act in parallel by moving forward or waiting present any time. The members assigner for j 2½m are j depending on the decision of the resolver members, which obtained from the kind assigner by relabeling all occurring a with a and the a by a for j 6¼ k. j k The kind resolver has a single rule reserve (see Fig. 7). It reserves for an incoming AGV-edge labeled by a, T, p a next possible position hX; si having an indicator T, d pro- vided that the following four negative contexts are all satisfied. (1) There is no other concurrent AGV (repre- sented in the rule by the incoming AGV-edge a ; T ; p ) 1 1 1 Fig. 6 Unit assigner 123 20 Page 10 of 13 Logist. Res. (2016) 9:20 Fig. 7 Unit resolver m ¼ 0, no car moves so that no collision can happen. Let now the computation have mþ1 assign-steps. Due to the induction hypothesis, the vehicles run collision-free for the first m assign-steps. The ðmþ1Þ-st assign-step adds some further AGVs, but only if none of these is already present and the edges where the vehicles are assigned are not occupied. All further steps are applications of the rule re- serve alternated with the applications of the rules wait, move, and arrive. A collision would only happen whenever two AGVs move onto the same edge at the same time. But such collision is impossible because the entered edge is reserved before by exactly one vehicle as discussed in Fig. 8 Unit navigator detail above in the explanations of the kinds. h are present in every node to check for and to resolve The swarm routing is designed to solve conflict-free conflicts. They reserve the next possible position of the situations where two or more concurrent AGVs want to AGVs based on their priorities. The AGVs with a reser- traverse the same node. However, it should be mentioned vation are moved forward setting their priorities to one, the that the presented swarm does not handle deadlocks caused others that arrive to their targets become their corre- from circular waits. The characterization, detection, and sponding edge deleted, all others have to wait incrementing avoidance of such situations should be treated in future their priorities by one. If the number of repetition is high work. enough, the swarm reaches its goal, otherwise the process Figure 9 illustrates the computations in the navigation starts again by assigning new tasks to inactive vehicles. process of three AGVs a ,a and a starting with the fully 1 2 3 The swarm repeats this process until the goal is reached. connected graph resulting from the preparation process in Especially, we have the following result. Fig. 5. In the first step in this stage, two AGVs are arbi- trarily chosen to get assignments and the reminder is kept Theorem 2 If the swarm routing reaches its goal, each inactive. a and a get assigned, respectively, the targets 1 1 3 AGV that has been assigned to a target reaches this target and 4 and the start positions h3; 1i and h3; 2i as a result of collision-free. the application of the rule p ¼ assign þ assign þ sleep 5 1 3 2 where the indices in the rules correspond to the indices of Proof Consider a computation G ¼) G of the swarm 0 n the members that apply them. After the assignment, the routing. According to the cooperation condition, an initial member resolver which resolves conflict in node 2 section G ¼) G for some i prepares the initial environ- 0 i reserves the next position for the AGV a through gener- ment G into a graph with the properties stated in Theo- ating an a -edge while all other members of kind resolver rem 1. And the tail G ¼) G is composed from sections of i n apply their sleeping rule, i.e., p ¼ reserve þ 6 2 sleep . The rule p ¼ arrive þ move þ sleep is i 7 1 3 2 the form G ¼) G ¼) G for i ¼ k \ \k ¼ n, i2½5nf2g k k þ1 k 1 m j j jþ1 applied making a available for other assignments because m 1 where, for j ¼ 1; ...; m, the first step is an assign- it has already arrived at its target and moving forward the step and the remainder repeats resolver-steps followed by vehicle a to its reserved position. The AGV a is still navigator-steps. For m ¼ 0, this is the empty sequence. 3 2 sleeping in this step. At this point, the repetition of Then, the theorem can be proved by induction on m. For 123 Logist. Res. (2016) 9:20 Page 11 of 13 20 p p 5 6 p p 9 8 Fig. 9 A sample computation of the swarm routing illustrating the navigation process 123 20 Page 12 of 13 Logist. Res. (2016) 9:20 resolving and navigation is finished allowing that the against informal or semiformal models or just against assignment starts again. p ¼ assigner þ sleep the intuition of the designers. 8 2 i i2½3nf2g 2. The use of tools must be made more comfortable. At assigns the target 1 and the start position h5; 4i to the AGV the moment, one must adapt each graph-transforma- a The other members of kind assigner sleep because the tional swarm separately by hand to simulate and a is not chosen to be assigned and a is already assigned. 1 3 visualize it on a graph-transformational engine or to In the next step, the rule p ¼ resolver þ sleep 9 4 i i2½5nf4g verify properties on a SAT-solver. By fixing the chooses a to move forward reserving the only possible syntactic features of swarm modeling, one can con- next edge for it. This step illustrates the behavior of a struct translators into the tools so that the tools run member resolver in a situation where concurrent AGVs automatically on swarms and simulate and verify having the same maximal priority and want to traverse the logistic networks in this way. assigned node. Namely one is chosen arbitrarily. Following 3. It may be meaningful to translate the modeling this decision, a moves forward and a waits augmenting 2 3 concepts of graph-transformational swarms into its priority by 1 as a result of the rule explicit modeling concepts of dynamic logistic net- p ¼ move þ wait þ sleep . The navigation rules yield 10 2 3 1 works. In this way, modelers of networks do not need that a applies its arrive rule and that a waits again 2 3 to make themselves familiar with the swarm ideas, and because the next position is occupied, that is, they could follow their intentions directly within the p ¼ arrive þ wait þ sleep . In the next two steps, 11 2 3 1 edifice of ideas of logistic networks. p ¼ resolver þ sleep reserves the next posi- 12 4 i i2½5nf4g tion for a followed by p ¼ move þ sleep which 3 13 3 i i2½2 Acknowledgments We are grateful to the anonymous reviewers for moves it to the reserved position. In the last step, and their valuable comments on former versions of this paper. because the last active AGV a arrives at its target p ¼ arrive þ sleep , the swarm reaches its goal. Open Access This article is distributed under the terms of the 14 3 i i2½2 Creative Commons Attribution 4.0 International License (http://crea tivecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give 5 Conclusion appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. In this paper, we have proposed to model dynamic logistic networks with decentralized processing and control by means of graph-transformational swarms. The members of References such a swarm act and interact in a common environment graph. It is a rule-based approach, the semantics of which is 1. Abdenebaoui L, Kreowski H-J, Kuske S (2013) Graph-transfor- based on massive parallelism according to local control mational swarms. In: Bensch S, Drewes F, Freund R, Otto F (eds) conditions of the members and a global cooperation con- Fifth workshop on non-classical models for automata and appli- dition of the swarm as a whole. As we have discussed cations-NCMA 2013, Umea, August 13–August 14, Proceedings. Osterreichische Computer Gesellschaft, pp 35–50 above, this corresponds to dynamic logistic networks with 2. Blum C, Merkle D (eds) (2008) Swarm intelligence: introduction their logistic hubs and their processes which run simulta- and applications. Natural computing series. Springer, New York neously and autonomously with a proper way of coordi- 3. Bonabeau E, Dorigo M, Theraulaz G (1999) Swarm intelligence: from natural to artificial systems. Oxford University Press, nation. We have sketched how automated guided vehicles Oxford and their routing can be modeled by a graph-transforma- 4. Camazine S, Franks NR, Sneyd J, Bonabeau E, Deneubourg J-L, tional swarm as an illustrative example. In this example, Theraula G (2001) Self-organization in biological systems. we have demonstrated the capability of the approach Princeton University Press, Princeton 5. Couzin ID, Krause J (2003) Self-organization and collective regarding visualization in the design level as well as the behavior in vertebrates, volume 32 of advances in the study of computation level. Furthermore, we have provided two behavior. Academic Press, Cambridge theorems using the advantage of the formal semantics of 6. Deneubourg JL, Aron S, Goss S, Pasteels JM (1990) The self- graph-transformational swarms. In order to shed more light organizing exploratory pattern of the argentine ant. J Insect Behav 3(2):159–168 on the significance of the approach, we will study the 7. Dijkstra EW (1959) A note on two problems in connection with following topics in future research. graphs. Numer Math 1(5):269–271 8. Ehrig H, Ehrig K, Prange U, Taentzer G (2006) Fundamentals of 1. More case studies are needed including real applica- algebraic graph transformation (monographs in theoretical com- tions. This would allow one to test the implementation puter science. An EATCS series). Springer, Berlin of a logistic network against a formal specification by 9. Engelbrecht A P (2006) Fundamentals of computational swarm means of graph-transformational swarms rather than intelligence. Wiley, New York 123 Logist. Res. (2016) 9:20 Page 13 of 13 20 10. Geiß R, Kroll M (2008) GrGen.NET: a fast, expressive, and 20. Rozenberg G (ed) (1997) Handbook of graph grammars and general purpose graph rewrite tool. In: Schu¨rr A, Nagl M, Zu¨n- computing by graph transformation. Foundations, vol 1. World dorf A (eds) Proceedings of 3rd international symposium on Scientific, Singapore applications of graph transformation with industrial relevance 21. Schwarz C, Sauer J (2012) Towards decentralised agv control (AGTIVE ’07), volume 5088 of Lecture notes in computer sci- with negotiations. In: Kersting K, Toussaint M (eds) Proceedings ence, pp 568–569 of the sixth starting AI researchers symphosium, volume 241 of 11. Hu¨lsmann M, Scholz-Reiter B, Windt K (2011) Autonomous frontiers in artificial intelligence and applications. IOS Press cooperation and control in logistics. Springer, Berlin 22. Smolic-Rocak N, Bogdan S, Kovacic Z, Petrovic T (2010) Time 12. Kennedy J, Eberhart RC (2001) Swarm intelligence. Evolutionary windows based dynamic routing in multi-AGV systems. IEEE computation series. Morgan Kaufman, San Francisco Trans Autom Sci Eng 7(1):151–155 13. Kreowski H-J (1977) Manipulationen von Graphmanipulationen. 23. Taentzer G (2000) Agg: a tool environment for algebraic graph Ph.D. thesis, Technische Universita¨t Berlin transformation. In: in AGTIVE, ser. Lecture notes in computer 14. Kreowski H-J, Klempien-Hinrichs R, Kuske S (2006) Some science. Springer, pp 481–488 essentials of graph transformation. In: Esik Z, Martı´n-Vide C, 24. Taghaboni-dutta F, Tanchoco JMA (1995) Comparison of Mitrana V (eds) Recent advances in formal languages and dynamic routeing techniques for automated guided vehicle sys- applications, vol 25., Studies in computational intelli- tem. Int J Prod Res 33(10):2653–2669 genceSpringer, Berlin, pp 229–254 25. Ter Mors A, Witteveen C, Zutt J, Kuipers FA (2010) Context- 15. Kreowski H-J, Kuske S, Rozenberg G (2008) Graph transfor- aware route planning. In: Dix J, Witteveen C (eds) Multiagent mation units—an overview. In: Degano P, Nicola RD, Meseguer system technologies, 8th German conference, MATES 2010, J (eds) Concurrency, graphs and models, essays dedicated to Ugo Leipzig, Germany, volume 6251 of Lecture notes in computer Montanari on the occasion of his 65th birthday, volume 5065 of science. Springer, pp 138–149 Lecture notes in computer science (LNCS). Springer, New York, 26. Vis IF (2006) Survey of research in the design and control of pp 57–75 automated guided vehicle systems. Eur J Oper Res 16. Kreowski H-J, Kuske S, Rozenberg G (2008) Graph transfor- 170(3):677–709 mation units—an overview. In: Degano P, Nicola RD, Meseguer 27. Weyns D, Holvoet T, Schelfthout K, Wielemans J (2008) J (eds) Concurrency, graphs and models. Springer, New York Decentralized control of automatic guided vehicles: applying 17. Le-Anh T, Koster MD (2006) A review of design and control of multi-agent systems in practice. In: Companion to the 23rd ACM automated guided vehicle systems. Eur J Oper Res 171(1):1–23 SIGPLAN conference on object-oriented programming systems 18. Olariu S, Zomaya AY (2005) Handbook of bioinspired algo- languages and applications, OOPSLA Companion ’08, New rithms and applications. Chapman & Hall/CRC, Boca Raton York, ACM, pp 663–674 19. Partridge BL (1982) The structure and function of fish schools. Sci Am 246:114–123

Journal

Logistics ResearchSpringer Journals

Published: Aug 31, 2016

References