Jump to content

Search the Community

Showing results for 'output table functions'.

  • 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. 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.
  2. Hello everyone! I'm new in Simio. I hope you guys could spare a moment to assist me with a challenge I'm facing. I have a problem in my simulation model, I have one entity routed at random to one of two lines for processing. These processes follow distinct sequences as describes as follows. 1st sequence (A): S11 - TN11 - TN21 - S22 - S23 - TN22 - TN12 - S14 - Sink1. 2nd sequence (B): S21 - TN21 - TN11 - S12 - S13 - TN12 - TN22 - S24 - Sink2. I intend to integrate a neural network to predict the average makespan, similar to the Neural Network solution provided in the Sample SimBit Solutions. However, I encountered a discrepancy between the example model and my model. In the example model, there is a "Path" feature, which allows for the definition of specific routes. Unfortunately, my model cannot use the "Path" since my model has selection logic for choose transportation in the transfer node either use crane or vehicle, so I need to use a sequence table for the entity to ensure it follows the desired paths. The issue arises when attempting to utilize the neural network. I need to use the "Select From List" for the "Entity Destination Type" in the "Output@Source1" part (I already made the list of nodes = Input@S11 & Input@S21). However, I cannot use this since I already used the sequence table for the entity. As I know from the SimBit, I need to set "Entity Destination Type" by using "Select From List" with the selection goal = random as a base model, and later I will change it with the neural network output. However, from the beginning of this process, an error occurred, as depicted in the attached image. So, I just think could Simio do this: if entity go to Input@S11 then use the 1st sequence, if entity go to input@S21 then use the 2nd sequence but still using the "Select From List" for "Entity Destination Type" since later I will use the smallest value from Neural Network for the selection goal. I also attached my model below for more understanding about my model. Thank you for helping me. Best Regards, Oey Aldi Winata BASE MODEL.spfx
  3. Thank you for the quick and detailed response! I see the error I was making with work schedule and have tested it on one server, it seems to work as intended. Since each of my servers have a different capacity, would I need to create a unique work week and unique day type for them all? Or is there a quicker work around? The manual inputs for the date time are a great work around, I'm only modeling for a few years so I don't mind inputting a few dates. What I mean by there being no buffers is that no server can have a queue. I used a list for selecting the destination on the output node of each source (total of 8 ) where it's a hierarchy. It can go to a select number of servers and if all of them are full it goes to a dummy server of infinite capacity that exits the items to an overflow sink.
  4. 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.
  5. Hi, there is a simple approach you can use. Use Connectors between the queue server and the desks. At Buffer Logic of the Desks, change the Input Buffer Capacity to 0. Create a List with the Input nodes of the seven Desks. On the Output of the queue server change Entity Destination Type to Select From List and the goal to Smallest Value. Keep the default expression. It should work fine.
  6. 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
  7. In addition - Based on error message, the destination selection step seems to be trying to use a reference table, (used at source output node), despite the particular node list being specified in the routing logic for the node in question, (i.e. Output@QC2 - see below). Thanks again.
  8. 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
  9. That's because there is a routing table in this case. That's how it was set in this simbit before I made the updates. I also I tried to set the "Routing Table" as the initial sequence for the entity and I'm still getting the same error.
  10. I used the "DashboardForScheduling" simbit as an example for this case. For the order that is using "FinishedGoodA" material, I want to change the sequence after the welding process is complete if both shape stations are not available. So, I created an alternative sequence table and referenced in the process logic I created. Whenever this happens, I get same type of error message. Do you think this is happening because the normal routing table is referenced at the source object?
  11. 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?.
  12. Ok I can do a trace and see what I find. Also, I do have different entity/job types getting processed. In my routing tables, I do have the entities specified in the table. I'm trying to use the "ChooseAlternateSequence" simbit as a reference. Is it possible to do this if you have more than one entity type?
  13. I'm trying to do something similar to do this where an order has 4 different routes or paths it can go (My model currently doesn't have paths). I created 3 separate sequence tables and created a process logic depending on if a certain workstation is already processing an order/entity, to go through this sequence. For some reason, whenever it gets to the "set row" step, there is a table reference error mentioning "no entries found" if though in the process step, I specify which row to start the new sequence. What is the reason behind this error?
  14. Hi I have an entity that is moved through the network via vehicles. The vehicle will drop of the entity at the first server which then gets processed through two servers. I would like to use the vehicle that dropped off the entity at the Input to the first server to be used to pick up the next entity at the output of the second server. Is there a way to save the exact Vehicle that was used and specify that as the Vehicle to use at the second pick up point? Hopefully to a global variable and not to the entity (in my actual model, the entity going in to Server 1 is not the next entity coming out of Server 2). At the moment I am using 'Reserve Closest' as the reservation method at Server 2. I know that is incorrect, but I'm not sure how to setup this up using the other methods. In the attached model, process works for the first entity, but does not for the second entity onwards. Due to other limitations in the model, I need to have the Vehicles to 'Remain in Place' during idle. Thanks in advance for the help. SpecificVehicle.spfx
  15. 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
  16. Thank you for the quick answer! But i get the same error type when using MyModelEntity instead of MyVehicle. Referenced definition type "MyModelEntity" does not match executing type "MyVehicle". In the Transport Logic of the Output@Source1 (Properties), i have the MyVehicle as a transporter. It seems like both of them are executing the add on process trigger...
  17. Hi! I don't think you need to save those times stamps on MyVehicle. I would suggest you to use processes that triggers when the entity leaves the Output Buffer of the source and enters the Input Buffer of the server. To do that, create two process with the corresponding Triggering Event Name: Source1.OutputBuffer.Exited or Server1.InputBuffer.Entered, saving time stamps directly on the MyModelEntity.
  18. Model.spfx Hello, i am trying to stop the transport time for my entity. The process logic is as follows: hen the entity exits the Source output, the time stamp (MyVehicle.Stamp) is assigned with the value "TimeNow". When the transporter drops the entitys to the servers input the time is stopped (New Value = TimeNow- MyVehicle.Stamp) and simio calculates the transport costs. The error is attached. I get the same error, when i use MyModelEntity instead of MyVehicle. The model name is "Model311" in the attached project "Model". How or where do I have to set the stamp correctly? Thank you!
  19. Hello, i am using the Financials Properties in Simio. In this simple model, i have parameters for different cost types (see in the picture). All the cost types are used with the default financial states. The dynamic label of the ModelEntiy shows the expression "ModelEntity.Cost", so it roll all the cost components up in the particular entity. The entity in the processing has a value of 76.84. (rolled up) Now my question is, is it possible to see all the cost components for all my model entity, for example as a expression in a floor label or in a data table. Thank you!
  20. First of all, Thank you so much for the answer in advance, but could I bother anyone who answers with some example model or picture of the method I am still new to SIMIO, so I am concerned about following the advice correctly. 1) Let's say every day I have X number of people arriving( using distribution to generate numbers outside SIMIO randomly). This is the shop where people visit from 8.00 to 20.00 every day with different visit rates per hour (example as below), and I use X to time to this percentage so I can get the exact number of visits per hour. The problem is I want to make an arrival interval random with some sort of function/distribution or table(excel calculation), not a stable arrival rate. My idea is random from 0 to 1 and gives the random number (Y) to match with X outside SIMIO and put the whole table in, but I wonder, is there any better method than this? 2) The second question is about two entities from different sources, A and B. A and B will go through the same server for three servers, but after server 3, one will go to 4, and one will go to 5. Can you give me any advice on how to do that
  21. there are several easy ways to do this. 1) Subclass the Resource or Worker object with the only change is to add a property or state (ex PTime) to hold the processing time specific to that resource. 2) Put your process times in a table and reference the correct table row for the doctor that is working. The SimBit WorkerPoolWithEfficiency does something somewhat similar.
  22. Hi @jzhou, how would this work if I want to refer to the MemberOutput Node of a separator in an expression? I get lost at the following expression: Entity.Location.Parent.Node.AssociatedObject.Separator.Output.[what comes next?]
  23. Hello River, I downloaded your files. The Gate512 was missing. I removed the information in the "30 Departure.xlxs" file that I can run the model ;-). Generally I understood how it works. Answer to your first question: I think you mean these two ways, right? From the left and from the right. In this case I saw that you used the "Routing Logic" in like all Transfernodes. The Outbound Link Rule is "Shortest Path" and you set the "Node Name" to "Input@Takeoff" Simio is using everytime the shortest link path now. Like in the screenshot below: In my opinion it would be better to set the destination once after the Entity got created in the Source for example :-). There are different ways to do that. In your model I removed all Routing Logic in the Transfernodes and used the Routing Logic only in the Output-TransferNodes of the Sources. In Simio you need only to use one time a SetNode-Step or a Routing-Logic to set the destination of an Entitiy and Simio will follow the paths or travel in the FreeSpace. You can use for example a NodeList with 2 different destinations and this Routing-Logic: With the "Selection Goal" Random Simio will randomly choose the destination from the NodeList. I uploaded you your model with the changes as an example: Problem on the taxiway version 17A.zip What did I changed? 1) I removed the Routing Logic in all TransferNodes. 2) I added new Routing Logic to the TransferNodes of the Output-Node of the Sources. 3) I added a NodeList with 2 new Nodes. 4) In the two new Nodes I used a Nodes-Entered-Process and a Transfer-Step to transfer the Entity to the Input of the Sink. Answer to your second question: You can change the destination of an Entity any time. In the Path (Link) you have a function called "NumberTravelors" for example to get the number of travelors currently on this path. So you can use a Expression like "Path123.NumberTravelors < 2". This can be used to decide if a way is full allready that the other way get selected. Or you can use a Integer-State and count up and down. I would use a Node-Entered-Process in the last possible node with a Decide-Step and two SetNode-Step in this case :-). I hope my answer will help you. When you have any other question, you are welcome! Best regards Pascal
  24. Hi, everyone Hi, everyone I am developing a postgraduate project related to hospital OPD simulation. After collecting each table/room process time, convert all the data into an Excel sheet. I am curious is SIMIO has any tool to analyze the best-fit function from the data (time related) I gathered. Thanks.
  25. Import ALL gates to the gate data table, regardless if they have flights or not. Make sure all Gate objects are following the departure arrivals. Done. If you have any questions, pm me.
×
×
  • Create New...