3URFHHGLQJVRIWKH:LQWHU6LPXODWLRQ&RQIHUHQFH :.9&KDQ$' $PEURJLR*=DFKDUHZLF]10XVWDIHH*:DLQHUDQG(3DJHHGV GENERICARCHITECTUREFORINTERACTIVEMOBILESIMULATIONOFPARALLEL DEVSMODELS:AMISSILEDEFENSEAPPLICATION &HOLQH.HVVOHU /DXUHQW&DSRFFKL 63(805&156 63(805&156 8QLYHUVLW\RI&RUVLFD 8QLYHUVLW\RI&RUVLFD &DPSXV*ULPDOGL &DPSXV*ULPDOGL &RUWH)5$1&( &RUWH)5$1&( %HUQDUG3=HLJOHU -HDQ)UDQoRLV6DQWXFFL 8QLYHUVLW\RI$UL]RQD 63(805&156 $UL]RQD&HQWHUIRU,QWHJUDWLYH0 6 8QLYHUVLW\RI&RUVLFD 576\QF&RUS &DPSXV*ULPDOGL 3RWRPDF0'86$ &RUWH)5$1&( ABSTRACT Modeling and simulation (M&S) is a discipline oriented towards engineering and research, but it tends since the very last years to be used more and more by users and developers of mobile applications through cloud computing and web services. The M&S new tools involve mobile terminals (smartphone, tablet, etc.) exchanging data quantities increasingly important from sensors with an increasing transmission speed. This paper presents a generic approach (the DEVSimPy-mob mobile application) which aims to simulate models described with the DEVS formalism (Discrete EVent system Specification). DEVSimPymob communicates with a web REST (Representational State Transfer) server that delivers a set of web services dedicated to the simulation of DEVS models. A real case application stemming from Balistic Missile Defense simulations is presented to show how DEVSimPy-mob can be used to launch simulations from a mobile device, interact during the simulation process and visualize results. 1.
INTRODUCTION
0RGHOLQJDQGVLPXODWLRQ0 6 LVDGLVFLSOLQHILUVWRIDOORULHQWHGWRZDUGVHQJLQHHULQJDQGUHVHDUFKEXW LWWHQGVVLQFHWKHYHU\ODVW\HDUVWREHXVHGPRUHDQGPRUHE\XVHUVDQGGHYHORSHUVRIPRELOHDSSOLFDWLRQV WKURXJKFORXGFRPSXWLQJDQGZHEVHUYLFHV7KHDGYDQWDJHRIXVLQJVLPXODWLRQWRROVYLDZHEVHUYLFHVLV QRW QHZ ,Q 3DJH HW DO WKH DXWKRUV TXHVWLRQ WKH SRWHQWLDO LPSDFW RI XVLQJ WKHVH VHUYLFHV ZLWK UHVSHFWWRWKHPRGHOLQJPHWKRGRORJ\WKDWLVXVHG7KH\FRQFOXGHE\QRWLQJWKDWWKHFRPELQDWLRQRIZHE DQGVLPXODWLRQVXUHO\OHDGWRFKDQJHRXUDSSURDFKWRWKHPRGHOLQJRIFRPSOH[V\VWHPVLQWKHIXWXUH2Q WKH RWKHU KDQGLQ7D\ORU HW DO WKH DXWKRUV HPSKDVL]H WKHLPSRUWDQFH RI IDVKLRQ DQG VLPXODWLRQ EDVHGRQWKHXVHRIZHEVHUYLFHVEXWDOVRWKHDUULYDORIXELTXLWRXVV\VWHPVVXFKDV6PDUWSKRQHVWDEOHWV HWF2IFRXUVHWKLVLQWURGXFHVWKHLVVXHVLQYROYHGLQWKHUHDOWLPHLQWHUDFWLRQRIVLPXODWLRQWRROVDWWKH XVHUOHYHO1RZDGD\VLWLVREYLRXVWKDWWRROVDQGDSSURDFKHVDUHSURSRVHGLQRUGHUWRPRGHODQGVLPXODWH XELTXLWRXV V\VWHPV WKURXJK WKH LQWHUPHGLDU\ RI ZHE VHUYLFHV 7KHVH WRROV DQG DSSURDFKHV PDNH LW SRVVLEOHWRLQWHJUDWHWKHVLPXODWLRQDVDVHUYLFHDFFHVVLEOHE\PRELOHGHYLFHVVPDUWSKRQHV RUWRLQWHJUDWH PRELOH GHYLFHV RU FRPSRQHQWV HPEHGGLQJ VHQVRUV DV D VRXUFH RI GDWD IRU WKH VLPXODWLRQ &DPSLOOR 6DQFKH]HWDO $VHWRITXHVWLRQVLQYROYHGE\WKHFRQQHFWLRQEHWZHHQVLPXODWLRQFORXGDQGVPDUWSKRQHVKDVEHHQUDLVHG LQ7D\ORUHWDO o +RZWRLQWHUIDFHVLPXODWLRQVRIWZDUHZLWK6PDUWSKRQH$3,V" o +RZWRFRPELQHGLVFUHWHHYHQWVLPXODWLRQFORXGFRPSXWLQJZLWKZHEVHUYLFHVLQWHUIDFHV DQG PRELOHGHYLFHV" 978-1-5386-3428-8/17/$31.00 ©2017 IEEE
1515
.HVVOHU&DSRFFKL=HLJOHUDQG6DQWXFFL o +RZWRXVHDPRUHDEVWUDFWDSSURDFKWRGHDOZLWKWKHVHSUREOHPV" :H QHHG WR H[SORUH QHZ DUFKLWHFWXUHV LQFOXGLQJ K\EULG DSSURDFKHV VXLWDEOH IRU KDQGKHOG GHYLFHV :H DOVRQHHGWRH[SORUHQHZPHFKDQLVPVWRDOORZXVHUVWRFROODERUDWHRQMRLQWVLPXODWLRQH[HUFLVHVVKDULQJ LQIRUPDWLRQ DQG GDWD EHWZHHQ H[LVWLQJ GHYLFHV DQG WKH VLPXODWLRQ VHUYHU :H FDQ SRLQW RXW WKDW 0 6 WHFKQLTXHVOLNH'(96'LVFUHWH(YHQW6\VWHP6SHFLILFDWLRQ =HLJOHUHWDO SURPLVHEHWWHUVXFFHVV E\DGGUHVVLQJWKHVHLVVXHVDWDKLJKHUOHYHORIDEVWUDFWLRQ'(96=HLJOHUHWDO KDVEHHQLQWURGXFHG DVDQDEVWUDFWIRUPDOLVPIRUWKHPRGHOLQJRIGLVFUHWHHYHQWV\VWHPVDQGDOORZVDFRPSOHWHLQGHSHQGHQFH IURP WKH VLPXODWRU XVLQJ WKH QRWLRQ RI DEVWUDFW VLPXODWRU :LWK '(96 PRGHOV VLPXODWRUV DQG H[SHULPHQWVDUHV\VWHPDWLFDOO\EXLOWDQGLQWHURSHUDELOLW\FDQEHHQKDQFHG ,QWKLVSDSHUZHGHVFULEHDJHQHULFDSSURDFKDOORZLQJWRL VLPXODWH'(96PRGHOVXVLQJVPDUWSKRQHV LL LQWHUDFWGXULQJWKHVLPXODWLRQIURPWKHVPDUWSKRQHLLL YLVXDOL]HUHVXOWVRQWKHVPDUWSKRQH '(96LP3\&DSRFFKLHWDO LVDJHQHUDOXVHULQWHUIDFHGHGLFDWHGWRPRGHOLQJDQGVLPXODWH'(96 PRGHOV ,W LV EDVHG RQWKH$3, 3\3 '(96 IRU WKH '(96 VLPXODWLRQ NHUQHO ZKLFK LV VXSSRUWHG E\ WKH 0RGHOLQJ6LPXODWLRQDQG'HVLJQODE06'/ RIWKH0F*LOO8QLYHUVLW\:HSURSRVHDQHZPRELOHDSS '(96,P3\PRE WR VLPXODWH '(96LP3\ PRGHOV LQ D UHPRWH ZD\ YLD ZHE VHUYLFHV 7KH DLP RI '(96LP3\PRE LV SULPDULO\ WR JLYH XVHUV WKH RSWLRQ RI H[HFXWLQJ '(96LP3\ PRGHOV IURP PRELOH GHYLFHV 7KH PRELOH EHFRPHV D LQSXW GDWD VRXUFH IRU VLPXODWHG PRGHOV DQG DOORZV WKH XVHU WR FRQWH[WXDOL]H LWV VLPXODWLRQV ,QGHHG LQLWLDOO\ WKH XVHU FDQ VHOHFW D PRGHO EDVHG RQ LWV SRVLWLRQ RU WKH FRQWH[WLQZKLFKLWLVORFDWHGPRELOLW\ 6RWKHVHOHFWHGPRGHOLVGHSHQGHQWRQFRQWH[WXDOGDWDWKDWPD\ EHXVHGE\WKHVLPXODWLRQ)LQDOO\WKHVLPXODWLRQFDQEHH[HFXWHGIURPFRQWH[WXDOGDWDWKDWDUHOLNHO\WR LQIOXHQFHWKHFKRLFHRIVLPXODWLRQDOJRULWKPVVHTXHQWLDOSDUDOOHORUGLVWULEXWHG 7KHUHVWRIWKHSDSHULVRUJDQL]HGDVIROORZV7KHQH[WVHFWLRQJLYHVWKHFRQWH[WRIWKHZRUNDVWDWH RIWKHDUWRIVLPXODWLRQYLDVPDUWSKRQHLVSURSRVHGEHIRUHSUHVHQWLQJWKHPDLQFRQFHSWVLQYROYHGLQWKH '(96 IRUPDOLVP DQGWKH'(96LP3\'(96LP3\PRE HQYLURQPHQW7KH JHQHULF DSSURDFKDOORZLQJ WR GHILQHPRELOHDSSOLFDWLRQVWRSHUIRUPVLPXODWLRQVZKLOHWKHYDOLGDWLRQRIWKHDSSURDFKLVFRQGXFWHGXVLQJ D %DOLVWLF 0LVVLOH 'HIHQVH 6\VWHP %0'6 DSSOLFDWLRQ LV GHVFULEHG LQ VHFWLRQ 7KH ODVW VHFWLRQ LV GHYRWHGWRFRQFOXGLQJUHPDUNVDQGIXWXUHZRUN 2.
CONTEXT:DEVSANDDEVSIMPY
7KH FODVVLF '(96 'LVFUHWH (9HQW V\VWHP 6SHFLILFDWLRQ =HLJOHU HW DO IRUPDOLVP KDV EHHQ LQWURGXFHGDVDQPDWKHPDWLFDODEVWUDFWIRUPDOLVPIRUWKHPRGHOLQJDQGWKHVLPXODWLRQRIGLVFUHWHHYHQW V\VWHPV DOORZLQJ D FRPSOHWH LQGHSHQGHQFH IURP WKH VLPXODWRU XVLQJ WKH QRWLRQ RI DEVWUDFW VLPXODWRU '(96GHILQHVWZRNLQGVRIPRGHOVDWRPLFDQGFRXSOHGPRGHOV$QDWRPLFPRGHOLVDEDVLFPRGHOZLWK VSHFLILFDWLRQV IRU WKH G\QDPLFV RI WKH PRGHO ,W GHVFULEHV WKH EHKDYLRU RI D FRPSRQHQW ZKLFK LV LQGLYLVLEOHLQDWLPHGVWDWHWUDQVLWLRQOHYHO&RXSOHGPRGHOVWHOOKRZWRFRXSOHVHYHUDOFRPSRQHQWPRGHOV WRJHWKHUWRIRUPDQHZPRGHO7KLVNLQGRIPRGHOFDQEHHPSOR\HGDVDFRPSRQHQWLQDODUJHUFRXSOHG PRGHO WKXV JLYLQJ ULVH WR WKH FRQVWUXFWLRQ RI FRPSOH[ PRGHOV LQ D KLHUDUFKLFDO IDVKLRQ $V LQ JHQHUDO V\VWHPVWKHRU\D'(96PRGHOFRQWDLQVDVHWRIVWDWHVDQGWUDQVLWLRQIXQFWLRQVWKDWDUHWULJJHUHGE\WKH VLPXODWRU
)LJXUH'(96FODVVLFDWRPLFPRGHOLQDFWLRQ 7KH )LJXUH GHVFULEHV WKH EHKDYLRU RI D GLVFUHWHHYHQW V\VWHP DV D VHTXHQFH RI GHWHUPLQLVWLF WUDQVLWLRQVEHWZHHQVHTXHQWLDOVWDWHV6 7KHDWRPLFPRGHO$0UHDFWVGHSHQGLQJRQWZRW\SHVRIHYHQWV 1516
.HVVOHU&DSRFFKL=HLJOHUDQG6DQWXFFL H[WHUQDO DQG LQWHUQDO HYHQWV :KHQ DQ LQSXW HYHQW RFFXUV ; DQ H[WHUQDO HYHQW FRPLQJ IURP DQRWKHU PRGHO WULJJHUVWKHH[WHUQDOWUDQVLWLRQIXnction δext(X,S) of the atomic model in order to update its state. ,IQRLQSXWHYHQWRFFXUVDQLQWHUQDOHYHQWWULJJHUVthe internal transition δint(S) of the atomic modeling order to update its state. Then, the output function λ(S) is executed to generateWKHRXWSXWV< WD6 LVWKH WLPHDGYDQFHIXQFWLRQZKLFKGHWHUPLQHWKHOLIHWLPHRIDVWDWH 3DUDOOHO'(96'(96 &KRZDQG=HLJOHU KDVEHHQLQWURGXFHGDVDQH[WHQVLRQRI&ODVVLF'(96 WR SURYLGH D IRUPDOLVP WKDW WDNH EHWWHU DFFRXQW WKH SDUDOOHOLVP E\ LQWURGXFLQJ WKH QRWLRQ RI EDJV WKH FRQIOXHQW WUDQVLWLRQ IXQFWLRQ ,QGHHG ZLWK EDJV WKH H[WHUQDO WUDQVLWLRQ IXQFWLRQ UHFHLYHV PXOWLSOH PHVVDJHV RQ D VLQJOH SRUW 7KH QHZ FRQIOXHQW IXQFWLRQ LV WULJJHUHG ZKHQ D PRGHO UHFHLYHV DQ H[WHUQDO LQSXWDWWKHVDPHWLPHDVLWZRXOGGRLWVRZQLQWHUQDOWUDQVLWLRQ,WFDQEHQRWLFHWKDWWKHRXWSXWIXQFWLRQ JHQHUDWHVQRZDEDJLQVWHDGRIDVLQJOHRXWSXW ,QVRPHVLWXDWLRQ'(96FRXSOHGPRGHOVQHHGWRFKDQJHWKHLUFRXSOLQJRUDQGWKHLUFRPSRVLWLRQGXULQJ WKH VLPXODWLRQ '\QDPLF 6WUXFWXUH '(96 '6'(96 IRUPDOLVP %DUURV LQWURGXFHV D QHWZRUN H[HFXWLYH LQ HDFK FRXSOHG PRGHO WKDW FDQ UHFHLYH PHVVDJHV IURP DOO RI LWV FRPSRQHQWV WR LQLWLDWH D UHVWUXFWXULQJ $ SUDFWLFDO DSSURDFK WR G\QDPLF VWUXFWXUH KDV EHHQ SURSRVHG LQ +X HW DO ZKLOH UHFHQWDSSOLFDWLRQRIG\QDPLFVWUXFWXUH'(96FDQEHPHQWLRQHG6WHLQLJHUDQG8UKPDFKHU0X]\ DQG=HLJOHU '(96LP3\&DSRFFKLHWDO LVDQ2SHQ6RXUFHSURMHFWXQGHU*3/9OLFHQVH VXSSRUWHGE\ WKH 63( 6FLHnce pour l’Environnement) group of WKH 805 &156 /DE RI WKH 8QLYHUVLW\ RI Corsica ”Pasquale Paoli”. This aim is to provide a GUI for the M&S of3\'(96DQG3\3'(96/LHWDO PRGHOV3\'(96LVDQ$SSOLFDWLRQ3URJUDPPLQJ,QWHUIDFH$3, DOORZLQJWKHLPSOHPHQWDWLRQRI WKH '(96 IRUPDOLVP LQ 3\WKRQ ODQJXDJH 3HUH] HW DO 3\3'(96 LV WKH SDUDOOHO YHUVLRQ RI 3\'(96EDVHGRQ3DUDOOHO'(96IRUPDOLVP&KRZDQG=HLJOHU 7KH'(96LP3\HQYLURQPHQWKDV EHHQGHYHORSHGLQ3\WKRQZLWKWKHZ[3\WKRQ5DSSLQDQG'XQQ JUDSKLFDOOLEUDU\ZLWKRXWVWURQJ GHSHQGHQFLHVRWKHUWKDQWKH6FLS\-RQHVHWDO DQGWKH1XPS\2OLSKDQW VFLHQWLILFS\WKRQ OLEUDULHV7KHEDVLFLGHDEHKLQG'(96LP3\LVWRZUDSWKH3\'(96$3,ZLWKD*8,DOORZLQJVLJQLILFDQW VLPSOLILFDWLRQRIKDQGOLQJ3\'(963\3'(969DQ7HQGHORR PRGHOVOLNHWKHFRXSOLQJEHWZHHQ PRGHOVRUWKHLUVWRUDJHLQWROLEUDULHV 3.
GENERICPROPOSEDAPPROACH
7KHVHFWLRQSRLQWVRXWKRZZHGHDOWZLWKWKHWKUHHPDLQTXHVWLRQVLQWURGXFHGLQWKHLQWURGXFWLRQL KRZ WRLQWHUIDFHVLPXODWLRQ VRIWZDUH ZLWK 6PDUWSKRQH $3,V LL +RZ WR FRPELQH GLVFUHWHHYHQW VLPXODWLRQ FORXG FRPSXWLQJ ZLWK ZHE VHUYLFHV LQWHUIDFHV DQG PRELOH GHYLFHV LLL +RZ WR XVH D PRUH DEVWUDFW DSSURDFKWRGHDOZLWKWKHVHSUREOHPV 7KHSURSRVHG DSSURDFKLVEDVHG RQWKH XVH RI D QHZ PRELOH DSS '(96LP3\PRE GHGLFDWHG WR UHPRWH VLPXODWLRQRI'(96PRGHOVZKLFKKDYHEHHQLPSOHPHQWHGIURPWKH'(96LP3\HQYLURQPHQW ,Q RUGHU WR SURSRVH DQ DEVWUDFWJHQHULF DV SRLQWHG LQ TXHVWLRQ LLL '(96LP3\PRE LV EDVHG RQ D FOLHQWVHUYHU DUFKLWHFWXUH ZKHUH WKH FOLHQW PRELOH GHYLFH LV FRQQHFWHG WR WKH '(96LP3\5(67 5HSUHVHQWDWLRQDO 6WDWH 7UDQVIHU VHUYHU ZKLFK RSHUDWHV FRPPDQG OLQH YHUVLRQ RI '(96LP3\ '(96LP3\QRJXL)LJXUH
1517
.HVVOHU&DSRFFKL=HLJOHUDQG6DQWXFFL
)LJXUH&OLHQW6HUYHUDUFKLWHFWXUHRI'(96LP3\QRJXL 'HYHORSHUVEXLOGDQGYDOLGDWHWKHLU'(96PRGHOVLQWKH\DPO5HWULHYHG)HEUXDU\@ +X;=HLJOHU%3DQG0LWWDO6“Variable Structure in DEVS ComponentEDVHG0RGHOLQJDQG 6LPXODWLRQ”6LPXODWLRQYRO– /L ; 9DQJKHOXZH + /HL