worker ride

General Simio discussions. THIS IS *NOT* A GOOD PLACE FOR SUPPORT QUESTIONS.
To limit spam this and all Public Forums have very limited ability to attach files. We recommend that support issues and more technical topics be initiated inside one of the Simio Insider (SI) forums below where you can attach your model and see example solutions. See above Welcome forum to join Simio Insiders.
Post Reply
msalemip
Posts: 24
Joined: Fri May 13, 2016 2:30 pm

worker ride

Post by msalemip » Tue Sep 27, 2016 7:48 pm

Hi

I am using a worker as a transporter as well as a service provider at one server. I want to know how I can access the worker ride when the worker is transporting someone. For example assume the worker is transporting one entity on a path, I want to create a process for the worker that enters the path, and get access to the ride of the worker (the entity which is currently riding using the worker).

Any help is appreciated.

Thanks;

gocken
Posts: 151
Joined: Tue Aug 02, 2011 1:59 pm

Re: worker ride

Post by gocken » Wed Sep 28, 2016 10:03 am

u can search the contents of ridestation by using search step...

msalemip
Posts: 24
Joined: Fri May 13, 2016 2:30 pm

Re: worker ride

Post by msalemip » Wed Sep 28, 2016 4:55 pm

I am not sure how I can search the content of a ridestaton.I do not see this feature in the search step.
In general, I wanted to use a decide step and decide whether the ride (entity) on the worker has a specific state variable and based on that change the speed of the worker. But I can not access the ride on the worker. I thought it should be easy but I do not see the option.

gocken
Posts: 151
Joined: Tue Aug 02, 2011 1:59 pm

Re: worker ride

Post by gocken » Wed Sep 28, 2016 5:46 pm

You should use search step. In search step set the Collection Type to "queueState" and Queue State Name to "Worker.RideStation.Contents". Then you should enter matching criteria (what you are looking for, any state of the entities on ridestation). If the search is succesful then you should change the speed of the worker by an assign step otherwise nothing more to do.

msalemip
Posts: 24
Joined: Fri May 13, 2016 2:30 pm

Re: worker ride

Post by msalemip » Wed Sep 28, 2016 6:11 pm

Thank you so much for your reply. But in my Simio, there is no "worker.ridestation.contents" option in Queue State Name.
The only available options are: :(
worker.allocationQueue
worker.batchmemeber
worker.batchmemeber.volume
worker.batchmemeber.volume.rate
worker.batchmemeber.wight
worker.batchmemeber.wight.rate
worker.visitrequestqueue

dsturrock
Simio Team Member
Posts: 1452
Joined: Thu Mar 13, 2008 12:35 pm
Location: Sewickley, PA USA
Contact:

Re: worker ride

Post by dsturrock » Wed Sep 28, 2016 8:18 pm

To start with, if you place the default worker, you will see a green line between his hands - that is the ride station (e.g. the queue state animating the contents of the station where entities ride). If you click on that line in the properties window you will see it identified (in the context of the worker). You can cut and paste that, or simply retype it into the search field. It would look like Worker1.RideStation.Contents where Worker1 is the instance name of the object you placed.

In Simio pull down lists, not every possible option is always listed. You can try typing something you think should be acceptable and Simio will tell you if it is not.

Looking back a couple posts, I see what you actually wanted to do was decide something based on a state of the riding entity. If you only have a single entity or you are only interested in the first entity, then there is a much simpler way than using Search - just use dot notation to navigate the object hierarchy from the worker to its station to its first entity to its state. For example to decide based on priority > 5, on the condition field of a Decide you might use:
Worker1.RideStation.Contents.FirstItem.ModelEntity.Priority > 5
Dave Sturrock
VP Operations, Simio LLC

gocken
Posts: 151
Joined: Tue Aug 02, 2011 1:59 pm

Re: worker ride

Post by gocken » Thu Sep 29, 2016 2:08 pm

a very good expression --> Worker1.RideStation.Contents.FirstItem.ModelEntity.Priority > 5.
and It would be better if the user was allowed to search entire contents for the condition expressed. For example: Worker1.RideStation.Contents.ItemAtIndex( index ).ModelEntity.Priority > 5 expression should return true or false after the contents of the ridestation is checked for the experssion in one go.

Worker1.RideStation.Contents.ItemAtIndex( . ).ModelEntity.Priority > 5 --> "." instead of "index" means all of the contents should be considered for the expression to be true or false. Once the expression is justified it returns true else false.

dsturrock
Simio Team Member
Posts: 1452
Joined: Thu Mar 13, 2008 12:35 pm
Location: Sewickley, PA USA
Contact:

Re: worker ride

Post by dsturrock » Thu Sep 29, 2016 4:52 pm

I think "Worker1.RideStation.Contents.ItemAtIndex( index ).ModelEntity.Priority > 5" should work fine as long as index is a valid integer. You could use that expression in a process loop or a Math.If() expression. But as soon as you start indexing through a series of those, perhaps the Search would work better.
Dave Sturrock
VP Operations, Simio LLC

msalemip
Posts: 24
Joined: Fri May 13, 2016 2:30 pm

Re: worker ride

Post by msalemip » Thu Sep 29, 2016 5:50 pm

Great. Thank you for your explanation.

Post Reply