Changes between Version 1 and Version 2 of PTCNets
- Timestamp:
- Mar 23, 2022, 11:41:08 AM (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
PTCNets
v1 v2 1 Introduction1 ==Introduction 2 2 3 PTChannel is a plugin which allows the compilation and simulation of P/T channels with synchronous channels.3 PTChannel is a plugin which allows the compilation and simulation of P/T nets with synchronous channels. 4 4 5 It is available for Modular Renew, currently being developed in the branch modular/ptchannel and not part of any distribution package. 5 = Where to get the Tool 6 6 7 A version of Renew with PTChannel and some examples can be downloaded here: renew4ptchannel.zip 7 PTChannel is currently not part of the official Renew release. A version of Renew with PTChannel and some examples can be downloaded here: 8 9 10 renew4ptchannel.zip 8 11 9 12 10 13 11 12 User Guide 13 Getting Started 14 15 (For Linux - other operating systems see Starting modular Renew) 14 ==User Guide 15 =Getting Started 16 16 17 17 After downloading and extracting the file, one might start Renew with PTChannel using the follwing command: 18 18 19 Under Linux / MacOS: 20 21 22 {{{ 19 23 $ java -p renew4ptchannel:renew4ptchannel/libs -m de.renew.loader gui 24 }}} 20 25 21 26 If the directory has been renamed (e.g. to "dist"), substitute "renew4ptchannel" accordingly. 22 27 28 Under Windows: 29 30 {{{ 31 java -p dist;dist/libs -m de.renew.loader gui 32 }}} 33 34 In the git bash the following command must be used instead: 35 36 {{{ 37 java -p dist\;dist/libs -m de.renew.loader gui 38 }}} 39 40 In the Powershell of windows (which is also used by Intellij!) the following command must be used: 41 42 {{{ 43 java -p "dist\;dist/libs" -m de.renew.loader gui 44 }}} 23 45 24 46 47 To use the formalism in Renew, select it under Simulation/Formalism. For communication within one net instance, select the **Single P/T Net with Channel Compiler**. 25 48 26 To use the formalism in Renew, select it under Simulation/Formalism. For communication within one net instance, select the Single P/T Net with Channel Compiler.49 If partitioning into multiple net instances is required, select the **P/T Net in Net Compiler**. 27 50 28 If partitioning into multiple net instances is required, select the P/T Net in Net Compiler. 29 30 Construct a viable P/T net with synchronous channels and start the simulation under Simulation/Run Simulation or Simulation/Simulation Net Step. 51 Construct a viable P/T net with synchronous channels and start the simulation under Simulation->Run Simulation or Simulation->Simulation Net Step. 31 52 32 53 If the P/T Net in Net Compiler is selected, the user needs to set hyperparameters for the construction of a system net that handles communication before the simulation can start. … … 35 56 36 57 37 P/T Nets with Synchronous Channels58 =P/T Nets with Synchronous Channels 38 59 39 60 The PTChannel plugin extends Renew by a new Petri net formalism, which in turn extends P/T nets by synchronous channels. 40 61 41 A detailed explanation and definition of P/T nets with synchronous channels can be found in the theses Voß22 , Kühnemund21,and the paper Voß+22.62 A detailed explanation and definition of P/T nets with synchronous channels can be found in the theses Voß22 and the paper Voß+22. 42 63 43 64 As a quick overview: 44 65 45 P/T-nets with synchronous channels (PTC-nets) are a superset of ordinary P/T-nets.46 In P/T nets with channels, transitions may be inscribed with up- or downlinks.47 Up-/Downlinks accept two types of parameters for bi-directional information exchange: Integers and Variables.48 Integers indicate how many "black tokens" get transferred between transitions49 Variables can be bound to these integers and used as arc inscriptions50 Modularizing and partitioning nets is possible. Resulting net instances can communicate via channels. Communication is organized via a system net. Inter-Net communication is possible through uplinks only.66 - P/T-nets with synchronous channels (PTC-nets) are a superset of ordinary P/T-nets. 67 - In P/T nets with channels, transitions may be inscribed with up- or downlinks. 68 - Up-/Downlinks accept two types of parameters for bi-directional information exchange: Integers and Variables. 69 - Integers indicate how many "black tokens" get transferred between transitions 70 - Variables can be bound to these integers and used as arc inscriptions 71 - Modularizing and partitioning nets is possible. Resulting net instances can communicate via channels. Communication is organized via a system net. Inter-Net communication is possible through uplinks only. 51 72 52 73 53 74 54 75 55 Viable User Input76 =Viable User Input 56 77 57 78 PTC-nets follow a specific syntax. Since it is an extension to ordinary P/T-nets, it follows the syntax for P/T-nets and all viable P/T nets are also viable in the PTC-net formalism. … … 67 88 Arcs connected to communicating transitions may be inscribed with its variables (e.g. x ). 68 89 69 Under Examples, one may find a viable P/T channel net for the producer-consumer scheme.90 Under **Examples**, one may find a viable P/T channel net for the producer-consumer scheme. 70 91 71 92 … … 73 94 74 95 75 76 77 Inter-Net Communication 78 96 =Inter-Net Communication 79 97 80 98 … … 84 102 The following hyperparameters need to be set by a user, which are used to create a syntactically correct system net automatically: 85 103 86 Which and how many net instances shall be created from the templates?87 Which synchronizations shall be possible in the net?104 - Which and how many net instances shall be created from the templates? 105 - Which synchronizations shall be possible in the net? 88 106 89 107 Modelers can select these settings in a GUI, that automatically opens whenever the simulation of a syntactically correct PTC-net is started. The GUI for a Sender-Receiver example can be seen in the next figure, together with the panel to manually create synchronization options.