Jump to content

Search the Community

Showing results for 'Add variable state in data table'.

  • 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. Hello SIMIO experts, I am currently working on a project where I need to assign state variables to a worker and manage these variables throughout the simulation. I'm looking for guidance on a few key aspects: Assigning a State Variable to a Worker: How can I assign a state variable (e.g., a boolean or numerical value) to a worker in SIMIO? I want to track attributes such as availability, task completion count, or other custom metrics. Updating the State Variable During the Simulation: What is the best practice for updating the state variable of a worker based on specific events or conditions during the simulation? For instance, updating the availability status when a worker starts or completes a task. Accessing the State Variable: How can I access or consult the state variable of a worker at any point in the simulation for monitoring or decision-making purposes? Any advice or example models that illustrate these processes would be greatly appreciated. Thank you for your help!
  2. Before you start adding state variables to a library object, I suggest that you first familiarize yourself with all of the existing states. One easy way to do this is to instantiate the object (e.g., Worker1) and then go to any expression field and type "Worker." and look at the list. In the case of Worker, there are over 100 states, functions, and properties built-in to the Worker object. Another way is to subclass the Worker, then go to the Definitions tab of the MyWorker object and you can see all of the built-in definitions by category: There is a pretty good chance that what you need is already there. But if not, use the same screen illustrated above and add whatever state (or property, event, ...) that you need. As far as referencing or assigning that custom state or a built-in state, it is done using ObjectName.StateName. For example if you added a state named TimeStartedMove to MyWorker, and you wanted to assign that value, you might assign MyWorker.TimeStartedMove to TimeNow. The tricky part, especially with more complex objects like Workers, is to determine exactly when/how to assign that value. Sometimes you can interact with the model itself to insert an Assign at the correct location (let's say in the Loaded Add-on Process). Or sometimes you might need to override the process logic in your custom object. The SimBits RecordDistanceTraveled and ElectricVehicle are examples to review.
  3. Hello, I'm figuring out optimal settings for CSV imports and noticed there is something called "Import Culture" which i typically leave blank. There doesn't appear to be documentation on what that field does or when it should be used. Any thoughts? Thanks!
  4. Hello, I am trying to run over 100 different scenarios in a design of experiments approach. I have a data table that references different vehicles and sources to set certain conditions, but I'm having a hard time converting the table (which has 100 rows) into the experiment section to run. Any advice appreciated, thank you!
  5. I second this idea. If we can directly assign string name to a object-reference state variable, then use the object-ref state variable as the Object, it will be a lot helpful. String concat is a very good one, for example , ModelEntity go through NodeA, we define its next destination as NodeA_a ....
  6. Hello everyone, I have a server which can potentially have many entities waiting in the input queue. All these entities have different priorities (as a model entity state variable). I want to retrieve these values to then select the highest one and put it on a status label to track this during the run. Is there an option to do this? Regards, MF
  7. You want to make the servers have a Capacity Type of Schedule and follow the default Standard Week. If you don't want to give them a lunch break, just change the definition of the Standard Day. Leave the default Off Shift Rule of Suspend Processing. The easiest approach for arrivals is to have a Source with an Interarrival time of 4.33 weeks (or 4 weeks) and an integer random distribution for the Entities Per Arrival. Doing a "first Monday" is possible, but a bit complicated because Simio time does not have the concept of Month because months are of varying size. You could probably specify the initial Time Offset to be early in a month, then maybe make the interarrival time be something like DateTime.DaysInMonth(DateTime.Month(Timenow),DateTime.Year(TimeNow)) which would make the next arrival be exactly one month later (same day of the month). When you say you have no buffers, what do you mean? If an entity arrives when all servers are busy, should it be balked (possibly disposed) or should it wait somewhere like on the server input node, on a path or in the Source output node? If the above arrival approach isn't exact enough, you can put exact arrivals in a data table. The arrival time could be specified at any exact datetime you desire and still have the Entities Per Arrival be a distribution.
  8. If you haven't already done so, I'd start by reviewing the SimBit ResourceSelectionConcepts. It contains several models that explain different types of resource selection. In particular, I'd suggest a combination of the following approaches: Create a table for each Worker (and/or each Server) where columns in the table represent the constraint or exclusions. For example, you might have a server table with columns for each day, and each column might contain a list of workers who can potentially be used on that day. Use resource lists to select from. possibly with exclusion conditions (maybe referring back to a table) of which resources cannot be used on that server and that day.
  9. Use a search with Maximize Expression. The queue should be ServerX.InputBuffer.Contents and the expression: Candidate.ModelEntity.Variable.
  10. Hi everyone! In the project I'm developing I need something similar to what was done on the Simbit "EntityFollowsSequence". The difference is that I need to be able to change the destinations (update the contents of the sequence table) over time (the number of rows of the table can be fixed, although it would be ideal if they could be dynamically created). Could someone please explain how it would be possible to do this? My edition is NOT Enterprise. Thanks.
  11. Hello, I need check state variable of object/models in a list. Is there any method to use like a "for loop" Thank you!
  12. You can run the model with 'Trace' turned on. This will trace everything happening in the model, including changes to state variables etc. Turning Trace on also generates a CSV file that you can use to debug. You can also use watch window to debug.
  13. Hello, i would like to know if its possible to track the different values for a user defined MyModelEntity state. In my case, i created different states like MyModelEntity.MaterialCosts and MyModelEntity.HoldingCosts, ...TransportCosts ... etc. The values are summed up in a state called MyModelEntity.ProductionCosts. This state is shown as a dynamic label text in my model, so i can see the production cost value at the actual time. But is it possible to see the different values of the MyModelEntity states that make up the production costs for instance during different periods of times in the simulation or at any time? Because i would like to see the values of my states like MyModelEntity.MaterialCosts at certain times in the simulation. Thank you!
  14. You are not able to use an index to return an item in a List. I would suggest using a Table instead of a List
  15. We are simulating the aircraft will leaving the gate according to our real data history. How can i import the table in simio and let the aircraft leave the gate accouring to the time and date? Also some gate will have more than one different time and date that aircraft will departure the gate. How can i do it as well?
  16. Happy new year! One thing that I noticed is that with this model, the server never have a state of "blocked". I increased the processing time of Server2 and added a status pie to Server1. The server 1 is either Processing or starved, but never blocked according to the pie. But it should be blocked part of the time since I increased the processing time of Server2 to force this. It looks like the Server1 only accepts a new item to process if the path between Server1 and Server2 has room for at least one more vehicle. So the time that it should be blocked is considered as part of the "Starved" instead. I tried to figure out why this happens without success. Anyone knows why this happens? I attach the model to the post. Thank you! Input Server1 not blocked.spfx
  17. Hello! So I am using a source that is sending out 9 different entities, each with a priority 1-9. They are listed in a Data table called 'Part Data' This is the 'Table Row Referencing' call I am using in 'Before Creating Entities' in the 'Row Number' section: PartData.Priority.RandomRow I want to switch this to use a Random.Normal(mean, sd) - is that possible with discrete values in the table? Thank you for any help you can provide!
  18. Perhaps its a little late, but attached is a possible solution to your problem. This started out pretty simple. The problem was how to specify which server is serviced by which resource. One way to do that is a table. But since its changing over time I chose to use a time-indexed table, that is a table that knows about time and returns different data at different times. In this case, each row corresponds to 12 hours and each column specifies the resource needed by the respective server. As they say, "the devil is in the detail" and in this case the "devil" is that the specified resource may change between seize and release (e.g., seize at 11:59, release at 12:05). Simio doesn't like that and all the easy options re-evaluate the resource expression on release and so may try to release the wrong resource. One option would have been to create a custom server, but that seems to be overkill. Here is a somewhat simpler approach: 1) Add an entity state named MyResource and assign it at the last possible moment before use. This value will be used only for release. The assigned value is drawn from the table using an expression like Table1.S1Resource.TimeIndexedValue.Object. Note that the .timeindexedvalue indicates to get the value associated with the current time. And the .object at the end is used to tell Simio to return that value as an object not a number. 2) Use Secondary Resources - Other Resource Seizes to seize the name specified in the table using the same expression above Table1.S1Resource.TimeIndexedValue.Object. 3) Use Secondary Resources - Other Resource Releases to release the resource saved in MyResource. TimeBasedWorkerSelection.spfx
  19. Add Table-->Add Data Table From Schema-->Available Table Schema-->Server-->Errors 21 . The Errors still there.image.thumb.png.a293eec79613c5690b64d1171735c08e.png

  20. Got issues with a combiner. i have a server that processes the member parts but has a 0.1 probability of going to scrap, this means the batch size has changed. the parent part has a integer state that gets updated when this happens but doesn't update the combiner batch quantity property. I have attached an image showing this issue. you can see the pallet number displayed which is the way i match the parts with the correct pallet. the pallet(parent) also displays the batch size using the same integer state which i use in the combiner logic. Theres a pallet with 4 items on it and it shows the batch is 4 so why wont that process it? Also attached the whole model so you can look at it all Batch and Scrap.spfx
  21. Hello Vinicius, thank you for you help but I still having problems with the model. I can understand the logic behind of the SimBit "CombineMultipleEntityTypeOntoPallets" but I have some doubts. I change the model adding a combiner, I creted a intergrer model entity state to identify the quantity of containers, and I have a real state to identify the container but I dont know how change the batch logic of the container to each product. In the definitios tab you can see the batch logics. I hope you can help me Best regards. OptimoContenedores3.spfx
  22. Hello Everyone, I am new to Simio, and need your help to figure out this. I am using search step to search for certain rows in a table that satisfy my condition. The search step performs as expected. I want to now to retrieve the values of the row associated with the found token. How do I do it? Also, if more than 1 row satisfies my search criteria then does Simio creates found token for each row ? or the information for all the rows in stored in one single token?.
  23. Hello everyone: I am modeling a packaging system by means of a combiner. 12 equal members are grouped in a box (parent). Before leaving the respective source, members are assigned a value (0, 1, 2) as a state variable (ESV_P) to distinguish them by product type. I want the box to have the value of the products state variable. For example, if the box contains 12 type 1 products, the box should be assigned with a state variable ESV_B equal to 1. Any suggestions? Best regards.
  24. Hi Fabian, I see two (or more) possible alternatives for solving this. Assuming that the box only receives one type of entity you can: 1. Create a state variable (for example st_CurrentBoxType) and every time an entity enters the combiner you assign the entity type to this state variable. This way, one the box is completed and exits the combiner you will be able to assign it the st_CurrentBoxType. 2. The other way is to execute a search step once the box is full. You can use "ModelEntity.BatchMembers.FirstItem" as match condition to locate the first batched entity, then in the found branch use an assing step to assign the ProdType from the found entity I'm sure there are a lot of ways of doing that... hope this helps saludos
  25. Hi there, I'm very much a novice, but currently leveraging the logic in VisitAllServersInAnyOrder simbit to ensure an entity visits an entity is never reworked more than once. I've updated the model entity with required state variables and created a "MyServer" to create the "HasEntityVisited" etc etc. I'm using the "Candidate.MyServer.HasEntityVisited==False" logic for the selection condition in the output node routing logic. However, whenever I run the model I get the error message "Referenced definition type "MyServer" does not match executing type "BasicNode". I've gone over and over the various elements and compared to the working simbit, but can't identify the issue. Any help would be greatly appreciated. Thanks in advance. Garrett
×
×
  • Create New...