Jump to content
Simio Forum

Welcome to the Simio Forum

Welcome to the Simio Forum! Experience the full experience of the forum by becoming a Simio Insider! You must be an Insider to post on any forum!

Click_Here_button.png

New Software Release

Our latest release, Simio 11, is here!

rthiesing

Administrator
  • Content Count

    94
  • Joined

  • Last visited

Community Reputation

0 Neutral

About rthiesing

  • Rank
    Vice President of Strategic Alliances

Converted

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I would recommend reading up on State Statistics (Definitions Window) in the Help because that will likely meet your needs.
  2. This might not meet your needs exactly but hopefully it can provide some ideas that can help you move forward. You can use the Work Schedules in Simio and the Value column in these schedules, to dictate which Server the worker should go to during that hour. This example also uses the Evaluate Seize Attempt process on the Worker so that the Worker rejects all of the jobs that are not at the appropriate Server. If you wanted to Subclass the Server, you could add a Property to it and then check to see if the current Schedule Value matches the property on the Server, instead of using the Server names, like this example does. WorkerHourlyRotation.spfx
  3. Yes, you can reference a model state within the ModelEntity logic. In order to do this, the ModelEntity object will need to be aware of the model's state variable and to do this, you must create a property on the ModelEntity object definition. The property should be a State Property and this can be found under the list of Standard Properties. Within the ModelEntity's process logic, you would use this new State Property to pull in the latest value of that state. When you place down an instance of the ModelEntity into the Facility window of the Model, you will need to populate that new State Property on the ModelEntity instance with the model state that you want to "send into" the ModelEntity's logic.
  4. Adam, I have attached a small model where you can easily test out your Task Sequence numbers and see if you've constructed them correctly. There is a data table where you can list your tasks and the sequence number you've assigned. This data table contains two state columns that record the starting and ending time of each task. This should provide a nice way to test out your sequence numbering. I tweaked your sequencing numbers from the last example you submitted and saved it in this test model that is attached. Take a look and see if this is what you were expecting and if not, perhaps this model will be helpful as you try and construct the correct numbering scheme. This was built in version 132. TestYourTaskSequence.spfx
  5. I've attached a document which contains a general algorithm that can be used to create Task Sequences in Simio. Task Sequence Diagram Labeling Algorithm.docx
  6. You would need to use an Add On Process to assign the current Task Name to a String State and then use that String State in the Status Label. Each task has a property with two Add On Process triggers so you can make assignments right before or after the task begins.
  7. You will need to add an Object Reference Property onto your submodel and have your seize step point to that property. When you place the submodel into the other model, you'll indicate which population of worker that particular submodel should seize by populating the value of that Object Property with the worker population.
  8. I'd recommend that you look into the DbConnect User Defined element, which can be found under User Defined in the Elements ribbon, in the Definitions window. The steps DbQuery, DbRead and DbWrite all work with this user defined Element. They can be found in the Processes window, under the User Defined category of Steps.
  9. I would suggest that you create four new States in the model, one for each type of entity, to keep track of the number of each type that have entered the InputBuffer of Workstation2. Next, create another column in your table that is a StateProperty column. Populate this column with the four new States that you created. In the State Assignment property of Workstation2, in the OnEntered assignment, you can increment the appropriate State by simply setting the State Variable Name to Table1.StateProperty and the New Value to Table1.StateProperty + 1. Because the appropritate row is already set in the table, Simio will know which State variable to update, depending on what type of entity has just entered the Workstation.
  10. Industrial Case Studies Track at WinterSim 2014 This is an opportunity for professionals across all industries to share real world simulation projects and learn how simulation is increasing productivity and efficiencies in business today. Do you have a simulation project that you’d like to share with your colleagues but you do not have time to write an entire paper? Or perhaps you missed the paper submission deadline for the Winter Simulation Conference (WSC) 2014? If you can summarize the project in a short 2 page abstract and a brief 30 minute presentation, then you should submit an extended abstract to the Industrial Case Studies track! If your case study is selected, it will appear in the final program of WSC, on the WSC Archive website and you will have the opportunity to present your case study at this year’s conference in Savanah, Georgia. The Industrial Case Studies Track serves as a multidisciplinary forum for professionals to share what they have learned modeling real world problems using simulation. The abstract should, at a minimum, describe the problem, the simulation methods used, the results, and the impact/benefits of the project. Find a link to the submission site here: http://wintersim.org/2014/authors.html Abstracts can be submitted beginning June 1, 2014. The deadline for submissions is August 18, 2014. Questions can be directed to the Track Coordinator, Renee Thiesing at rthiesing@simio.com
  11. Unless I'm mistaken, it sounds like you might just want to delete the queue so the animation doesn't appear when an entity is in the queue. If you do not want entities to appear in the Processing queue when they are being processed, you can just delete the queue so that the animation does not appear. This will not delete the actual queue/station itself, but just the animation of the entities in that queue.
  12. The difference between Copy to Edit and Subclassing from the library is that when a change is made to the original object's definition, an object that was copied is not updated with the new changes in the original object's definition. Whereas a subclassed object will inherit the changes to all processes that were not "overridden". There are some items in the object that are greyed out and cannot be overwritten when it’s been subclassed. In this case, the only way to change these things is use the Copy To Edit functionality.
  13. The Server is currently set up to look at the table to find it's processing time, but you haven't told the server which row to look at in the table. Therefore, you need to put some logic into the model to check the current value of the model property and based on that value, set the correct row in the table. One example for how to do this would be to create an Add On Process in the "Run Initialized" Add On Process Trigger of the Server. In this process, you would place a Search step that searches that Table. It would have a Match Condition of rpUserOption == tabUserOptionInfo.UserOption so that it finds the row that matches the current value of the model property. And then you would create a new State variable and put that State variable in the Save Index Found property of the Search step. This will save off the row number. Place a Set Row step in the original segment leaving the Search Step and put the State Variable into the Row Number property so that you are setting the correct row for that Server object. Thank you
  14. What appears to be happening is that both the original token leaving the Original segment and the new token, leaving the Found segment, are both associated with the same Entity and therefore the Transfer Steps are trying to transfer the same entity. This is shown in the Trace when it says which entity it is trying to transfer. Therefore, when the second Transfer step attempts the transfer, it says that it cannot transfer because the entity is already in the middle of being transferred. It is difficult to determine why the process logic is having both tokens transfer the same entity, but the first thing I would suggest that you check is whether or not the Search step is finding the correct entity during it's search. Or if you are using the Entity Type property of the Transfer Step to transfer a specific entity, you might look to make sure you are transferring the correct entity.
  15. The small step that you are missing is in addition to assigning acceleration, you also need to assign an acceleration duration. This is done by assigning a value to "Modelentity.Movement.AccelerationDuration". Let us know if you have additional questions on this.
×
×
  • Create New...