Automatic Concurrent Program Generation from Petri Nets

Automatic generation of code from Petri-Nets is an important topic. This paper presents a new approach to automatically translate Petri nets into concurrent program. In the proposed approach, place in Petri net is viewed as variable and transition as operating statement which change place marking according to enable and firing semantics. In order to conveniently translate Petri net to CC++ program code, sequence block and independent transition is defined and a graph called virtual Petri net is constructed. The translation rules of sequence structure, concurrent structure, select structure and loop structure of Petri nets are developed. According to these presented translation rules, an algorithm of concurrent program code generated automatically for Petri net was proposed. Finally, through case study, the effectiveness of the developed approach is illustrated.

[1]  Xudong He Translating hierarchical predicate transition nets to CC++ programs , 2000, Inf. Softw. Technol..

[2]  Stephan Philippi,et al.  Automatic code generation from high-level Petri-Nets for model driven systems engineering , 2006, J. Syst. Softw..

[3]  Giorgio Bruno,et al.  Process-translatable Petri nets for the rapid prototyping of process control systems , 1986, IEEE Transactions on Software Engineering.

[4]  George V. Tarasov,et al.  Experimental Version of Parallel Programs Translator from Petri Nets to C++ , 2001, PaCT.

[5]  Xudong He,et al.  Mapping Petri nets to concurrent programs in CC++ , 1997, Inf. Softw. Technol..

[6]  Robert A. Nelson,et al.  Casting Petri Nets into Programs , 1983, IEEE Transactions on Software Engineering.

[7]  Dianxiang Xu,et al.  A Tool for Automated Test Code Generation from High-Level Petri Nets , 2011, Petri Nets.

[8]  Weizhi Liao,et al.  Optimization and Control of Production Systems Based on Interval Speed Continuous Petri Nets , 2005, 2005 IEEE International Conference on Systems, Man and Cybernetics.

[9]  Alessandro Giua,et al.  First-order hybrid Petri nets: a model for optimization and control , 2000, IEEE Trans. Robotics Autom..

[10]  Dirk Taubner,et al.  On the Implementation of Petri Nets , 1988, European Workshop on Applications and Theory of Petri Nets.