MIDDLE EAST TECHNICAL UNIVERSITY I
E
3
7
2
–
S
I
M
U
L
Term Project: Waste Transfer Station Part I
Group Name: Jelkala Burcu Yüzüak Fatoş İlbi Onur Yılmaz
May 2011, Ankara
A
T
I
O
N
Table of Contents PAGE Table of Contents ....................................................... ............................................................................................................. ......................................................
1
I. Introduction ……………………………………………………………………………………………………………… 2 II. Report …….………............................................................................................................
3
1. Statement of the Problem .............................................................. ........................................................................................ ..........................
3
2. Structure of the Model ………….................................................................................
3
2.1 Attributes ……………..........................................................................................
3
2.2 Variables …………………………………………………………………………………………………….. 4 2.3 Modules ……………………….……………….............................………………………………… 6 3. Model …..……………………………………………………………………………………………………………… 8 3.1 Assumptions …………………................................................................................. 8 3.2 Input Analysis ………….......................................................................................
9
3.2 Model Frame ……………………………………………………………………………………………… 10 3.3 Experiment Frame …………………………............................………………………………… 16 4. Pilot Run Results …....................................................……………………………………………
20
4.1 Verification ……………………………….………………………………………………………………… 20 4.2 SIMAN Summary Report …………..………………………………………………………………… 22 4.3 Alternative Scenarios ……………….…………………………………………………………………
26
III. Conclusion ………………………………………………………………………………………………………………
27
1
I.
Introduction
In the project, a transfer station for waste management is simulated. First of all, this report includes statement of the problem which gives detailed information about the problem and the idea behind the model construction. Then, structure of the model is given for showing the details by giving the definitions of attributes and variables used, and explaining the distinguishable modules of the model. Following these, the report includes assumptions made while constructing the model, experiment and model frames frames and input analysis done in order to fit the given data of arrival times of small trucks that transports loads to the transfer station. In addition to these, verification of the model which is done by using SIMAN Summary Report can also be found. Finally, in order to satisfy the goals of the management, management, initial thoughts on alternative scenarios are summarized which will be studied in Part II of the project in detail.
2
II. Report 1. Statement of the Problem In this term project there is a problem environment which includes a transfer station for waste management which operates continuously. The purpose of the station is to gather and then decompose waste contents and transfer them to related warehouses. The main objective of the transfer station is to operate with the limit of 180 minutes for keeping unit loads of remaining waste at the station. Since, this is a business environment; the second aim is that the station must attain a profit that pays back the investment in two years. In order to find any bottlenecks of the station that prevents it from achieving these goals a simulation model is constructed. Our model approach is based on answering “How should a single load visit all the process areas in the station with using the
minimum computer time and memory? ” Therefore, model is constructed considering each process area individually and then sending/receiving messages messages between them to form a flow. Identifying any problems related to station, it is tried to answer the question “How this station could reach these goals?” by developing alternative scenarios using the available resources and considering operational
changes.
2. Structure of the Model 2.1 Attributes
Attributes can be gathered into three groups as only related to single loads, related to removal operations and the others.
PaperAmount PlasticAmount GlassAmount OrganicAmount MetalAmount RestOfLoad
Paper amount in a single load, which is uniformly distributed between 5 kg and 10 kg Plastic amount in a single load, which is uniformly distributed between 30 kg and 40 kg Glass amount in a single load, which is uniformly distributed between 10 kg and 20 kg Organic amount in a single load, which is uniformly distributed between 5 kg and 20 kg Metal amount in a single load, which is uniformly distributed between 1 kg and 5 kg Rest of the load which is calculated by subtracting sum of all above amounts from 100 kg, which is the weight of a single load 3
RemovedPlasticAmount
RemovedOrganicAmount
RemovedGlassAmount RemovedPaperAmount
Amount of plastic removed (in kg) after plastic removal operations, calculated using the initial plastic amount and efficiency of the t he station Amount of organic removed (in kg) k g) after organic removal operations, calculated using the initial organic amount and efficiency of the station Amount of glass removed (in kg) after glass removal operations, operations, calculated using the initial glass amount and efficiency of the station Amount of paper removed (in kg) after paper removal operations, calculated using the initial paper amount and efficiency of the t he station
RemovedMetalAmount RemovedMetalAmount attribute is not used in the model since the entire metal amount is removed in the metal gatherer. ArrivalTime ZipperArrival NumberofLoads OrganicLife OrganicVsCompost
Arrival time of the small trucks which are carrying waste loads Time when all removal operations are completed and only remaining waste is left in a single load Number of loads which is carried by the small trucks, calculated using ANINT(UNIF(10,30)) ANINT(UNIF(10,30)) function in Arena Age of organic waste when the small trucks arrive at the station, uniformly distributed between 1 and 2 days Decides whether the organic waste removed will be counted as organic or as compost, assigned by checking the organic life when the t he trucks arrive at the station for collecting organic waste amount.
2.2 Variables
All variables end with “ -RemovedOnHand” are used to trace the storage level of the related
content. This variable is used in order to check whether or not the “sending warehouse limit” is reached for the related content.
All variables tabulated as “TotalXRemoved” are used in o rder to trace the total amount of removal for the related content. With the same approach, all variables starting with “Ear ningsOn-”
are used to trace the sale revenues made on the related content.
4
MetalRemovedOnHand TotalMetalRemoved EarningsOnMetal
Amount of metal removed (in kg) and stored in metal storage area Total amount of metal removed (in kg) in the system Total profit made on metal removal (in $)
PlasticRemovedOnHand TotalPlasticRemoved EarningsOnPlastic
Amount of plastic removed (in kg) and stored in glass storage area Total amount of plastic removed (in kg) in the system Total profit made on plastic removal (in $)
GlassRemovedOnHand TotalGlassRemoved EarningsOnGlass
Amount of glass removed (in kg) and stored in glass storage area Total amount of glass glass removed (in kg) in the system Total profit made on glass removal (in $)
TotalPaperRemoved EarningsOnPaper
Total amount of paper removed (in kg) in the system Total profit made on paper removal (in $)
TotalOrganicRemoved OrganicSent CompostSent EarningsOnOrganic EarningsOnCompost
Total amount of organic removed (in kg) in the system Total amount of organic waste (in kg) which is sent as organic material Total amount of organic waste (in kg) which is sent as compost Total profit made on organic material (in $) Total profit made on compost (in $)
RemainingWasteOnHand TotalRemainingWasteRemoved CostOfLandFilling
SellingPrice LandfillCost
1 dimensional array which holds all selling prices of all types of contents (in $ / kg) Cost of disposing one kg of remaining waste to the landfill area ($ 0.32 /kg)
ConveyorSize DeportingTime WarehouseSendingLimit NumberOfManualProcessArea WorkersIn1 WorkersIn2
Amount of remaining waste removed (in kg) and stored in the storage area Total amount of remaining remaining waste removed removed (in kg) in the system Total cost of disposing the remaining waste to landfill l andfill area (in $)
Total available space limit on the conveyor (9 units as given) Time it takes to unload one load of waste from truck (1.2 minutes as given) 1 dimensional array which holds the threshold amount (in kg) of different types of contents for sending warehouse Number of manual process areas in the system (2 areas as given) Number of workers in the first group in manual process area (10 workers as given) Number of workers in the second group in manual process area (10 workers as given)
5
2.3 Modules
In this part, distinguishable parts of the simulation model are described for clarity:
Small Trucks Porting: First of all, “input analyzer” is used to fit the past data of small truck interarrivals to a
distribution and the best distribution is found. After a truck is created, number of loads in the truck and age of the organic material in the loads of the truck are assigned according to distributions specified in the project. Then these trucks are sent to port queue to wait for a port to become available. When a port becomes available the truck seizes the port and unloads the waste it carries which takes “1.2 minutes” times “Number of loads in the truck”.
Transforming into Loads and Assigning Waste Content: “Duplicate” block is used to transform the trucks into loads and then paper, metal, plastic,
glass and organic amounts are assigned to each load according to distributions specified. Then by subtracting these amounts from 100 kg, remaining waste amount is found and total loads entering the system is counted to be able to trace the entities after the model is run.
Crane: After being counted, loads enter the crane queue to wait for the crane to become available. As soon as the crane becomes available it picks up a load and waits for the conveyor to become available, i.e. have an available space. The crane counter counts the number of loads entering the crane. If the counter is less than 10, namely for the first 9 loads, then the crane puts the load directly on the conveyor. On the other hand, if the counter is greater than 10, then availability of the conveyor is checked and the load is put on the conveyor after conveyor becomes becomes available.
Conveyor: If the entering load is not the 9th load on the conveyor, then the load enters the conveyor’s entrance dummy queue waiting for a signal given when number of loads on the conveyor becomes nine. If the entering load is the 9th load on conveyor then it gives a signal and the first load entered the conveyor’s entrance dummy queue is released. If the metal gatherer is empty then the conveyor drops the load. Otherwise, the load enters the conveyor’s exit dummy queue waiting for a signal
6
given when the metal gatherer becomes available. After this signal comes, conveyor drops the load and the load seizes the metal gatherer.
Metal Gatherer: The duration of the gathering process is assigned as specified in the project. If a manual process area is available then the load releases the metal gatherer by giving signal to the conveyor that releases a load from the conveyor’s dum my queue. If all manual process areas are busy, then the load enters “DummyQ2” waiting for a signal which is given when an area becomes available. After the load releases the metal gatherer, “Total Metal Removed” and “Metal Removed on Hand”
variables are updated. If metal removed on hand exceeds the warehouse limit, then sent to warehouse by decreasing the metal removed on hand to zero and releasing manual process area. Otherwise the load just releases the manual process area and then it is counted for the number of loads entering the manual process area.
Manual Process Area: Using the given formulas in the project, removal time of materials by each worker group and percent removed for each material are calculated once and “Expressions” element is used in order to
let the model run efficiently.
Plastic and Glass Removal: After plastic and glass are removed, “Plastic Removed on Hand” and “Total Plastic Removed” variables; and “Removed Plastic Amount” attribute are updated. If plastic removed on hand exceeds
the warehouse limit, then plastic removed on hand is decreased to zero, total revenue is calculated and plastic is sent to warehouse. With the same approach used in the plastic removal, glass removal operations, variable and attribute updates are conducted.
Paper and Organic Removal: After paper and organics are removed, “Removed Paper Amount” attributes and “Total Paper Removed” variables are updated and paper is sold and total revenue is calculated. Then “Removed Organic Amount” and “Total Organic Removed” are updated and manual process area is
released by giving signal to metal gatherer after counting the number of loads leaving the manual process area. Then the load is duplicated, one of them goes to zipper and one of them enters to the organic waste queue which waits organic trucks that come once in 36 hours. If age of the organic is
7
more than 3 (assigned by using the attribute “Organic Life” and the tally that calculates the time
passed after the load entered the system) then it becomes compost and sold, otherwise it is sold as an organic. Then total revenues earned from compost and organic are calculated.
Zipper: After “Remaining Waste On Hand” is updated, if it is less than 100 kg then the load enters the “End Queue” waiting for a signal coming when remaining waste on hand becomes greater than 100.
If remaining waste on hand is greater than 100, then a signal is given so loads waiting in the “End Queue” are released and disposed. At his time the zipper is seized and a 2 minute -delay occurs. After “Total Remaining Waste Removed” is calculated, zipper is released and the cost of disposing the
remaining waste to the landfill area is calculated.
3. Model 3.1 Assumptions
These assumptions are made when a simulation model is constructed for the given problem:
First of all, when plastic, glass or paper removals are to leave the station to another warehouse, it is assumed that the trucks can carry all the removals which is accumulated. For instance, considering plastic amount, when accumulated level reaches 1000, all plastic amount will be carried without any consideration about how larger the accumulated value than 1000. Since contents of single loads, which are given in uniform distribution levels, are very small when compared to 1000, it is acceptable to assume that all accumulated value can be carried at once.
Secondly, since in the first part of the project it is only asked to model this environment, number of workers and resources are taken as given and they are only considered in the alternative scenarios.
8
Thirdly, since any length of the simulation is not given, and the steady state does not seem possible with given system features, the replication length is chosen according to where we run out of entities due to ARENA’s license agreement and limitations. l imitations.
Fourthly, past 500 interarrival data for trucks are used for calculating the interarrival time of the trucks in the following planning horizon. In other words, it is assumed that in the following periods, trucks will be arriving with the theoretical distribution which is calculated from past data.
3.2 Input Analysis
As mentioned in the assumptions above, small truck arrivals are found by using the past data of 500 interarrivals. Using the given “.dst” file in Arena’s Input Analyzer following output is retrieved:
Function
Sq Error
------------------------------Gamma 0.00141 Distribution: Gamma Weibull0.0016 Erlang 0.00223 Expression: GAMM(27.8, 1.07) Exponential 0.00223 Beta 0.00361 Square Error: 0.001411 Lognormal 0.006 Normal 0.0483 Triangular 0.0791 Uniform 0.123 Gathered from the output of Arena Input Analyzer Distribution Summary
As can be seen from the output, the best theoretical distribution which fits to given past data is Gamma distribution with the given parameters. Therefore, Therefore, interarrival distribution for small trucks is used as what is i s taken from Input Analyzer’s output.
9
3.2 Model Frame
0$
CREATE,
1:GAMM(27.8,1.07):MARK(Arri 1:GAMM(27.8,1.07):MARK(ArrivalTime):NEXT( valTime):NEXT(64$); 64$);
64$ 1$
COUNT: ASSIGN:
4$ 5$
QUEUE, SEIZE,
SmallTruckEnter,1; SmallTruckEnter,1; NumberofLoads=ANINT(UNIF(10 NumberofLoads=ANINT(UNIF(10,30)): ,30)): OrganicLife=UNIF(24*60,48*60); PortQ; 1,Other: Port,1:NEXT(2$);
2$
DELAY:
DeportingTime*NumberofLoads DeportingTime*NumberofLoads,,Other:NEXT(6 ,,Other:NEXT(6$); $);
6$ 3$
RELEASE: DUPLICATE:
Port,1; NumberofLoads-1,ContentAssig NumberofLoads-1,ContentAssignment:NEXT(Con nment:NEXT(ContentAssignmen tentAssignment); t);
ContentAssignment ContentAssignment ASSIGN:
PaperAmount=UNIF(5,10): PaperAmount=UNIF(5,10): MetalAmount=UNIF(1,5): PlasticAmount=UNIF(30,40): GlassAmount=UNIF(10,20): OrganicAmount=UNIF(5,20); 25$ ASSIGN: RestOfLoad=100RestOfLoad=100(PlasticAmount+PaperAmount+M (PlasticAmount+PaperAmount+MetalAmount+Gla etalAmount+GlassAmount+Organ ssAmount+OrganicAmount); icAmount); 36$ COUNT: LoadsEnteredSystem,1; LoadsEnteredSystem,1; 55$ QUEUE, CraneQ; 8$ SEIZE, 1,Other: Crane,1:NEXT(37$); 37$
DELAY:
2,CraneStorage,Other:NEXT(5 2,CraneStorage,Other:NEXT(56$); 6$);
56$
COUNT:
CraneC,1; 10
9$
BRANCH,
CraneRelease Conveyor 58$
RELEASE: QUEUE, SEIZE,
ConveyorBranch BRANCH, Equal9 Dummyy 54$
SIGNAL: QUEUE, WAIT:
CheckMetGath
BRANCH,
ReleaseConveyor ReleaseConveyor RELEASE: MetalGath SEIZE,
1: If,NC(CraneC)<10,CraneRelease,Yes: If,NR(ConveyorR)>=8,CraneDummy,Yes; Crane,1; Conveyor; 1,Other: ConveyorR,1:NEXT(ConveyorBranch); 1: If,NR(ConveyorR)==9,Equal9,Yes: Else,Dummyy,Yes; 9; Dummy; 9,1:NEXT(CheckMetGath); 9,1:NEXT(CheckMetGath); 1: If,NR(MetalGatherer)==0,Rel If,NR(MetalGatherer)==0,ReleaseConveyor,Y easeConveyor,Yes: es: If,NR(MetalGatherer)==1,Conv If,NR(MetalGatherer)==1,ConvDummy,Yes; Dummy,Yes; ConveyorR,1; 1,Other: MetalGatherer,1:NEXT(7$);
7$
DELAY:
UNIF(2,2+MetalAmount),,Othe UNIF(2,2+MetalAmount),,Other:NEXT(13$); r:NEXT(13$);
13$
BRANCH,
1:
If,NR(ManualProcessArea)
ManualProcess SEIZE,
34$ 14$
COUNT: DELAY:
Always,ManualProcess,Yes: If,MetalRemovedOnHand>=Ware If,MetalRemovedOnHand>=WarehouseSendingLi houseSendingLimit(1),MetalWa mit(1),MetalWarehouse,Yes; rehouse,Yes; 1,Other: ManualProcessArea,1:NEXT(34$); ManuelEnter,1; ManuelEnter,1; DelayExp*(PlasticAmount+Gla DelayExp*(PlasticAmount+GlassAmount),,Oth ssAmount),,Other:NEXT(26$); er:NEXT(26$);
26$ ASSIGN: PlasticRemovedOnHand=Plastic PlasticRemovedOnHand=PlasticRemovedOnHand+ RemovedOnHand+PlasticAmount* PlasticAmount*EfficiencyExp( EfficiencyExp(1): 1): RemovedPlasticAmount=Plasti RemovedPlasticAmount=PlasticAmount*Effici cAmount*EfficiencyExp(1): encyExp(1): TotalPlasticRemoved=TotalPla TotalPlasticRemoved=TotalPlasticRemoved+Pl sticRemoved+PlasticAmount*Ef asticAmount*EfficiencyExp(1) ficiencyExp(1); ; 15$ BRANCH, 2: If,PlasticRemovedOnHand>=War If,PlasticRemovedOnHand>=WarehouseSendingL ehouseSendingLimit(2),Plasti imit(2),PlasticWarehouse,Yes cWarehouse,Yes: : Always,RemoveGlass,Yes; PlasticWarehouse PlasticWarehouse ASSIGN: EarningsOnPlastic=EarningsOn EarningsOnPlastic=EarningsOnPlastic+Plasti Plastic+PlasticRemovedOnHand cRemovedOnHand*SellingPrice( *SellingPrice(2); 2); 27$ ASSIGN: PlasticRemovedOnHand=0; PlasticRemovedOnHand=0; 50$ DISPOSE: No; RemoveGlass
ASSIGN:
16$
BRANCH,
TotalGlassRemoved=TotalGlas TotalGlassRemoved=TotalGlassRemoved+Glass sRemoved+GlassAmount*Efficie Amount*EfficiencyExp(2): ncyExp(2): RemovedGlassAmount=GlassAmo RemovedGlassAmount=GlassAmount*Efficiency unt*EfficiencyExp(2): Exp(2): GlassRemovedOnHand=GlassRem GlassRemovedOnHand=GlassRemovedOnHand+Gla ovedOnHand+GlassAmount*Effic ssAmount*EfficiencyExp(2); iencyExp(2); 2: If,GlassRemovedOnHand>=Ware If,GlassRemovedOnHand>=WarehouseSendingLi houseSendingLimit(2),GlassWa mit(2),GlassWarehouse,Yes: rehouse,Yes: Always,PaperOrganic,Yes;
GlassWarehouse ASSIGN: EarningsOnGlass=EarningsOnGl EarningsOnGlass=EarningsOnGlass+((GlassRemo ass+((GlassRemovedOnHand)*Sel vedOnHand)*SellingPrice(3)); lingPrice(3)); 30$ ASSIGN: GlassRemovedOnHand=0; GlassRemovedOnHand=0; 52$ DISPOSE: No; 12
PaperOrganic
DELAY:
DelayExp*(PaperAmount+Organ DelayExp*(PaperAmount+OrganicAmount),,Oth icAmount),,Other:NEXT(31$); er:NEXT(31$);
31$
ASSIGN:
RemovedPaperAmount=PaperAmou RemovedPaperAmount=PaperAmount*EfficiencyE nt*EfficiencyExp(3): xp(3): TotalPaperRemoved=TotalPape TotalPaperRemoved=TotalPaperRemoved+Paper rRemoved+PaperAmount*Efficie Amount*EfficiencyExp(3); ncyExp(3);
32$ ASSIGN: EarningsOnPaper=EarningsOnPa EarningsOnPaper=EarningsOnPaper+((RemovedP per+((RemovedPaperAmount)*Se aperAmount)*SellingPrice(4)) llingPrice(4)):NEXT(RemoveOr :NEXT(RemoveOrganic); ganic); RemoveOrganic ASSIGN:
RemovedOrganicAmount=Organi RemovedOrganicAmount=OrganicAmount*Effici cAmount*EfficiencyExp(4): encyExp(4):
TotalOrganicRemoved=TotalOrg TotalOrganicRemoved=TotalOrganicRemoved+Or anicRemoved+OrganicAmount*Ef ganicAmount*EfficiencyExp(4) ficiencyExp(4); ; 35$ COUNT: ManuelLeave,1; ManuelLeave,1; 18$ RELEASE: ManualProcessArea,1; ManualProcessArea,1; 47$ TALLY: TimeAtStation,INT(ArrivalTi TimeAtStation,INT(ArrivalTime),1; me),1; 19$ SIGNAL: 8; 17$ DUPLICATE: 1,Zipper:NEXT(OrganicWasteQ 1,Zipper:NEXT(OrganicWasteQ); ); OrganicWasteQ 39$ 43$ 44$
QUEUE, WAIT: ASSIGN: BRANCH,
OrganicWasteQueue; OrganicWasteQueue; 1,NQ(OrganicWasteQueue); 1,NQ(OrganicWasteQueue); OrganicVsCompost=((OrganicL OrganicVsCompost=((OrganicLife+TNOW-Arriva ife+TNOW-ArrivalTime)<=3*24*6 lTime)<=3*24*60); 0); 1: If,OrganicVsCompost==1,Orga If,OrganicVsCompost==1,OrganicSending,Yes nicSending,Yes: : Else,CompostSending,Yes;
OrganicSending ASSIGN: EarningsOnOrganic=EarningsOn EarningsOnOrganic=EarningsOnOrganic+Remove Organic+RemovedOrganicAmount dOrganicAmount*SellingPrice( *SellingPrice(5): 5): OrganicSent=OrganicSent+Rem OrganicSent=OrganicSent+RemovedOrganicAmo ovedOrganicAmount; unt; 46$ TALLY: TimeWhenOrganicOrCompost,IN TimeWhenOrganicOrCompost,INT(ArrivalTime) T(ArrivalTime),1; ,1; 45$ DISPOSE: No; CompostSending ASSIGN: EarningsOnCompost=EarningsOn EarningsOnCompost=EarningsOnCompost+Remove Compost+RemovedOrganicAmount dOrganicAmount*SellingPrice( *SellingPrice(6): 6): CompostSent=CompostSent+Rem CompostSent=CompostSent+RemovedOrganicAmo ovedOrganicAmount:NEXT(46$); unt:NEXT(46$); Zipper
ASSIGN:
RemainingWasteOnHand= 13
RemainingWasteOnHand+RestOf RemainingWasteOnHand+RestOfLoad+(PlasticA Load+(PlasticAmountmountRemovedPlasticAmount)+(Glass RemovedPlasticAmount)+(GlassAmount-RemovedG Amount-RemovedGlassAmount)+(P lassAmount)+(PaperAmountaperAmountRemovedPaperAmount)+(Organic RemovedPaperAmount)+(OrganicAmount-RemovedO Amount-RemovedOrganicAmount) rganicAmount) :MARK(ZipperArrival); 20$ BRANCH, 1: If,RemainingWasteOnHand>=10 If,RemainingWasteOnHand>=100,Zip,Yes: 0,Zip,Yes: Else,DisposalOfLoadEntity,Yes; Zip ASSIGN: RemainingWasteOnHand=Remain RemainingWasteOnHand=RemainingWasteOnHandingWasteOnHand-100; 100; 63$ SIGNAL: 55; 22$ SEIZE, 1,Other: Zipper,1:NEXT(23$); 23$
DELAY:
2,,Other:NEXT(49$); 2,,Other:NEXT(49$);
49$ ASSIGN: TotalRemainingWasteRemoved= TotalRemainingWasteRemoved=TotalRemaining TotalRemainingWasteRemoved+1 WasteRemoved+100; 00; 24$ RELEASE: Zipper,1; 48$ TALLY: TimeWhenZipped,INT(ArrivalT TimeWhenZipped,INT(ArrivalTime),1; ime),1; 60$ TALLY: ZippingInterval,TNOW-ZipperA ZippingInterval,TNOW-ZipperArrival,1; rrival,1; 33$ ASSIGN: CostOfLandfilling=CostOfLand CostOfLandfilling=CostOfLandfilling+100*La filling+100*LandfillCost:NEX ndfillCost:NEXT(DisposalOfLoa T(DisposalOfLoadEntity); dEntity); DisposalOfLoadEntity DisposalOfLoadEntity QUEUE, 61$ WAIT: 62$ TALLY: 21$ DISPOSE:
EndQueue; 55; ZippingInterval,INT(ZipperA ZippingInterval,INT(ZipperArrival),1; rrival),1; No;
MetalWarehouse ASSIGN: EarningsOnMetal=EarningsOnMe EarningsOnMetal=EarningsOnMetal+(MetalRemov tal+(MetalRemovedOnHand)*Sell edOnHand)*SellingPrice(1); ingPrice(1); 29$ ASSIGN: MetalRemovedOnHand=0; MetalRemovedOnHand=0; 51$ DISPOSE: No; DummyQ2 12$
QUEUE, WAIT:
DummyQ2; 8,1:NEXT(ReleaseMetalGather 8,1:NEXT(ReleaseMetalGatherer); er); 14
ConvDummy 53$
QUEUE, WAIT:
ConveyorDummy; 7,1:NEXT(ReleaseConveyor); 7,1:NEXT(ReleaseConveyor);
CraneDummy 57$
QUEUE, SEIZE,
DummyQ; 1,Other: ConveyorR,1:NEXT(59$);
59$
RELEASE:
Crane,1:NEXT(ConveyorBranch Crane,1:NEXT(ConveyorBranch); );
38$
CREATE,
1,36*60:36*60:NEXT(40$); 1,36*60:36*60:NEXT(40$);
40$ 42$ 41$
SIGNAL: COUNT: DISPOSE:
1,NQ(OrganicWasteQueue); 1,NQ(OrganicWasteQueue); OrganicTruckLeft,1; OrganicTruckLeft,1; No;
15
3.3 Experiment Frame
PROJECT,
"IE372 - Term Project","Jelkala",,Yes,No,N Project","Jelkala",,Yes,No,No,No,No,No,No, o,No,No,No,No,No,No,No,No; No,No,No,No;
ATTRIBUTES:
PlasticAmount,DATATYPE(Real): NumberofLoads,DATATYPE(Real): OrganicLife,DATATYPE(Real): OrganicVsCompost,DATATYPE(Real): RemovedPaperAmount,DATATYPE(Real): PaperAmount,DATATYPE(Real): RestOfLoad,DATATYPE(Real): GlassAmount,DATATYPE(Real): RemovedOrganicAmount,DATATYPE(Real): RemovedGlassAmount,DATATYPE(Real): ArrivalTime,DATATYPE(Real): OrganicAmount,DATATYPE(Real): MetalAmount,DATATYPE(Real): RemovedPlasticAmount,DATATYPE(Real): ZipperArrival,DATATYPE(Real);
STORAGES:
CraneStorage;
VARIABLES:
8,MetalRemovedOnHand,CLEAR(System),CATEGORY("None-None"),DATATYPE(Real): 9,TotalMetalRemoved,CLEAR(Sy 9,TotalMetalRemoved,CLEAR(System),CATEGORY stem),CATEGORY("None-None"),D ("None-None"),DATATYPE(Real): ATATYPE(Real): 10,EarningsOnMetal,CLEAR(Sys 10,EarningsOnMetal,CLEAR(System),CATEGORY( tem),CATEGORY("None-None"),DA "None-None"),DATATYPE(Real): TATYPE(Real): 11,PlasticRemovedOnHand,CLEA 11,PlasticRemovedOnHand,CLEAR(System),CATE R(System),CATEGORY("None-None GORY("None-None"),DATATYPE(Re "),DATATYPE(Real): al): 12,TotalPlasticRemoved,CLEAR 12,TotalPlasticRemoved,CLEAR(System),CATEG (System),CATEGORY("None-None" ORY("None-None"),DATATYPE(Rea ),DATATYPE(Real): l): 13,EarningsOnPlastic,CLEAR(Sy 13,EarningsOnPlastic,CLEAR(System),CATEGORY stem),CATEGORY("None-None"), ("None-None"),DATATYPE(Real) DATATYPE(Real): : 14,GlassRemovedOnHand,CLEAR( 14,GlassRemovedOnHand,CLEAR(System),CATEGO System),CATEGORY("None-None") RY("None-None"),DATATYPE(Real ,DATATYPE(Real): ): 16
15,TotalGlassRemoved,CLEAR(S 15,TotalGlassRemoved,CLEAR(System),CATEGOR ystem),CATEGORY("None-None"), Y("None-None"),DATATYPE(Real) DATATYPE(Real): : 16,EarningsOnGlass,CLEAR(Syst 16,EarningsOnGlass,CLEAR(System),CATEGORY(" em),CATEGORY("None-None"),DA None-None"),DATATYPE(Real): TATYPE(Real): 17,TotalPaperRemoved,CLEAR(S 17,TotalPaperRemoved,CLEAR(System),CATEGOR ystem),CATEGORY("None-None"), Y("None-None"),DATATYPE(Real) DATATYPE(Real): : 18,EarningsOnPaper,CLEAR(Sys 18,EarningsOnPaper,CLEAR(System),CATEGORY( tem),CATEGORY("None-None"),DA "None-None"),DATATYPE(Real): TATYPE(Real): 19,TotalOrganicRemoved,CLEAR( 19,TotalOrganicRemoved,CLEAR(System),CATEGO System),CATEGORY("None-None" RY("None-None"),DATATYPE(Rea ),DATATYPE(Real): l): 20,OrganicSent,CLEAR(System) 20,OrganicSent,CLEAR(System),CATEGORY("Non ,CATEGORY("None-None"),DATATY e-None"),DATATYPE(Real): PE(Real): 21,CompostSent,CLEAR(System) 21,CompostSent,CLEAR(System),CATEGORY("Non ,CATEGORY("None-None"),DATATY e-None"),DATATYPE(Real): PE(Real): 22,EarningsOnCompost,CLEAR(Sy 22,EarningsOnCompost,CLEAR(System),CATEGORY stem),CATEGORY("None-None"), ("None-None"),DATATYPE(Real) DATATYPE(Real): : 23,EarningsOnOrganic,CLEAR(S 23,EarningsOnOrganic,CLEAR(System),CATEGOR ystem),CATEGORY("None-None"), Y("None-None"),DATATYPE(Real) DATATYPE(Real): : 24,TotalRemainingWasteRemove 24,TotalRemainingWasteRemoved,CLEAR(System d,CLEAR(System),CATEGORY("No ),CATEGORY("None-None"),DATAT ne-None"),DATATYPE(Real): YPE(Real): 25,RemainingWasteOnHand,CLEA 25,RemainingWasteOnHand,CLEAR(System),CATE R(System),CATEGORY("None-None GORY("None-None"),DATATYPE(Re "),DATATYPE(Real): al): 26,CostOfLandFilling,CLEAR(S 26,CostOfLandFilling,CLEAR(System),CATEGOR ystem),CATEGORY("None-None"), Y("None-None"),DATATYPE(Real) DATATYPE(Real): : ConveyorSize,CLEAR(System),C ConveyorSize,CLEAR(System),CATEGORY("None-N ATEGORY("None-None"),DATATYPE one"),DATATYPE(Real),9: (Real),9: SellingPrice(6),CLEAR(System SellingPrice(6),CLEAR(System),CATEGORY("No ),CATEGORY("NoneneNone"),DATATYPE(Real),2.55,0 None"),DATATYPE(Real),2.55,0.05,0.76,0.28, .05,0.76,0.28,0.17,0.10: 0.17,0.10: LandfillCost,CLEAR(System),C LandfillCost,CLEAR(System),CATEGORY("None-N ATEGORY("None-None"),DATATYPE one"),DATATYPE(Real),0.32: (Real),0.32: DeportingTime,CLEAR(System), DeportingTime,CLEAR(System),CATEGORY("NoneCATEGORY("None-None"),DATATYP None"),DATATYPE(Real),1.2: E(Real),1.2: WarehouseSendingLimit(2),CLE WarehouseSendingLimit(2),CLEAR(System),CAT AR(System),CATEGORY("NoneEGORY("NoneNone"),DATATYPE(Real),300,1000: NumberOfManualProcessArea,CL NumberOfManualProcessArea,CLEAR(System),CA EAR(System),CATEGORY("None-No TEGORY("None-None"),DATATYPE( ne"),DATATYPE(Real),2: Real),2: WorkersIn1,CLEAR(System),CAT WorkersIn1,CLEAR(System),CATEGORY("None-Non EGORY("None-None"),DATATYPE(R e"),DATATYPE(Real),10: eal),10: WorkersIn2,CLEAR(System),CAT WorkersIn2,CLEAR(System),CATEGORY("None-Non EGORY("None-None"),DATATYPE(R e"),DATATYPE(Real),10; eal),10; QUEUES:
EndQueue,FirstInFirstOut,,AUTOSTATS(Yes,,): OrganicWasteQueue,FirstInFir OrganicWasteQueue,FirstInFirstOut,,AUTOSTA stOut,,AUTOSTATS(Yes,,): TS(Yes,,): ConveyorDummy,FirstInFirstOut ConveyorDummy,FirstInFirstOut,,AUTOSTATS(Ye ,,AUTOSTATS(Yes,,): s,,): Dummy,FirstInFirstOut,,AUTOS Dummy,FirstInFirstOut,,AUTOSTATS(Yes,,): TATS(Yes,,): DummyQ,FirstInFirstOut,,AUTO DummyQ,FirstInFirstOut,,AUTOSTATS(Yes,,): STATS(Yes,,): PortQ,FirstInFirstOut,,AUTOS PortQ,FirstInFirstOut,,AUTOSTATS(Yes,,): TATS(Yes,,): Conveyor,LowValueFirst(Arriv Conveyor,LowValueFirst(ArrivalTime),,AUTOST alTime),,AUTOSTATS(Yes,,): ATS(Yes,,): DummyQ2,FirstInFirstOut,,AUT DummyQ2,FirstInFirstOut,,AUTOSTATS(Yes,,): OSTATS(Yes,,): CraneQ,FirstInFirstOut,,AUTO CraneQ,FirstInFirstOut,,AUTOSTATS(Yes,,); STATS(Yes,,); 17
RESOURCES: 1,CompostTruck,Capacity(1),, 1,CompostTruck,Capacity(1),,Stationary,COS Stationary,COST(0.0,0.0,0.0) T(0.0,0.0,0.0),,AUTOSTATS(Ye ,,AUTOSTATS(Yes,,),EFFICIENC s,,),EFFICIENCY(1,): Y(1,): 2,OrganicTruck,Capacity(1),, 2,OrganicTruck,Capacity(1),,Stationary,COS Stationary,COST(0.0,0.0,0.0) T(0.0,0.0,0.0),,AUTOSTATS(Ye ,,AUTOSTATS(Yes,,),EFFICIENC s,,),EFFICIENCY(1,): Y(1,): 4,Port,Capacity(2),,Stationa 4,Port,Capacity(2),,Stationary,COST(0.0,0. ry,COST(0.0,0.0,0.0),,AUTOST 0,0.0),,AUTOSTATS(Yes,,),EFF ATS(Yes,,),EFFICIENCY(1,): ICIENCY(1,): 5,Crane,Capacity(1),,Station 5,Crane,Capacity(1),,Stationary,COST(0.0,0 ary,COST(0.0,0.0,0.0),,AUTOST .0,0.0),,AUTOSTATS(Yes,,),EFF ATS(Yes,,),EFFICIENCY(1,): ICIENCY(1,): 6,Worker,Capacity(20),,Stati 6,Worker,Capacity(20),,Stationary,COST(0.0 onary,COST(0.0,0.0,0.0),,AUT ,0.0,0.0),,AUTOSTATS(Yes,,), OSTATS(Yes,,),EFFICIENCY(1,) EFFICIENCY(1,): : 7,ManualProcessArea,Capacity 7,ManualProcessArea,Capacity(2),,Stationar (2),,Stationary,COST(0.0,0.0 y,COST(0.0,0.0,0.0),,AUTOSTA ,0.0),,AUTOSTATS(Yes,,),EFFI TS(Yes,,),EFFICIENCY(1,): CIENCY(1,): 8,Zipper,Capacity(1),,Statio 8,Zipper,Capacity(1),,Stationary,COST(0.0, nary,COST(0.0,0.0,0.0),,AUTO 0.0,0.0),,AUTOSTATS(Yes,,),E STATS(Yes,,),EFFICIENCY(1,): FFICIENCY(1,): 9,MetalGatherer,Capacity(1), 9,MetalGatherer,Capacity(1),,Stationary,CO ,Stationary,COST(0.0,0.0,0.0 ST(0.0,0.0,0.0),,AUTOSTATS(Y ),,AUTOSTATS(Yes,,),EFFICIEN es,,),EFFICIENCY(1,): CY(1,): ConveyorR,Capacity(9),,Stati ConveyorR,Capacity(9),,Stationary,COST(0.0 onary,COST(0.0,0.0,0.0),,AUTO ,0.0,0.0),,AUTOSTATS(Yes,,),E STATS(Yes,,),EFFICIENCY(1,) FFICIENCY(1,); ; COUNTERS:
LoadsEnteredSystem,,Replicate: ManuelLeave,,Replicate,"cikanlar.dat": SmallTruckEnter,,Replicate: ManuelEnter,,Replicate: CraneC,,Replicate: OrganicTruckLeft,,Replicate;
TALLIES:
TimeWhenZipped: TimeWhenOrganicOrCompost: ZippingInterval: TimeAtStation,"TimeAtStation.dat";
DSTATS:
8,TotalMetalRemoved: 9,MetalRemovedOnHand: 10,EarningsOnMetal: 11,TotalPlasticRemoved: 18
12,PlasticRemovedOnHand: 13,EarningsOnPlastic: 14,TotalGlassRemoved: 15,GlassRemovedOnHand: 16,EarningsOnGlass: 17,TotalPaperRemoved: 18,EarningsOnPaper: 19,TotalOrganicRemoved: 20,TotalRemainingWasteRemoved: 21,RemainingWasteOnHand: 22,CostOfLandfilling: 24,CompostSent: 25,EarningsOnCompost: 26,OrganicSent: 27,EarningsOnOrganic: 45,NC(ManuelLeave),,"outs.dat": NQ(OrganicWasteQueue): NSTO(CraneStorage): NQ(CraneQ): NQ(Dummy): NR(ConveyorR): NR(MetalGatherer): NR(ManualProcessArea): NR(Crane): NQ(Conveyor); OUTPUTS:
NC(ManuelLeave),"outputdavg.dat";
REPLICATE,
1,0.0,(24*60*30),Yes,Yes,0.0,,,24.0,Minutes,No,No,,,No,No;
EXPRESSIONS: DelayExp,DATATYPE(Native),0.12/LOG(11): EfficiencyExp(4),DATATYPE(Na EfficiencyExp(4),DATATYPE(Native),(1-(0.6/1 tive),(1-(0.6/10)),(1-(1.8/10 0)),(1-(1.8/10)),(1-(0.3/10) )),(1-(0.3/10)),(1),(1(0.7/10)); 19
4. Pilot Run Results
4.1 Verification
■
Number of trucks arrived to facility and the loads flowing in the facility should be consistent:
SmallTruckEnter x Expected Number of Loads = LoadsEnteredSystem LoadsEnteredSystem
Theoretical Number of trucks arrived (1)
1420
Expected number of loads per truck (2)
20
Expected number of loads ported (3)
28400
Number of single loads entered the waste removal area
■
Output Results
Explanation
E[UNIF (10,30)] 28237
(1) x (2)
10012
Every load entered the system should be traceable:
LoadsEnteredSystem LoadsEnter edSystem =
NQ(CraneQ) + NR(Crane) + NR(Conveyor) + NR(MetalGatherer) NR(MetalGather er) + NR(ManualProcessArea NR(ManualProcessArea)) + Number of entities left the station
28237 = 18224 + 1 + 9 + 1 + 2 + 10000
■
Our model works correctly, in other words our model is valid to investigate such system, because the results are consistent with the statistical expectations expectations before any simulation run:
20
Theoretical Number of trucks arrived (1) Expected number of loads per truck (2) Expected number of loads ported (3) Number of single loads entered the waste removal area (4) Expected total metal amount removed (5) Expected total plastic amount removed (6) Expected total organic removed (7) Expected organic shipped to warehouse (8)
Output Results
Explanation
1420 20 28400
E[UNIF (10,30)] 28237
(1) x (2)
10012 30036
30117
(4) x E[UNIF(1,5)]
329394,8
329030
(4) x E[UNIF(30,40)] x (1-0,6/10)
116389,5
116160
(4) x E[UNIF(5,20)] x (1-0,7/10)
93111,6
4776,2
(7) x E(UNIF(1,2)+UNIF(0,1.5) <= 3 ) *
* It is assumed that the time spent in the removal area is very small when compared compared to a day.
Only the last value is not consistent, this is because, in the real model there are long queues before any lot enter the waste removal area. Therefore, usually, the three day limit for the organic wastes, which will be sent to warehouse, has been already exceeded even when the lot is picked by the crane.
21
4.2 SIMAN Summary Report
ARENA Simulation Results Department of Industrial Engineering Summary for Replication 1 of 1
Project: IE372
Run execution date : 5/19/2011
Analyst: Jelkala
Model revision date: 5/19/2011
Replication ended at time
: 43200.0 Minutes
Base Time Units: Minutes TALLY VARIABLES Identifier Average Half Width Minimum Maximum Observations _______________________________________________________________________________________________ TimeWhenZipped
13502.
(Corr)
58.987
27288.
3286
TimeWhenOrganic OrCompost
14579.
(Corr)
1432.8
27986.
10000
ZippingInterval
7.1233
.03084
.19669
23.740
13283
TimeAtStation
13500.
(Corr)
49.726
27296.
10000
22
DISCRETE-CHANGE VARIABLES
Identifier
Average
Half Width
Minimum
Maximum
Final Value
___________________________________________________________________________________________________
TotalMetalRemov ed
15034.
(Corr)
.00000
30117.
30117.
MetalRemovedOnH and
148.89
2.0517
.00000
299.99
254.26
EarningsOnMetal
37957.
(Insuf)
.00000
76151.
76151.
TotalPlasticRem oved
1.6426E+05 (Corr)
.00000
3.2903E+05 3.2903E+05
PlasticRemovedO nHand
491.25
2.4305
.00000
999.92
915.30
EarningsOnPlast ic
8188.5
(Corr)
.00000
16405.
16405.
TotalGlassRemov ed
61346.
(Corr)
.00000
1.2301E+05 1.2301E+05
GlassRemovedOnH and
495.85
5.1399
.00000
999.79
162.08
EarningsOnGlass
46246.
(Insuf)
.00000
93362.
93362.
TotalPaperRemov ed
36492.
(Corr)
.00000
73003.
73003.
EarningsOnPaper
10217.
(Corr)
.00000
20440.
20440.
TotalOrganicRem oved
58103.
(Corr)
.00000
1.1616E+05 1.1616E+05
TotalRemainingW asteRemoved
1.6405E+05 (Corr)
.00000
3.2860E+05 3.2860E+05
RemainingWasteO nHand
49.900
.00000
99.990
.51058
84.056 23
CostOfLandfilli ng
52497.
(Corr)
.00000
1.0515E+05 1.0515E+05
CompostSent
50680.
(Insuf)
.00000
1.1139E+05 1.1139E+05
EarningsOnCompo st
5068.0
(Insuf)
.00000
11138.
11138.
OrganicSent
4531.0
(Insuf)
.00000
4776.2
4776.2
EarningsOnOrgan ic
770.28
(Insuf)
.00000
811.96
811.96
NC(ManuelLeave)
4993.2
(Corr)
.00000
10000.
10000.
NQ(OrganicWaste Queue)
249.83
(Corr)
.00000
504.00
.00000
NSTO(CraneStora ge)
.46355
.00100
.00000
1.0000
1.0000
NQ(CraneQ)
8809.7
(Corr)
.00000
18226.
18224.
NQ(Dummy)
7.9945
(Corr)
.00000
8.0000
8.0000
NR(ConveyorR)
8.9936
(Corr)
.00000
9.0000
9.0000
NR(MetalGathere r)
.99911
(Corr)
.00000
1.0000
1.0000
NR(ManualProces sArea)
1.8678
.00552
.00000
2.0000
2.0000
NR(Crane)
.99953
(Corr)
.00000
1.0000
1.0000
NQ(Conveyor)
.00000
(Insuf)
.00000
.00000
.00000
24
COUNTERS Identifier Count Limit _____________________________________________________________ LoadsEnteredSys tem
28237
Infinite
ManuelLeave
10000
Infinite
1420
Infinite
ManuelEnter
10002
Infinite
CraneC
10012
Infinite
20
Infinite
SmallTruckEnter
OrganicTruckLef t
OUTPUTS Identifier Value _____________________________________________________________ NC(ManuelLeave)
10000.
Simulation run time: 0.02 minutes. Simulation run complete.
25
4.3 Alternative Scenarios
According to our simulation outputs and observations, the main problem is the huge accumulation accumulation in the storage area before the crane. Given the situation, the time limit of 180 minutes seems unattainable. Although, true utilization of the crane is near 50%, there is a large queue preceding it. This is because; succeeding stations works at almost full utilization levels. Therefore, main purpose of the improvements that could be done on the system should be about increasing resource capacities.
Rather than increasing number or capacities of all resources at once, considering step by step improvements is a more advisable way due to management’s consideration about the compensation
of the investment within two years. Namely, for instance, one should consider the effects of hiring more workers for the manual process area and duplicating the numbers of the manual process areas by considering both the additional income that firm generate and the cost of the implementation for the company in two cases. The main benefit of increasing number of workers will be that the more workers will gather more collected waste in less time, due to efficiency and time expressions used in the model. Therefore, increase in the worker level at different process areas could yield different profit margins and this should also be considered.
Moreover, there are such details that can be missed. Such as, increasing numbers of or the capacity of conveyors would not be so effective because they are succeeded by a station (metal gatherer) that operates at near full capacity. Also, considering buying a conveyor and a metal gatherer could be more effective rather than just buying one of them. Therefore, such relations among the resources of the facility should be taken into account while deciding on the policy that will be followed.
In addition to those resource re source capacity improvements, improvements, some other options could be beneficial for the profit margins of the firm. Firstly, for instance, separation of the organic could be done at a more upstream station if it is possible, so that the rate of organic waste that turning into compost, which has a lower profit margin, is reduced and sales to the power plant would be increase. Considering organic waste, although it is not mentioned, decreasing interarrival time of the trucks
26
could also increase the level of organic waste sent to power plant. Secondly, it is obvious that the station operates continuously but process areas operate discretely, in other words, one load at one time. If this discrete flow could change into a “more” continuous flow after loads are entered to
system, station could benefit more. For instance, when second group of workers are collecting, the first group of workers are idle in manual process area.
III. Conclusion
To conclude, it could be stated that the aim of the Part I of the project was to find alternative scenarios to the given problem by using a simulation model and its’ output. With this aim, this report
gives the problem situation and then the structure of the model which is constructed to simulate the problem environment. Frames and outputs of the model with the assumptions are presented and in the next part, the model is tried to be verified v erified with statistical and numerical methods. methods. In Part II of the project, the alternative scenarios scenarios which are given in the last part of this t his report will be examined and the optimal one will be chosen.
27