2' 'ư>HELPA\NhNN:lCONTINUE n(( EXIT&%p=lHALTމPl dSTEP 1v4߉lg STOP߉X^F%EFSTOP ,,OFFg^w@߉U`T߉W`Oh2gp߉.Odh2Cg|߉h2C|ŻOdgh2CModelsSchr5d.gpsLFeCFEOCjLCj2GjE(((((((((({\rtf1\ansi\deff0\deftab720{\fonttbl{\f0\fswiss MS Sans Serif;}{\f1\froman\fcharset2 Symbol;}{\f2\fmodern Courier New;}} {\colortbl\red0\green0\blue0;} \deflang1033\pard\tx1200\tx2400\tx4450\plain\f2\fs20 * Adapted from "Simulation Using GPSS", by Thomas J. Schriber \par * A Gas Station Problem \par * \par *Loc Operation A,B,C,D,E,F,G Comments \par * \par * Non-Standard Random Number Sequence Initialization \par * \par RMULT 111 ;Set random number seed for RN1 \par * \par * Function Definitions \par * \par Iat FUNCTION RN1,C7 ;Inter-arrival time distribution \par 0,0/.25,100/.48,200/.69,300/.81,400/.9,500/1,600 \par Stime FUNCTION RN1,C7 ;Service time distribution \par 0,100/.06,200/.21,300/.48,400/.77,500/.93,600/1,700 \par * \par * Storage Capacity Defination \par * \par Store1 STORAGE 1 ;Configure for 1-attendant case \par * \par * Define Variable \par * \par Net VARIABLE SC$store1-75-30#R$Store1 \par * \par * Model Segment 1 \par * \par GENERATE FN$Iat,,,,1 ;Cars approach station \par GATE LR Lock ;Station open \par ASSIGN 1,FN$Stime ;Set P1 = latent service time \par TEST LE Q1,Store1,Bybye ;No. waiting <= no. in service? \par * if not go bybye \par Goin QUEUE 1 ;Yes, get in line \par ENTER Store1 ;Capture and attendant \par DEPART 1 ;Get out of line \par PRIORITY 2 ;Raise priority to resolve \par * potential arrival/departure tie \par ADVANCE P1 ;Servicing proceeds \par Done LEAVE Store1 ;Free the attendant \par Bybye TERMINATE ;Leave the station \par * \par * Model Segment 2 \par * \par GENERATE 43200 ;Closeup time, owner arrives \par LOGIC S Lock ;Set 'not open' signal \par TEST E N$Goin,N$Done ;Wait until last car is serviced \par SAVEVALUE 1,V$Net ;Record day's net profit \par TERMINATE 1 ;Go home \par \par \par }