SAS Optimization, and SAS Simulation Studio

turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

01-27-2011 09:00 AM

Has anyone modeled a non-stationary arrival process in SAS Simulation Studio?

I am currently modeling a 24/7 call center process with non-stationary arrival and service rates. The assumption is that the inter-arrival and service times follow exponential distributions. However, their expected values change every 30 minutes. As I understood, SAS Simulation Studio does not allow modeling non-stationary processes since the "numeric source block" allows to sample from statistical distributions with constant parameters only. To overcome this limitation, I am trying to use the "thinning process" described in the following book:

W.R. Kelton, R.P. Sadowski and D.A. Sadowski "Simulation With Arena", 1998, WCB/McGraw-Hill, ISBN 0-07-027509-2, p.259.

The essense of the above mentioned "thinning" is to create entities/arrivals with the max arrival rate (let's say the max rate of 48 half hour periods as we estimate one arrival rate per 30 min). Then, we need to "thin out" some of the entities based on the 30 min period when that particular entity was created. So, with probability of Rate(j)/MaxRate we pass the entities into the system and with probability of (1-Rate(j)/MaxRate) we discard them, where j is the jth 30 min period in a day. We can read the 48 arrival rates from a SAS data file. However, since SAS Sim. Studio 1.5 does not allow one to define arrays of variables, for each arrived entity, I have to iteratively read all the Rate(j)s up to the one that corresponds to the j when the entity arrived. I have created a separate logic where the 30 min period is calculated based on simulation time and passed to module where I have to read Rate(j).

My question is: could you give me some hints on how to model this thinning process? Is there a way for reading from a SAS dataset only the Rate(j) that corresponds to jth 30 min period?

Thank you in advance!

I am currently modeling a 24/7 call center process with non-stationary arrival and service rates. The assumption is that the inter-arrival and service times follow exponential distributions. However, their expected values change every 30 minutes. As I understood, SAS Simulation Studio does not allow modeling non-stationary processes since the "numeric source block" allows to sample from statistical distributions with constant parameters only. To overcome this limitation, I am trying to use the "thinning process" described in the following book:

W.R. Kelton, R.P. Sadowski and D.A. Sadowski "Simulation With Arena", 1998, WCB/McGraw-Hill, ISBN 0-07-027509-2, p.259.

The essense of the above mentioned "thinning" is to create entities/arrivals with the max arrival rate (let's say the max rate of 48 half hour periods as we estimate one arrival rate per 30 min). Then, we need to "thin out" some of the entities based on the 30 min period when that particular entity was created. So, with probability of Rate(j)/MaxRate we pass the entities into the system and with probability of (1-Rate(j)/MaxRate) we discard them, where j is the jth 30 min period in a day. We can read the 48 arrival rates from a SAS data file. However, since SAS Sim. Studio 1.5 does not allow one to define arrays of variables, for each arrived entity, I have to iteratively read all the Rate(j)s up to the one that corresponds to the j when the entity arrived. I have created a separate logic where the 30 min period is calculated based on simulation time and passed to module where I have to read Rate(j).

My question is: could you give me some hints on how to model this thinning process? Is there a way for reading from a SAS dataset only the Rate(j) that corresponds to jth 30 min period?

Thank you in advance!

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content

04-13-2011 11:28 PM

Hi,

I believe you might be able to solve the problem using selector group just after the number generator.

Regards,

Murphy

I believe you might be able to solve the problem using selector group just after the number generator.

Regards,

Murphy