Petrisim-Diskret Simuleringsmiljö

Original Link: http://staff.um.edu.mt/jskl1/petrisim/


Petrisim 5 har släppts !
 

Vad är Petrisim & historia

Petrisim (My Pet reasonably interactive Simulator) är en generator av diskreta simuleringsmodeller som också kan användas som redaktör och simulator av Petri nät. Simuleringsmodeller skapas genom att lägga Pascal kodavsnitt i nätet som skapats av PetriSim. För att göra detta behöver du Turbo eller (bättre) Borland Pascal 7. Det finns bara en PC-version.

PetriSim 1 skapades ursprungligen som en grafisk redaktör och simulator av Petri nät (exakt den så kallade plats/Övergångsnät). Så PetriSim möjliggör intuitiv, mycket användarvänlig skapande, redigering och simulering av praktiskt taget alla antal Petrinät åt gången. De flesta operationer utförs genom att rita med musen på skärmen. Det var möjligt att lägga till Pascal kodavsnitt för att bygga användarmodeller, men tidskontroll var helt användarens ansvar.

PetriSim 2 introducerade de så kallade Tidsnäten. PetriSim nets använder bränningsfördröjningskonceptet (det kan finnas en viss fördröjning mellan att ta bort tokens från inmatningsplatser och lägga till tokens till utmatningsplatser för en bränningsövergång). Fördröjningen genereras av ett användarkodavsnitt som aktiveras när bränningen startar. Genom att tillämpa detta mycket enkla koncept att skjuta förseningar tillsammans med det grafiska språket Petri nät, är det möjligt att skapa komplexa timing och synkronisera strukturer som är typiska för diskreta simuleringsmodeller. Så PetriSim 2 är en generator av diskreta simuleringsmodeller. Time net används som ett skelett som styr sekvensering och timing av alla aktiviteter. Användarkoden genererar förseningar och utför alla operationer på Användardata. Användaren ska känna endast grundläggande idéer Petri Nets och mellanliggande Pascal programmering.

PetriSim 3 förde två stora förbättringar: visuell programmering gav en tydlig koppling mellan övergångar och kodavsnitt. Genom att klicka på en övergång öppnas en meny vars två alternativ startar en textredigerare för att ange eller redigera start-och slutkodavsnitten. Så användar kod kan skrivas under en PetriSim session. PetriSim genererar automatiskt alla Pascal källkod filer. Efter redigering av användarkod måste hela PetriSim-programmet kompileras om i Pascal ide. Arvsstruktur gjordes öppen. Det är möjligt att skriva underklasser med ett modifierat beteende av grundläggande nettoobjekt (platser, övergångar, bågar). Så det är möjligt att skriva PetriSim-baserade simuleringsmiljöer som fortfarande använder sig av de kraftfulla PetriSim-redigerings-och simuleringskontrollanläggningarna. Hittills har detta använts för att implementera nät med hämmarbågar och en enkel simulator av Könät.

PetriSim 3.1 hade några buggar borttagna och det lade till fler typer av bågar. Först var inhibitorbågen generaliserad. Den har en vikt nu så det är möjligt att testa om en plats har mindre än ett visst antal tokens. Då är det möjligt att definiera en testbåge som bara testar om en plats har minst ett visst antal tokens.

PetriSim 4 bygger på samma nettomodell som den tidigare versionen, men det finns mer funktionalitet för att underlätta skapandet av användarmodeller. Först finns det en transparent samling och utvärdering av statistik om: antal tokens på ett ställe, tid som en token spenderar på en plats, avfyra varaktigheten av en övergång. Så om en plats används som en kö och om en övergång används som en server, är all vanlig statistik på G/G/1-modellen gjord av platsen och övergången (inklusive varianser) automatiskt tillgänglig. Det finns en uppsättning procedurer som stöder modellinitiering och experimentutvärdering. Användarprogrammering reduceras således mycket. Om användaren är nöjd med Standardutgångar skriver den enda programmeringen kodavsnitten.

PetriSim 5 eliminerar behovet av att skriva användarkod, åtminstone för de flesta modeller. Alla parametrar av tidsinställda nät som slumpmässiga förseningar av bränning, förgrening sannolikheter, etc. anges direkt i skärmredigeringsläge. Så de flesta simuleringsmodeller behöver ingen Pascal-programmering. Naturligtvis måste saker som statligt beroende beteende programmeras.

PetriSim innehåller också några stödjande enheter med typiska simuleringsanläggningar som automatisk insamling och utvärdering av statistiska data, generering av slumptal och arbete med länkade listor (köer). Dessa enheter ska användas när du skriver användarkodavsnitt, men deras allmänna användning är möjlig.

Varför PetriSim ?

Petrasim skapades som ett verktyg för att stödja utbildning av:

  • Petrinät
  • Diskret Simulering
  • Objektorienterad Programmering

Petrsim 5 möjliggör skapande av diskreta simuleringsmodeller genom att skapa ett tidsinställt nät på skärmen. Allt du behöver är elementär kunskap om Petrinät. I särskilda fall krävs mellanliggande Pascal-programmering. Detta gör diskret simulering tillgänglig för nästan alla. Problemet är att mastering av simuleringsspråk inte kan förväntas med studenter under en terminskurs eller med personer som inte simulerar regelbundet. Petrasim är således ett gratis lättanvänt alternativ till professionella visuella simuleringsverktyg som Arena eller ExtendTM.

Vilka typer av Petri nät stöds ?

Direkt placera / Övergångsnät och i” användarläge ” tidsinställda nät. Användarskrivna procedurer kan ändra nätets beteende, så det är möjligt att genomföra andra Petrinätmodeller på hög nivå. Från PetriSim 3 och framåt kan alla dessa göras på ett tydligt konsekvent sätt som användardefinierade metoder för nettoobjekt. Du kan lägga till data på varje plats för att generalisera tokens på något sätt. Du kan implementera predikat för att aktivera vissa aktiviteter etc.

Observera att PetriSim endast använder Petri och tidsbestämda nät som beskrivande verktyg ! Det utför ingen automatisk analys på nätmodeller. Allt du kan göra (utan att skapa en användarmodell) är simulering i olika lägen för att analysera nätets beteende och söka efter deadlocks.
Detta har två skäl. Först finns det tillräckligt med bra verktyg som erbjuder nettoanalys. En annan anledning är det faktum, att en “perfekt” Petri Net kan modellera ett helt fel system ur användarens synvinkel. Därför är PetriSim inriktad på simulering för vilken den tidsinställda Net-modellen är ett sätt att lösa modell timing och synkronisering, de mest krävande simuleringsuppgifterna.

Nedladdning Och Installation

Petrisim är gratis. Du kan använda den på något sätt förutsatt att du informerar författaren om din PetriSim-användning-se följande e-postreferens. För att få det bara ladda ner filen petrisim.zip (2 MB) följ dessa instruktioner, där vi antar installation i enhet C:

  • Om du har en äldre version av PetriSim i C:\PETRISIM byt namn på katalog – till exempel att C:\PETRISM4.
  • Packa upp filen petrisim.zip i C:\. Detta skapar katalogen C:\PETRISIM med alla underkataloger.
  • Starta den enkla huvudmenyn med batchfilen S. BAT i den specifika katalogen:
    C:\PETRISIM\GG1>s
  • Om du inte har Pascal kan du börja direkt PETRISIM.EXE i den särskilda katalogen:
    C:\PETRISIM\GG1>petrisim
  • Du hittar HTML-manualen i C:\PETRISIM\HTMLMAN. – herr talman! Gör ett bokmärke till den i din webbläsare för att använda den som en hjälp under Petrasim sessioner.
  • I Windows-plattformar rekommenderar vi att skapa en mapp PetriSim med genvägar för varje modell (alla genvägar på start-antingen S. BAT eller PETRISIM.EXE i den särskilda katalogen).
  • Besök DENNA Petrasim hemsida för uppdateringar och fler demo modeller.

Krav

PetriSim är en MS DOS-program som fungerar praktiskt taget på vilken dator som helst kompatibel dator. Alla mus (eller någon annan pekdon) drivrutin som stöder MS DOS musfunktioner kan användas. PetriSim fungerar också utan mus men det rekommenderas inte. PetriSim kan startas utan problem i Windows 3.x/95/98/NT/Me/XP plattformar.

För att skapa modeller som innehåller användare källkod, behöver du Turbo eller Borland Pascal 7 (äldre versioner kan inte användas eftersom PetriSim använder open array-parametrar). Om du har Borland Pascal, använd skyddat mål för att undvika minnesproblem. Med Turbo Pascal finns problemet med begränsat konventionellt minne. PETRISIM.EXE-filer handlar om 210KB (den exakta längden beror på användaren.PAS enhet). Då måste det finnas utrymme för grafik, DOS-skal och speciellt textredigeraren för att redigera användarkodavsnitt. Vid minnesproblem försök att ställa in högen storlek (i PETRISIM.PAS), ta bort alla TSR som du inte behöver, eller använda några korta textredigerare (demo exempel använder C:\WINDOWS\SYSTEM32\EDIT.COM). Det finns fler detaljer i README.TXT distribueras med källfiler och i manualen.

 

Använda gamla modeller

Det borde inte finnas några problem med att ladda nätfilerna som skapats med äldre versioner. Det kommer att bli nödvändigt att ändra enhetsanvändaren eftersom det nu är mycket kortare, de flesta användarrelaterade deklarationer har flyttats in i enheten USERPART. Titta på enhetens användare av en av demomodellerna som medföljer version 5. Generellt bör du kunna använda kodavsnitten. Från den gamla versionen av enhetsanvändaren kan du använda modellutvärderingsdelen, men överväga också att använda standardutvärderingen som nu finns tillgänglig i version 5. Om du har problem, kontakta författaren för hjälp.

 

Bläddra Petrasim manuell

Bläddra online Petrasim 5 manuella nu.

Ta en titt på Petrasim skärmar

PetriSim tour förutsätter att du känner till grundläggande idéer om Petri Nät. Så överväg att besöka den här sidan först.

Starta en PetriSim Tour som också kan användas som en handledning för att skapa en enkel användarmodell i version 4. För version 5 kan du bara ange de tidsinställda nettoparametrarna och simulera nätet för att få Standardutgångar.

Upphovsman

Vid eventuella problem tveka inte att kontakta mig:

Jaroslav Sklenar
Docent
Institutionen för statistik och verksamhet
Malta universitet
Msida MSD 06
Malta

e-post: [email protected]

Webb: http://staff.um.edu.mt/jskl1/

Telefon: (+356) 2340 3070     Fax: (+356) 2131 2110

Leave a Reply