Cancel
Showing results for 
Search instead for 
Did you mean: 

Worker Sharing - Workerpool

Creator
Creator

I have been working on the plant simulation for about a year now and m good with programming , so any small guidance will be a great help

I am looking to play with WORKER, objective is to share worker whenever they are free.

let us say there are 2 station, 2 worker (simple model). i want to use worker to share load whenever possible i.e if station 1 is working and worker 1 is working on it , now when worker 2 becomes free, it should join the station 1 to help worker 1 finish the job..ie this should reduce the processing time of station 1 (as 2 persons are working on it).

 

i am currently using (<path>.imp.stopprocessing) and workerpool Onentrance, Onexit method and worker.efficiency. but struggling to make it happen.

 

any guidance or approach will be helpful

 

 

13 REPLIES

Re: Worker Sharing - Workerpool

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor
I guess one critical step is to start the process with the changed parameters.
One approach could be (entrance control of workerpool):
- read the remaining proctime of the part
- block the exit of the predecessor
- calculate the new procTime (part.remainingProcTime /2) and change the serviceTable of the importer
- trigger the end of the process (e.g. outIn) --> waituntil resWorking=false --> move the part back to the same station --> new process starts --> 2 worker are requested --> less procTime
- unlock exit of the predecessor
Steffen Bangsow
freelance simulation specialist  
web: www.bangsow.eu
mail: steffen@bangsow.net

Re: Worker Sharing - Workerpool

Creator
Creator

thanks for the reply steffen, i thought of this approach also.

this will make broker to not fullfill the request of the other station (2, lets say) since we have already assigned the worker to station 1 (as worker was free for sometime)

 

 

Re: Worker Sharing - Workerpool

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor
you could use the broker import request control to correct a "wrong" decision (same way)...
Steffen Bangsow
freelance simulation specialist  
web: www.bangsow.eu
mail: steffen@bangsow.net

Re: Worker Sharing - Workerpool

Creator
Creator

if you have some free time ,

can you look at this code

objective is to use worker whenever free and never missed a service request from any station.

Re: Worker Sharing - Workerpool

Creator
Creator

does the .stopprocessing ...resumes process from where it left OR it starts from 0 sec.

Re: Worker Sharing - Workerpool

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor
see help and have a look in the attribute remainingProcTime of the MU --> the station is set to waiting for an importer, it doesn't start at 0 again (it is also impossible to recalculate the remaining proctime or change the number of required services in this state)
Steffen Bangsow
freelance simulation specialist  
web: www.bangsow.eu
mail: steffen@bangsow.net

Re: Worker Sharing - Workerpool

Creator
Creator

in my code  when i stop a station using .imp.stopprocessing. it will return the worker to workerpool and at exit i am increasing worker's eff. to 200

Re: Worker Sharing - Workerpool

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor
okay, this is also a way, but this causes some problems with the worker statistics (e.g. required number of worker...)
Steffen Bangsow
freelance simulation specialist  
web: www.bangsow.eu
mail: steffen@bangsow.net

Re: Worker Sharing - Workerpool

Creator
Creator

thanks..can you help me with code in my example...appreciate your help

the Only logic i am using is ...stop the processing when any worker returns...onworkpool entrance

 

recalculate the worker efficiency's ---onworkpoolexit