Ilario Posted April 7, 2017 Share Posted April 7, 2017 Hi everybody Not sure if opening a new topic is the best way, but I did not manage to find (even with Search) a discussion on the possibility to create fixed objects (servers, workstations or objects of fixed class) in a dynamic way. Here is what I mean: Entity enters the model if(the needed fixed object exists) -> entity is routed to that object else a new fixed object is created entity is routed to that object I tried the Create step in a process, but as far as I can go this step creates an Agent type of object. I'd appreciate any suggestions, ideas, feedback - thanks people! Link to comment Share on other sites More sharing options...
dsturrock Posted April 7, 2017 Share Posted April 7, 2017 Only dynamic objects (Entities, Workers, and Vehicles) can be created during a run. Fixed objects cannot be dynamically created. But you can add capacity to a fixed object. Let's say you need up to 10 units of Server available, but you want to enable them only as needed. --The easiest approach might be to design your model with a single Server with capacity 0 (off-shift), then assign it's capacity (increment by one) every time you need more. This is appropriate for something like a ticket agent station where you bring agents on and off staff as needed. --If you need your servers to be independent, then place 10 different Servers, each with a capacity of 0 (off-shift). Then, when you need to add another server, find one that is still at capacity 0 and change it to capacity 1 (on-shift). You don't say what prompts the dynamic creation, but perhaps you can use schedules to implement either of the above. Sometimes it is possible to use an entity like a server. You can dynamically create an entity and put it somewhere, like a Storage. Then you can seize and release that entity. But you can't flow through a dynamic object. Link to comment Share on other sites More sharing options...
Ilario Posted April 8, 2017 Author Share Posted April 8, 2017 Thanks Dave. I need dynamic creation of fixed objects (servers, workstations) for a data driven model of manufacturing processes. The data, structured in an external table contains (in general) the following information for each item to be produced: - the sequence of workstations through which the item needs to pass - processing times data - batch quantities When running the model, it reads the data from the table and implements the logic I had described below. In short - the data contains not only processing sequences and times but also builds the model of the manufacturing system. Ofcourse - the assumption that transport times from one workstation to the other in this case is 0. I don't know if I was clear... Link to comment Share on other sites More sharing options...
dsturrock Posted April 8, 2017 Share Posted April 8, 2017 We usually use the word dynamic to mean at runtime (while you are running the model). What you are looking for is building the model at model design time (while you are building the model). Yes, you can create any object during design time. Look in the Shared Items or API folder for the spreadsheet import files. In recent software you can also find some model building during import on the Table ribbon. Link to comment Share on other sites More sharing options...
Ilario Posted April 8, 2017 Author Share Posted April 8, 2017 Dave - it's Saturday and I see you are here to help such newcomers to Simio like me ! Yes - I do mean creating fixed object at run time (while the model is running). But I will try also your suggestion below. Hey - have a wonderful day! Thanks again. Link to comment Share on other sites More sharing options...
dsturrock Posted April 8, 2017 Share Posted April 8, 2017 Weekends and evenings are for doing fun stuff like helping users solve modeling problems. But if the table already contains all the information you need, then why not create the model just BEFORE you hit run instead of AFTER? It doesn't sound like it makes a lot of difference in the process flow, but it makes a lot of difference to Simio. Link to comment Share on other sites More sharing options...
Ilario Posted April 9, 2017 Author Share Posted April 9, 2017 Yes, the external table has all the needed info. But I want to be flexible in using those tables for modelling production processes. Meaning - for modelling one production process I might needed 5 workstations, whereas when modelling another process I might need only 2. And my idea is when the model runs, based on the info in the table the model dynamically creates the needed number of workstations. A work-around is to create a model with N workstations, where N is sufficiently large to cover potential needs of workstations. Some years ago I was using Awesim (guess you know that system based on SLAM). In Awesim if an entity needed a resource and that resource was not existing, the system will automatically create and instance of the Resource node, thus allowing for dynamic creation of resources in the model. All this was packed in the sub-network functionality of Awesim. Anyway - guess the work-around approach will do me the job I need. Thanks for your time Dave! Link to comment Share on other sites More sharing options...
tulach Posted April 9, 2017 Share Posted April 9, 2017 YOu have the same capability in simio. Just create as many workstations you need and constrain them with resources. Resources are dynamicaly created in simio, so you can create a new if resource in a resource population if needed. Link to comment Share on other sites More sharing options...
Ilario Posted April 9, 2017 Author Share Posted April 9, 2017 Thanks Petr - will try this approach! Nice day Link to comment Share on other sites More sharing options...
Recommended Posts