SimRisk: An Integrated Open-Source Tool for Agent-Based ...

SimRisk: An Integrated Open-Source Tool for Agent-Based ... SimRisk: An Integrated Open-Source Tool for Agent-Based ...

users.tricity.wsu.edu
from users.tricity.wsu.edu More from this publisher
28.12.2014 Views

Server 1/Core 3 Server 2/Core 3 s a s b u a1 /d a1 w11 a w11 b u w12 a w11 b b1 /d b1 u a1 /d a1 u b1 /d b1 u a2 /d a2 u b2 /d b2 u a2 /d a2 u b2 /d b2 u a2 /d a2 u b2 /d b2 u a2 /d a2 u b2 /d b2 w a 21 w b 21 w a 22 w b 22 w a 23 w b 23 w a 24 w b 24 r 1 r 2 r 3 r 4 r 5 r 6 r 7 r 8 r 9 r 10 r 11 r 12 r 13 r 14 r 15 r 16 Server 1/Core 1 Server 1/Core 2 Server 2/Core 1 Server 2/Core 2 Figure 6: A distribution of threads for simulating the model in Figure 1.(b) on the cluster in Figure 5. 5.3 Specific aim 3: develop efficient formal stochastic analysis technique for supply chains Model checking [Clarke et al., 1986] is an automated verification technique in which the specification of a system is formally encoded in a temporal logic. Model checking provides a “push-button” approach to algorithmically verify a system on a temporal property and produce a mathematically sound proof for its finding. Temporal logics used in model checking allow precise formulation of subtle temporal properties. Model checking technology has been actively investigated and heavily invested in industry and academia. Over years new techniques such as Binary Decision Graphbased model checking [Burch et al., 1992] and SAT-based bounded model checking [Biere et al., 1999] have drastically improved the scalability of model checking technology. Today model checking has been successfully used for verifying industrial-size processor designs [Gerth, 2001] and software applications [Ball et al., 2004]. Recently probabilistic model checking gains momentum by the introduction of new symbolic techniques [Wang and Kwiatkowska, 2005]. It has been successfully used to analyze a wide range of applications such as biological processes [Kwiatkowska et al., 2008] and Randomised distributed algorithms [Kwiatkowska and Norman, 2002]. In this project we will develop a formal stochastic analysis technique derived from probabilistic model checking. Particularly we will focus on the following issues in applying probabilistic model checking to stochastic analysis of supply chains: 1. Pattern-based stochastic problem formulation. Problem formulation is the first step towards formal stochastic analysis of supply chains. Probabilistic model checking formulates stochastic properties in a probabilistic temporal logics. Using temporal logics requires some knowledge in formal methods and may pose a hurdle for the adoption of new model-checking-based analysis technique. To ease such difficulty, we propose a two-step process for problem formulation: we will provide patterns for practitioners in supply-chain management to define stochastic properties of interests in a language closer to their background, and we will develop an algorithm that can translate a pattern-based representation of stochastic property to one in a temporal logic. 12

2. Proof extraction and game-based result interpretation. Probabilistic model checking analyzes a system on a stochastic property by constructing a mathematical proof. Such proof carries rich information about the system with respect to the stochastic property. For instance, in context of supply-chain analysis, a proof can be used to understand analysis result and to debug a supply-chain design. Furthermore, probabilistic model checkers like PRISM [Hinton et al., 2006] answers the maximal (or minimal) probability in which a stochastic property may hold on a supply chain. A proof can be used to formulate an optimal solution that reaches such maximal (or minimal) probability. Current research on extracting proofs from probabilistic model checkers is still limited because of the complexity of these proofs. Existing work (cf. [Han et al., 2009]) emphasized on formats of proofs. More research is needed on how to extract these proofs from existing model checking algorithms and interpreting them to end users. In this project, we will study the problems of proof extraction and result interpretation in context of supply chain analysis. We will extend Tan and Cleaveland [2002]’s previous works on extracting proofs from a traditional model checker to the domain of probabilistic model checking. Previously Tan [2002] also developed a generic game-theoretic framework for interpreting proofs from various automated verification procedures. The framework worked by playing an interactive game with a user. By making decisions during the game, the user could choose part of the proof (s)he wanted to explore. Game-theoretic approach is especially suitable for explaining proofs with branching logics, including proofs from formal stochastic analysis of supply chains. Such proofs are (potentially infinite) decision trees extended with probabilities and rewards. In this project we will develop a game-theoretic approach that allows an end user to explore proofs constructed by a probabilistic model checker. 5.4 Specific aim 4: implement an open source tool for knowledge dissemination and technology transfer The purpose of this research is to enable modeling and automated stochastic analysis technology that are efficient and scalable for real-world large-scale supply chains. Besides the project’s proposed technological advances, the success of the project also largely depends on how effective we can disseminate knowledge and transfer technology to other researchers and practitioners. An opensource tool will be an excellent vehicle for this purpose: it allow practitioners to try out new technology and integrate the new tool to his/her existing workflow. It also provides an open platform for researchers to test and extend new technology. Our team members have successfully developed a variety of open-source tools including Concurrent Workbench [Cleaveland et al., 2000], M 2 IST [Tan, 2006], and most recently Simrisk [Tan and Xu, 2009b]. We will apply these experience and skills to this project. Specifically we will build the tool on Eclipse [the Eclipse Foundation, since 2004]. Eclipse is a popular open-source software development platform. Its model-based design frameworks EMF and GMF reduce the time and the cost for implementing an agent-based modeling framework. Eclipse supports several code generation frameworks including JET and Acceleo that can be used for building the reconfigurable generative simulation engine. Finally Eclipse adopts an open architecture. Other researchers can integrate their own analysis algorithms to the tool. 13

2. Proof extraction and game-based result interpretation. Probabilistic model checking analyzes<br />

a system on a stochastic property by constructing a mathematical proof. Such proof carries<br />

rich in<strong>for</strong>mation about the system with respect to the stochastic property. For instance, in<br />

context of supply-chain analysis, a proof can be used to understand analysis result and to<br />

debug a supply-chain design. Furthermore, probabilistic model checkers like PRISM [Hinton<br />

et al., 2006] answers the maximal (or minimal) probability in which a stochastic property may<br />

hold on a supply chain. A proof can be used to <strong>for</strong>mulate an optimal solution that reaches<br />

such maximal (or minimal) probability.<br />

Current research on extracting proofs from probabilistic model checkers is still limited because<br />

of the complexity of these proofs. Existing work (cf. [Han et al., 2009]) emphasized on<br />

<strong>for</strong>mats of proofs. More research is needed on how to extract these proofs from existing<br />

model checking algorithms and interpreting them to end users. In this project, we will study<br />

the problems of proof extraction and result interpretation in context of supply chain analysis.<br />

We will extend Tan and Cleaveland [2002]’s previous works on extracting proofs from a<br />

traditional model checker to the domain of probabilistic model checking. Previously Tan<br />

[2002] also developed a generic game-theoretic framework <strong>for</strong> interpreting proofs from various<br />

automated verification procedures. The framework worked by playing an interactive game<br />

with a user. By making decisions during the game, the user could choose part of the proof<br />

(s)he wanted to explore. Game-theoretic approach is especially suitable <strong>for</strong> explaining proofs<br />

with branching logics, including proofs from <strong>for</strong>mal stochastic analysis of supply chains. Such<br />

proofs are (potentially infinite) decision trees extended with probabilities and rewards. In<br />

this project we will develop a game-theoretic approach that allows an end user to explore<br />

proofs constructed by a probabilistic model checker.<br />

5.4 Specific aim 4: implement an open source tool <strong>for</strong> knowledge dissemination<br />

and technology transfer<br />

The purpose of this research is to enable modeling and automated stochastic analysis technology<br />

that are efficient and scalable <strong>for</strong> real-world large-scale supply chains. Besides the project’s proposed<br />

technological advances, the success of the project also largely depends on how effective we can<br />

disseminate knowledge and transfer technology to other researchers and practitioners. <strong>An</strong> opensource<br />

tool will be an excellent vehicle <strong>for</strong> this purpose: it allow practitioners to try out new<br />

technology and integrate the new tool to his/her existing workflow. It also provides an open<br />

plat<strong>for</strong>m <strong>for</strong> researchers to test and extend new technology.<br />

Our team members have successfully developed a variety of open-source tools including Concurrent<br />

Workbench [Cleaveland et al., 2000], M 2 IST [Tan, 2006], and most recently Simrisk [Tan<br />

and Xu, 2009b]. We will apply these experience and skills to this project. Specifically we will build<br />

the tool on Eclipse [the Eclipse Foundation, since 2004]. Eclipse is a popular open-source software<br />

development plat<strong>for</strong>m. Its model-based design frameworks EMF and GMF reduce the time and<br />

the cost <strong>for</strong> implementing an agent-based modeling framework. Eclipse supports several code generation<br />

frameworks including JET and Acceleo that can be used <strong>for</strong> building the reconfigurable<br />

generative simulation engine. Finally Eclipse adopts an open architecture. Other researchers can<br />

integrate their own analysis algorithms to the tool.<br />

13

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!