Head (before)

Performance issues with closed loop & shelf life — Simul8 Community Forum

Head (after)

Ask the SIMUL8 Community

Content (before)

Performance issues with closed loop & shelf life

Created at
in Community support

Hi - I'm trying to model our adult social work review cycle. I have about 5000 clients as work items. They follow a closed loop through a planned review activity (which is replicated 147 times to match our FTE social work resource). The work items need to be held in a queue until their review is due, and I want to count those overdue at regular intervals. There's a label to control shelf life which is reset after review, and a label to count the numbers of reviews each client receives in total.
I've read before that using shelf life is very inefficient for large numbers of work items, but the performance I'm getting is extremely poor. Unusable really. I'm trying to do a 10 year run and it took more than 5 hours without completing a run last night. I could develop with a smaller sample client base but it's really not ideal.
So my questions are:
1. Is there any alternative to shelf life to hold work items in a queue for fixed amounts of time before moving them on? Could I set a date or time value in a label and move items out using visual logic? I'm not aware of a way to have the visual logic look through all items in a queue on a regular basis, check for a criteria and then perform some action. That seems like a gap in functionality. Many of the models I've tried to develop for adult social work suffer the same problems - I want to model work items that change between different states very slowly over time, or proportions of them will follow different pathways at random. But I can't find a way to do this without hitting these performance issues.
2. Is there anything that can be done about these performance issues? I can't develop the model with it running so slowly.
Any help appreciated - thanks,
Giles Robinson – Data Scientist
Sheffield City Council
Business Intelligence Team


  • Was this answer helpful?


    Update: this is definitely due to the shelf life. If I disable shelf life on my "awaiting review" queue it runs for 2 years in about 1 second. With shelf life enabled it takes over 30 minutes for a 2 year run. Clearly this is a bug! I'm not working with crazy numbers of work items here, performance is completely unacceptable, it makes the shelf life practically unusable.

  • BetweenComments (1)

  • Was this answer helpful?


    Try using a workcenter to hold the items until a review is required. What do you do in the current model when the shelf life is expired? Does it just move to another queue now waiting for work? Can you provide a description of what you model looks like. There are more efficient ways of "delaying" activity.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Attach file
Attach image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file

Content (after)