Jump to content

Search the Community

Showing results for 'simio versions'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Simio Public Forums
    • Welcome and How To Become a Simio Insider
    • Simio News and Announcements
    • Simio Product Details
    • Simio-Related Positions Desired or Positions Available
    • Help Getting Started with Simio
  • Forums for Simio Insiders Only (See Public Forums Welcome topic to sign up)
    • SI General Discussions
    • SI Sprint Releases
    • SI Shared Items
    • SI Ideas and Suggestions
    • SI Known Issues and Workarounds
    • SI Performance Tips
    • SI Non-US Cultures
    • SI Student Competition
    • SI Educational
    • SI Libraries and Objects
    • SI Animation and Visualization
    • SI Distributions, Functions, and Expressions
    • SI Simio Tabs
    • SI Experimentation and Optimization
    • SI Functional Approaches
    • SI Industries / Domains
    • SI Types of Simulation
    • SI Emulation
    • SI API

Categories

  • Files
    • Academic Information
    • Product Information
    • Case Studies

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me


First Name


Last Name


Company/University Name


OCCUPATION


ICQ


WEBSITE


YAHOO


AOL


LOCATION


FACEBOOK


GOOGLEPLUS


SKYPE


TWITTER


YOUTUBE

  1. Hi everyone, I am working on a project that has more than 2,000 different arrival distributions. The distributions are all exponential, but they all change over time. To illustrate: suppose I am modeling 30 companies around the world, each company with a group of suppliers (or clients), each supplier (or client) with a group of parts (or orders) that will be arriving in my company to be processed. Each one of these parts coming from each supplier to each company (I will call it a combination) has its own distribution that changes over time. [this is an analogy to my problem] If I had only 1 company with a few suppliers and a few parts, the natural solution would be to use Rate Tables. This would be good because I want to investigate the impact of different Rate Scale Factors (increase or decrease of arrivals) on my key performance indicators. However, as I mentioned, I have more than 2,000 different distributions. So, my main question is: does anyone have a suggestion about how to create these arrivals in an efficient manner? I am assuming creating one source and one table for each possible combination would not be efficient, as it may make the model super heavy. I have thought about two different solutions (which I am not sure if it is good and, even worse, I do not know how to implement yet). So, recommendations to any materials, SimBits or tutorials that might provide more information about my ideas are really appreciated. #1) One idea was using an object inside an object in Simio. This may reduce at least a few combinations?! However, I do not know how to model objects inside objects in Simio. #2) Letting Simio auto-create all my servers and auto-fill the information using tables. This means that I would create one source for each combination. Although this may not be computationally efficient, at least I would not have to drag and drop each one of them. But again, I am new to this auto-create object tool and I do not know how to implement it. So, I really appreciate: - any ideas on how to solve my problem in an efficient way - materials that may teach me how to solve my problem using my idea #1 or #2. Another issue is that RateTables (as far as I know) cannot be imported and binded. So, how can I input all my 2,000 columns of arrival rate data in Simio? Otherwise, my solution #2 is really bad. I have also discussed the idea of grouping the arrivals together and using TableRowReferencing and discrete distributions ("mix") to reduce the number of possible combinations. However, the team I am working with does not think this is a good idea, since each distribution change over time in a different way. So, combining them may not be very accurate. Thanks!
  2. Thanks so much! I didn't know you could do "if" statements, that really opens up my simio world! Thanks again for the timely reply.
  3. Hi All, It's been a while since I have last used Simio and I have an issue that I think should be simple. I have two entities running on a production line, one gets processed by a server and the second entity type moves through the same server almost like a conveyor with no processing. I can work around this by adding another conveyor around the server, but in real life the product does flow through this server and eats at it's capacity. Is there anyway to set up different processing times for multiple entity types on a server? Thanks, Brendan
  4. If the entity has a SetRow assigning the row to 1 in TableA, then toget to column1 (you already have a pointer to row1 via the SetRow assignment) - you would simply say TableA.ColumnName. Simio will know that it should use row1.
  5. I would like to refer to the BicycleAssembly Simio Simbit as I'm using it as a reference to set up my own model. As I set the Initialization step of my model, I read the Orders table row by row, using a global variable called CurrentRowNumber. However, when an order entity is created, I would like to keep track of the row in the Orders table that entity is created from with a model-entity level state variable. However, I'm not sure how to do. I cannot just assign the value of this ModelEntity.State = GlobalCurrentRowNumber as the GlobalCurrentRowNumber continuously changes as the simulation runs. May I have some suggestion as to how to do so? Thank you
  6. Hi Benjamin, The first thing I recommend is to select Server2 and change the Ranking Rule to 'Smallest Value First' and the Ranking Expression to 'ModelEntity.Priority'. Doing that will allow the entities that are currently arriving to Server2 to jump ahead of higher valued entities in the input queue. In order for Server 2 to process, when free, an entity with a priority value of 1 even if has not entered Server 2's input buffer at that point, you will need to use a process. This process only looks at values that have entered the paths to Server2. Create an AddOnProcessTrigger for Entered for the two paths going to Server2. -Insert a Decide Step and have the Decide Type be 'ConditionBased' and the Condition Or Probability be 'ModelEntity.Priority== 1'. -Insert a Reserve Step after the True arrow of the process. Change the Resource Name to 'Server2'. This reserves Server2 for a ModelEntity with a Priority value of 1 if such a ModelEntity has entered either of the two paths leading to Server2. This is a general idea how to begin to solve your problem. If you want to do further reading, check out the "Reserve" page in the Simio Reference Guide. All the best, Caleb
  7. We are looking for an intermediate skilled Simio engineer for a 3 month contract. You will be able to work remotely with myself, whilst engaging through an online or VR platform, should you have a headset. Please pm me your details if interested. All conversations are treated as confidential.
  8. You could use a vector to store the entity locations - you'd have to first give each entity a unique entry into the vector - thus the first entity into the system would use vector[1], etc.. This would only be a reasonable option if the number of entities (trucks) are fixed at a max reasonable number (10, 100, etc.) so the vector could be sized. Efficiency-wise, you may wish to update the entity locations at nodes, as opposed to every x seconds. If you update every x time units, you would need to first use the Search step to search the entities, getting a token for each entity. The vectors can be updated using the entity index into the vector (perhaps store as modelentity.priority if not using priority for any other reason). ModelEntity.Location.X can be used to access the entity location. There is a SimBit titled FindAMinimumState value which describes how to use the Find step with a vector variable. Another option would be to use an output table (depending on your Simio license version) to store/update information on the entity/location. If you have a base model that you have problems running and can share here, please do. Otherwise, send a base model to support@simio.com.
  9. Heya! I'm quite new to Simio, At the moment, I am wondering in what way I should model the following: Im trying to model a simple roadway, with entities being able to catch up with one entity ahead and keeps following this entitiy to form a sort of "train". At the moment I am using decides steps such as: ModelEntity.NetworkDistanceTo.NextEntityAheadOnLink< "certain distance" --> if true ModelEntity.Movement.Rate +0.5. But this solution only sort of works when im using one path. I know there is something like ModelEntity.Location.X, which should work wherever the entity should be. So, is there any smart way to 'connect' the entities (with a maximum number of entities able to connect) And how to I make them accelerate so they are able to catch-up?
  10. There is no easy way to automatically convert an Arena model into Simio. But more important, you probably wouldn't want to. I am reminded of the early days when Siman was written in FORTRAN and we wanted it to be in C. We ran it through the best automatic FORTRAN to C translator of the day. While it "technically" worked, what we got was a whole bunch of FORTRAN code that was expressed in the C language. It used algorithms and constructs that were inappropriate to C and was extremely hard to read and maintain. We ultimately manually recoded everything into "good" C code. Likewise, Simio has many advanced constructs that are not found in Arena. The modeling approach that you would take with Simio's object orientation, would be very different that you would take with Arena's limited set of procedural modules. So while it is theoretically possible, I would recommend giving no further thought to an automatic translation. Instead I would: go back to the modeling objectives and constraints which guided your Arena model, consider all the things you learned about the system as you developed the Arena model, and consider the trade offs that you had to make in Arena to model your system with enough accuracy. Then I would design a Simio model using all the Simio features available and design the best model to meet your current needs. When complete, I expect that you would find the Simio model to be smaller, more accurate, and easier to use and maintain than the original Arena model.
  11. Yes, I saw the simbits, it wasn't helpful. I have 2 excel worksheet, one list 100 parts, another showing utilization of 50 vechicles for the next 120 months (life span of the vehicle). Each vehicle will have those 100 parts that requires some type of maintenance. Every so often maintenance must be performed based upon the frequency of those parts. How do you traverse the vechicle page both vertially hand horizontally. Plus I need to count up how many parts will be required (with cost) for given year and life span of the vehicle. If i can't get Simio to work, I'll write code. Attached is an example of the data file. Parts vs 1.xlsx
  12. I'm very new to Simio. I'm trying to figure out the impact on maintenance schedule/work load. I have excel file with 300 pieces of equipment and forecasted operating hours for the next 5 years by month. The operating hours varies from month to month. As the item gains time, there are different maintenance action that takes place, up to 5 different maintenance actions. The next problem is over the 5 years the number of equipment will double. How do I read the excel file? Each row is piece of equipment, the columns are projected hours of operation for that month. How do I store operating time for each piece of equipment? Thanks
  13. I have a model where three conveyors merge from individual sources. All three sources release entities at an inter-arrival rate of 4.5 s. At the merge there is a server which has a processing time of 1 s and a 0 buffer capacity. In the image below I have two models with the exact same properties, the only difference is the conveyor speed. The top model has a conveyor speed of 0.5 m/s and a queue forms reaching a length of infinity as time passes. The bottom model has a conveyor speed of 2 m/s and a queue never forms. Why is it that a queue forms in the top model? Can someone please explain? It does not make sense to me why such a long queue forms. Please explain using queuing theory or mathematics, or Simio logic if necessary.
  14. In the book by SMITH/STURROCK/KELTON, in Section 7-3, the authors warn against manually changing the arrival rate from one period to the other. They state that it will give wrong results at the transitions. The recommendation is to use Rate Tables. Is my guess correct ? Say we have 2 periods of 1 hour each, one with mean = 100 and one with mean = 200. If we use Rate Tables, Simio will use the rate 100 in the first hour BUT will only generate arrivals during the first hour. If we use a manually set rate and change it to 200 after 1 hour, it is possible that in the last few minutes of the first hour, entities might be generated that arrive in the second hour. If not correct, what is the real reason for the author's warning? Thank you
  15. Thanks for the reply, unfortunately, I'm new to simio and have no clue on how to make it work. Any examples I could follow would be helpful.
  16. I need to calculate patient throughput using user-defined statistics but I am not sure how to calculate throughput in Simio. I´ve tried different approaches unsuccessfully so far... Could this be the right expression: Sink1.NumberDestroyed/Timenow? Does anyone know what is the general process for doing this? Thank you, Juan C.
  17. Hi, I currently have a model as follows. I have a separator, and I want to divide entities that enter through it evenly across the 2 nodes. So half of the entities go out from the parent node and half go out of the member node. Currently right now, I did not manage to do it for the separator, even when I tried all possible methods in SIMIO for splitting the batch itself. How may I go about the problem? Thank you!
  18. Please either attach the model you are referring to or send an email with the model to support@simio.com. If your data table with the 'certain trait' is based on the entity types themselves, then the entity should have a row reference to that table automatically and referring to the DataTable.Characteristic should work. You may wish to refer to the SimBit named EntityFollowsSequenceWithRelationalTables.*, and specifically look at the JobTable data table that has a listing of the entity types - having a column for your characteristic trait in this column would associate that value with the particular part type.
  19. Hi, I would like to ask on the Bicycle Assembly SIMIO example. In the example, under the Manufacturing Orders table, they have created an integer state variable called RowNumber, which I thought could have been created under "States" in the "Definitions" tab. However, when I went there to find the state variable RowNumber, I could not find it inside there. Hence, may I know how the state variable was created? Thank you!
  20. According to the reference guide, I can attach a status label to a model entity by first choosing the model entity and the creating the status label. It works for me, but not all the time. May I know if there is a way to fix this? My simio version is 10.174 Personal Edition. Thank you
  21. Hi Watsons Thank you very much for your explanation. Mine is the case where I have to use the process SetRow to assign an entity to an associated row in a given table. However, I'm a bit confused about how to refer to the values of this associated row. For example, I assign an entity to row 1 in TableA, in which there are 3 columns. What I want to do is to get the value of col1,row1 in TableA from the model entity itself: so I'm looking for something like ModelEntity.col1 which gives the value of col1, row1 in tableA. Can such a thing be done in Simio? Thank you
  22. 1) Depending on how the entity is created in the first place, that assignment may already have been made. So, for example, if the table includes the arrival time and is used as an arrival table within a Source (Arrival Mode is set to 'Arrival Table'), then the entity that is created automatically has a row reference to the arrival table row from which it was created. Alternatively, if you create an entity, you can use the SetRow step to assign it a specific row in a specific table. ** The entity doesn't ever become a token ** Please refer to the Tokens page and the Tokens and Entities page within Simio help for more information. Tokens can be associated with entities (or with a model if a process is triggered by a timer, event, etc.) 2) If the entity has a row reference within a data table, simply referring to the TableName.ColumnName to access the table information is sufficient. This will automatically retrieve the information in the TableName table, ColumnName column at the designated row that the entity has a reference. If the entity doesn't have a reference within that table, Simio will give an error if you attempt to refer to the data in that fashion. Alternatively, you could reference a TableName[RowNumber].ColumnName to specifically reference a given RowNumber. Refer to Data Tables page within Simio help for more information.
  23. Hi, I was modelling changes between different setups using a changeover matrix and I noticed that the entries entered cannot be in the form of a random distribution. Is there any way that I can change any settings of the matrix properties in SIMIO so that it can accept random distributions as its entries? Thank you!
  24. If the entity is created (similar to the Bicycle Assembly example in Simio) using an arrival table where the arrival time is specified in the table, the entity will automatically be assigned the associated row in that table. To assign a row reference to an entity without such logic, you would have to have the entity enter an add-on process when it is created and then use the SetRow step to assign the entity an associated row in a given table. The GlobalCurrentRowNumber you mention above could be used as the RowNumber assigned for the entity within the SetRow step, provided there were no conflicts with relational tables.
  25. The various resource type objects, such as Server, Combiner, Resource, etc. as well as moveable resources, such as Workers and Vehicles have Resource States that are automatically assigned by Simio. See the List States page in Simio for a listing of the resource states for each object. You can evaluate the state by using the ResourceName.ResourceState in an expression, such as in a Decide step - Server1.ResourceState == 3. These resource states can also easily be viewed by clicking on the object itself and going to the Active Symbol section of the Symbols ribbon to display the animation symbol and listing of the various states and their associated numbers.
×
×
  • Create New...