Jump to content
Simio Forum

Leaderboard

Popular Content

Showing content with the highest reputation since 03/08/2020 in all areas

  1. Hi Shu, I think you may want to try Station1.ItemAtIndex(1).is.DefaultEntity. It will return 1 if true, 0 if false. Hope this helps, Lucas.
    2 points
  2. Hello, I have attached a model to demonstrate my approach to this problem. I utilized states and add-on processes to manage the ride capacity of the Vehicle, and a table reference to define the ride capacity required for each entity type. Thanks, Ryan Varying Entity Ride Capacity.spfx
    2 points
  3. If the station that you are searching is filled with Users with a entity reference property that holds the order you should use: Candidate.User.Entity_Reference_State_Variable == The_Order_Entity That would also explain the Error, Simio is saying that you specified the candidates as Orders but the entity found in the station is of type User, and therefore an error has occurred. Now if the order has an entity state variable that holds the user you could use a Create step to create a new token with the Order.User_state_variable as the new associated object and create the
    1 point
  4. Hi everyone I have a simple model (let’s say one source, one server, and one sink). Is the following process possible using Simio: Call Simio e.g. via API or command line or some other program (e.g. R or Python). Start a simulation using an external data source or arrivals and rosters (which is imported to Simio automatically in step 1.) Return a file which contains ALL system state changes, e.g. (T = Time) T = 0 Object ID = 1 Event = arrived T = 1 Object ID = 2 Event = arrived T = 3 Object ID = 1 Event = tran
    1 point
  5. Thanks to you both. Anyway, the approach that I understood the most, it was Mauricio's and I found it really useful.
    1 point
  6. Hi, There is not a direct function to access how much Processing Time is left for an entity in the Processing Station, however you can use a workaround that I have attached in a model. The ability to access the function you are referring to in your post is on our Product Backlog, but not being able to access the direct function makes this difficult to achieve. Once you save off the time remaining in a ModelEntity level State Variable, you can use a separate process to compare the value to the "certain amount" that it could exceed and then perform other steps following that.
    1 point
  7. Hi Milad, It seems like you want to Subclass the vehicle object and add a new state to it. Cheers, Lucas.
    1 point
  8. Hello Mauricio, Your model is a good approach but it is incomplete because I explained myself a little wrong: What I really meant was that the server the entity came from should not start its processing time. Anyway, thanks for the effort. In case anyone is wondering a similar question, I attach the solution i came up with in a even more complex version. block.spfx
    1 point
  9. Sebastian, I don't know if this is what you need, but maybe if you change the paths to connectors and set the 4th server input buffer to 0 it might work. rds. block_test1.spfx
    1 point
  10. try simproj format , read it in user manual...basically xml stuff..
    1 point
  11. A demo model on how to create sub-classed object with moving part, collect stats and show on dashboard. Have fun! ParkingEntryAndExitBoomGates.spfx
    1 point
  12. Hi All, Are their any tricks available to run experiments at a faster rate. currently I run 9 scenarios with 30 replications and it takes hours to Run. Any suggestion would be helpful. Thanks, Regards, Unmesh
    1 point
  13. Today, I found this topic talks about updating data in real-time when simulation is running. I thought it could be useful for me in the future so I decided to try it myself. But, when I used the Read/ExcelRead Step, I found it only "read" the external file at the first time: It seems the Read Step creates a copy of the external file at the first read and then it will use the copy for the future reads within the simulation. For example, at the start of my simulation, I used a button to call ExcelRead Step to read a excel file. Then, I manually changed some values in the excel
    1 point
  14. Hi, Our team at SET did some work and we now have a tool to easily convert Arena Distributions. Feedback is appreciated and we hope his help in the process of moving Arena models to Simio. DistributionsSimioToArena.xlsm
    1 point
  15. Hi, Your issue is that Input@STBR_01_54 is a reference to a Simio object. You want to write out the string name of the object. You should use Input@STBR_01_54.Name Regards, Lucas
    1 point
  16. Please find the solution. CreateEntities.spfx
    1 point
  17. Power BI & Simio Webinar - May 2020 Enhancing your Simio Results using Power BI MORE INFO AND REGISTRATION About the Webinar Simulation modeling has many benefits, namely its ability to forecast and predict multiple scenarios. Simio does an incredible job of providing the user with incredible results, and Power BI enhances these results with useful insights and visualizations. This webinar will provide the benefits of using Power BI for Simio outputs, optimizing your analytics, and giving you a better understanding for decision-making purposes. What will be co
    1 point
  18. Hi Alban, you trigger entered add-on process of transfernode1 and use a set node step to set entities' destinations. Examine the attached model, in this model I set the prob of sink 1, sink 2 and sink 3 as 0.1, 0.3, and 0.6, respectively. In order to check whether set node step is working properly I set max arrivals property of source 1 to 1000. If you examine the results a number of 101 entities entered sink 1, 310 entered sink 2 and 589 entered sink 3 which is as expected. Select destination from a nodelist with probabilistic decision making.spfx
    1 point
  19. since exclusion property checks the expression at the start of the simulation run to determine if this step should be excluded from the run my suggestion does not work. simply omit this suggestion:( and thus decide step before the tally step best suits your purpose.
    1 point
  20. I think setting the exclusion expression property of the tally1 step as TallyStatistic1.Lastrecordedvalue == 0 will work for u?.
    1 point
  21. Hi Jeff, I present another, and I think, a more compact approach in the attached model. In this model, I subclassed flownode object. And define a timer element in it. I also defined two properties in this subclassed object as Time_to_repair, time_to_failure. By this way you can use these properties to assign failure times and repair times after failure seperately. hope this helps! all the best, gocken Development 02_subclassed.spfx
    1 point
  22. Heidy, maybe you can do it using 2 timers. The first one for the starting time and the second one for the 3 hrs period. You can also use the first timer and a Delay step of 3hrs, then a Fire step. Rds
    1 point
  23. To the best of my knowlegde every process can be enable or disable by using ProcessName.Enabled. You can assign this state variable true at the beginning of the three hour period (not a must but probabily using a timer element) and false at the and of the three hour period. I hope it works?
    1 point
  24. Hi M_A, I suggest checking out the SimBits called Dashboard Report Tallies, Dashboard Report Interactive Logs, and Dashboards Within Experiments. Thanks, Ryan
    1 point
  25. Sorry Cam.Laboy, I missed this part of your message. Of course you had better to define servers instead of sinks. This time you should use Input@Server instead of Input@Sink in the sequences table. By this way, you can collect some other useful statistics, i.e., payment time, payment queue length etc., as well.
    1 point
  26. Hi Cam.laboy, I mean you have to define new customer types and include sink objects into their sequences. I attach a picture of how to revise probabilities of these new customers. Hope it helps.
    1 point
  27. yes, it works if the sink objects are in the course of these customer entities.
    1 point
  28. simply increase your customer types as credit card and cash payers. For example, expand your table by includeing customer1creditcard and customer1cash, customer2creditcard and customer2cash, customer3creditcard and customer3cash? Also, rearrange their probabilities, sequences, etc. as well. Is it ok?
    1 point
  29. Note that the logic included in the attached model works if the entities are sourced by seperate source objects. Changing Ride Capacity of a Vehicle.spfx
    1 point
  30. To answer your question specifically with regards to the MultiEchelonSupplyChain example, the OnReplenishOrder process that you see in the process logic of the data table driven example is automatically executed by the Inventory elements when the inventory detects the need to replenish. Go to Definitions -> Elements and click on the Inventory elements and you will see where that process is being referenced. The ShippingReceivingLogic process is being executed when an entity enters any of the BasicNodes placed in the Facility View. For example, click on the DistributionCenter node and i
    1 point
  31. I have attached a simple example of one approach. 1) I edited the ModelEntity object and added a state array of type MatrixFromTable. This type of array is automatically initialized from a table. Ideally I might have also added a table to the entity, but Simio doesn't work that way. Instead, I added a RepeatGroup named InitializationValues consisting of a Real property. I used this repeat group as a way to essentially add a "table" into the object, since internal to Simio there is almost no difference between a table and a repeat group. 2) Back in the model I added a table and then i
    1 point
  32. Set reservation method property of transfer node 2 (under transport logic section) as reserve closest. It works after this setting.
    1 point
  33. One approach would be to use an Output Table. There is a nice example provided in the UsingAddRowAndOutputTable SimBit. Keep in mind that each individual processing task has its own State Assignments and Add-On Process Triggers for 'Task Ready', 'Starting Task' and 'Finished Task' - these may be helpful in the endeavor. Happy modeling! Adam
    1 point
  34. Hi! Please keep all student competition related questions in the SI Student Competition Forum. While others can answer this question, that would take the fun out of the competition! If we feel it is a fair question, the answer will be supplied there.
    1 point
  35. As we approach our final stage of our bachelor studies, it is necessary to write a bachelor thesis. In this context we are developing a Simio Plugin, which enables advanced model-management and more important, model-comparison. Our main objective is to provide the Simio Community a properly working Plugin, which improves the modelling process itself and the usability within large Simio-projects. What could you expect? Functionality We separate the plugin in two logical components. The first one is called Modelmanagement. The features of this component are the following: • Versioning m
    1 point
  36. It is great to hear that you are doing well with your model. No worries with questions, I will do my best
    1 point
  37. I am not sure which expression to use to get the value 1500 metric tons from a tank object. I assumed that MyTank.FlowContainer.CurrentWeightCapacity expression gives what u want (it is most likely not u want, but it does not matter). If it does not you replace it with the appropriate expression. The main idea for selecting the right node just in one shot is to use the long expression below. To be able to use such an expression you should subclass filler object and define an objectreference on it. I revised your model and attached it. Again, I am fairly sure that this expression is not just yo
    1 point
  38. People often want to model two or more vehicles or entities moving together. There are a few components to this: 1) Seizing the resource appropriately - can be done in processes, but often best done within the vehicle object to make the modeling easier. Here, a vehicle has 4 properties added to support use of an operator. 2) Animating them moving together - the picture below shows use of a second queue animated on the custom vehicle. 3) In some cases, you also need the "driver" to be shown moving. The Attached Animation Speed illustrated below, accomplishes that.
    1 point
  39. There's the expression Is.Entity that return 1 (in case it is the right entity) or 0 (if it is not). About your example, assign these expressions in the Selection Weight properties of the paths: To Server2: 3 * Is.PartB To Server3: 2 * Is.PartA + 4 * Is.PartB To Server4: 8 * Is.PartA + 3 * Is.PartB Check the attached model to see how it works. Selection Weight.spfx
    1 point
  40. Entities are prioritized in server according to the server Ranking Rule. Check my attached model. I set Entity1 priority to 1, Entity2 priority to 2 and told the server to prioritize the ModelEntity with the highest priority value. You can play with that logic to prioritize everything the way you want. entity priority.spfx
    1 point
  41. I'm not sure, because I never done this course. Maybe something like this?
    1 point
  42. Do we have a newer version of ExtraLib ,with the release of Simio V11.........?Thanks
    1 point
  43. Is there an example or a SimBit which shows how to do this?
    1 point
  44. Hi J, The following two function might help: StandardWeek.TimeUntilNextValue(TimeNow) - the amount of time before a change in Schedule StandardWeek.TimeOfNextValue(TimeNow) - the duration of the next value in schedule StandardWeek.NextValue(TimeNow) - the next value in the schedule So create a schedule and reference the schedule in your expression builder. Regards, Willem
    1 point
  45. If you would like to be automatically notified about new postings to any Simio forum you should subscribe to the Forum by clicking the Follow button. This can be found at the top of every Forum topic (indicated by the red arrow in the screen shot below). Subscribing will ensure that you are among the first to know about each new posting. You can use the same technique to subscribe to any forum of interest to you to ensure that you get the latest news and have the opportunity to participate in any discussions.
    1 point
  46. Hi, Can any of these methods be used to write time series data during the simulation run and then at the en of the simulation write it into a database? Thanks, H
    1 point
  47. The Combiner object in the standard library assumes that you have a parent entity representing a box or container and members representing the parts that are combined into the parent. In some cases you don't want to have a parent, you just have a number of entities that you want to temporarily join together and process as one. The attached project contains an object of type Node that represents a very simple Combiner and a TestModel to illustrate how it works. The node simply asks for a Batch Size and then holds the incoming entities until that batch size is reached. It creates a "no
    1 point
  48. It's not clear to me if you are looking for waiting time at a particular location, or overall waiting time, but either way, Simio does not calculate that automatically by entity type, so you need to add custom TallyStatistics by entity type to record these. The general procedure is: 1) Create an appropriately named TallyStatistic for each type (e.g. PartAWaitingTime, PartBWaitingTime, ...) 2) Add a state to the ModelEntity definition to hold the queue entry time (e.g. TimeEnteredQueue) 3) When it leaves the queue (when it starts processing) record its waiting time using an expression
    1 point
×
×
  • Create New...