Projects



Changes between Version 1 and Version 2 of PTCNets


Ignore:
Timestamp:
Mar 23, 2022, 11:41:08 AM (3 years ago)
Author:
8voss
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PTCNets

    v1 v2  
    1 Introduction
     1==Introduction
    22
    3 PTChannel is a plugin which allows the compilation and simulation of P/T channels with synchronous channels.
     3PTChannel is a plugin which allows the compilation and simulation of P/T nets with synchronous channels.
    44
    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
    66
    7 A version of Renew with PTChannel  and some examples can be downloaded here: renew4ptchannel.zip
     7PTChannel is currently not part of the official Renew release. A version of Renew with PTChannel and some examples can be downloaded here:
     8
     9
     10renew4ptchannel.zip
    811
    912
    1013
    11 
    12 User Guide
    13 Getting Started
    14 
    15 (For Linux - other operating systems see Starting modular Renew)
     14==User Guide
     15=Getting Started
    1616
    1717After downloading and extracting the file, one might start Renew with PTChannel using the follwing command:
    1818
     19Under Linux / MacOS:
     20
     21
     22{{{
    1923$ java -p renew4ptchannel:renew4ptchannel/libs -m de.renew.loader gui
     24}}}
    2025
    2126If the directory has been renamed (e.g. to "dist"), substitute "renew4ptchannel" accordingly.
    2227
     28Under Windows:
     29
     30{{{
     31java -p dist;dist/libs -m de.renew.loader gui
     32}}}
     33
     34In the git bash the following command must be used instead:
     35
     36{{{
     37java -p dist\;dist/libs -m de.renew.loader gui
     38}}}
     39
     40In the Powershell of windows (which is also used by Intellij!) the following command must be used:
     41
     42{{{
     43java -p "dist\;dist/libs" -m de.renew.loader gui
     44}}}
    2345
    2446
     47To 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**.
    2548
    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.
     49If partitioning into multiple net instances is required, select the **P/T Net in Net Compiler**.
    2750
    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.
     51Construct a viable P/T net with synchronous channels and start the simulation under Simulation->Run Simulation or Simulation->Simulation Net Step.
    3152
    3253If 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.
     
    3556
    3657
    37 P/T Nets with Synchronous Channels
     58=P/T Nets with Synchronous Channels
    3859
    3960The PTChannel plugin extends Renew by a new Petri net formalism, which in turn extends P/T nets by synchronous channels.
    4061
    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.
     62A detailed explanation and definition of P/T nets with synchronous channels can be found in the theses Voß22 and the paper Voß+22.
    4263
    4364As a quick overview:
    4465
    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 transitions
    49 Variables can be bound to these integers and used as arc inscriptions
    50 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.
    5172
    5273
    5374
    5475
    55 Viable User Input
     76=Viable User Input
    5677
    5778PTC-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.
     
    6788Arcs connected to communicating transitions may be inscribed with its variables (e.g. x ).
    6889
    69 Under Examples, one may find a viable P/T channel net for the producer-consumer scheme.
     90Under **Examples**, one may find a viable P/T channel net for the producer-consumer scheme.
    7091
    7192
     
    7394
    7495
    75 
    76 
    77 Inter-Net Communication
    78 
     96=Inter-Net Communication
    7997
    8098
     
    84102The following hyperparameters need to be set by a user, which are used to create a syntactically correct system net automatically:
    85103
    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?
    88106
    89107Modelers 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.