Nät inom Nets

Nät inom Nets är en modelleringsmetod som tillhör familjen Petrinät . Denna metod särskiljs från andra sorters petrinät genom möjligheten att förse sina polletter med en ordentlig struktur, som återigen är baserad på petrinätmodellering. Därför kan ett nät innehålla ytterligare nätobjekt, att kunna röra sig och elda sig själva.

Motivering

Nät inom nät är väl lämpade för modellering av distribuerade system under de särskilda aspekterna av

  • hierarki,
  • rörlighet
  • inkapsling.

I många publikationer ges i relation till objektorienterad design , för att kombinera Petrinets förmåga att modellera distribuerad beräkning med modellering av objekt, att kunna skapas och interagera.

Historia

Med utgångspunkt från behovet av praktiska tillämpningar, i mitten av nittiotalet, har olika formalismer skapats, som passar beskrivningen av "nät i nät". Lomazova och Schnoebelen listar några av dessa tillvägagångssätt, nämligen av Sibertin-Blanc, Lakos, Moldt och Wienberg som förlänger Colored Petri-nät , vid sidan av Object Nets of Valk. Den tidigaste användningen av sådana hierarkiska nätmodeller uppträdde av Rüdiger Valk i Valk och Jessen, där de så kallade task-flow-näten introduceras för att modellera uppgiftssystem i operativsystem. I dessa modeller modelleras uppgifter av ett Petri-nät, som representerar uppgifternas företräde och deras tillstånd för utförande.

Semantik

De viktigaste skillnaderna i semantik ges av exekveringen av nättokens. På ena sidan kan nättokens vara referenser till nettoposter, vilket fall kallas "referenssemantik". Denna typ av semantik skiljer sig från värdesemantik , där nätobjekt kan existera på olika platser och olika interna tillstånd. Inom värdesemantik kan olika kopior skapas för att modellera samtidig exekvering. Motsvarande sammanfogning av en sådan uppdelning kan definieras på olika sätt, som till exempel genom "distribuerad token-semantik" eller "historikprocesssemantik". I samband med mobil datoranvändning är hybridversioner av referens- och värdesemantik av betydelse. I distribuerad tokensemantik förblir den viktiga beräkningen av platsinvarianter för Petrinät giltig.

Kommunikation

Formalismen hos nät inom nät skulle vara av liten betydelse utan kommunikation mellan nätpolletter. Liksom i objektorienterad programmering introduceras kommunikation av nättokens via fördefinierade gränssnitt som är dynamiskt bundna.

Figur 1: Kapslade petrinät innehållande kanaler via inskriptioner

I figur 1 visas ett petrinät som innehåller ett symboliskt petrinät på plats "a". Tokennätet kan röra sig från plats "a" till plats "b" och tillbaka genom att avfyra övergångarna i det yttre nätet. Kanalinskriptionerna vid övergångarna beter sig som ett anrop av en metod , vilket resulterar i synkroniserad avfyring av anropsövergången i det yttre nätet [t.ex. märkt med x:forth()] och den anropade övergången [t.ex. märkt av :forth()] i token-nätet. Variabeln "x" vid en pil är bunden till tokennätet på den plats som är kopplad till denna pil. Hakparenteserna kan innehålla parametrar som ska skickas. Detta exempel är så enkelt att referens- och värdesemantik sammanfaller.

Algoritmer och begränsade formalismer

Standard Petri-nätegenskaper som nåbarhet , avgränsning och livlighet visar en blandad bild. En artikel från Köhler-Bußmeier ger en undersökning om avgörbarhetsresultat för elementära objektsystem. För att minska komplexiteten i formalismen har underklasser definierats genom att begränsa strukturen hos petrinäten, som till exempel till statsmaskiner. Sådana begränsningar tillåter fortfarande komplex modellering av distribuerade och mobila system, men har polynomkomplexitet vid modellkontroll .

Verktyg