Jump to content

Search the Community

Showing results for 'API reference'.

  • 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

Calendars

  • Simio Calendar

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. 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 ....
  2. Yes, and it did not work for me. The object-reference (server) property created (and named as "exampleVariable") does not appear in the property window of server objects.
  3. Did you create an object-reference type of properties?
  4. 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.
  5. 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?
  6. 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?
  7. 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.
  8. Hi all, I am building a simulation of a system with multiple separators which MemberOutput nodes two different routing policies can occur: 1. Standard Policy In the 'Standard Policy', each separator has its dedicated transporter assigned to it and entities arriving at the MemberOutputNode can only select the defined transporter. To this end, a DataTable has been constructed. 2. Power Hour policy In the 'Power Hour Policy', operations are shifted into a higher gear. We select a maximum number of three nearest transporters whose ride request is 0 and include them in the DataTable which specifies the Transporter Selection. Entities arriving at the MemberOutputNode can now request rides from any transporter in the DataTable. I tried to reference to a DataTable called 'TransporterSelection.EPT' in the Transport Logic of each MemberOutput Node. Each value in the EPT column is cross-referencing to a DataTable in which I try to assign the MemberInput Nodes as a Node Reference State Variable of the Transporter (EPT). Is there any way to dynamically assign more (or less for that matter) Transporters to a TransferNode? Hope that anyone knows how to do this! Cheers, Toon
  9. Thank you Dave! Inspired by your approach, I defined two Node Reference State Variables for the Entity: EndDestination and NextNode. In the model Processes, I first determine the Entity State Variable EndDestination based on a DataTable with probabilities per destination node. Then, at routing decision points, I have created processes that evaluate the EndDestination node and set the next node for the unity based on that. Although it requires a bit of 'hard modeling', it works like a charm! Thanks
  10. First of all, your column of gates should be of the type Object Property, not String. After you change its type, you need to set Auto-Set Table Row Reference to True. It should work now.
  11. Try changing the reference property units to hours, but not from the Controls menu, do it from where you define the rp. Rds.
  12. Unfortunately you are not able to concatenate those pieces together to get a State Variable reference that will work. You can really only piece things together, or search through and find part of something within a name, with a String. Strings are not able to be understood as a State Variable reference, nor converted to something that could be understood. Instead, I might suggest an approach with a Data Table. Although this adds a tedious step of putting everything in to a Data Table, it then becomes really easy to Search the Data Table for the State Variable you are looking for. I attached an example model for you to investigate. In this model, you need the Data Table with a String Column so that the Search step can look through this collection of Strings and find the String that Contains certain substrings. See the Search's Match Condition property and the String Contains function. Also, the Data Table could contain a State Property column which then references the State Variables you created in the Definitions tab. Or, you could use the State Columns and Assign the values right to the column. Happy Modeling! Liz StateVariableInDataTableExample.spfx
  13. Hi all, I want to create a list of tasks from data table which I will use in the server objects tasks sequence. When I want to refer to all of the properties of material requirements to data tables, I am facing a restriction as follows: a) I can refer the material "Action Type" (Consume\Produce) property from server object to data table by adding an "MaterialActionType" enumeration property to data table. b) If referencing in a) was NOT done, for the selected action type (lets say produce was selected), I can refer the "production type" (Material/Bill of Materials) property by adding a "MaterialOptions" enumeration property to data table. However, when I do the task in a) an additional row appears in server object, now showing both consumption type and production type in properties. Then I am unable to set reference to data table as in b) any more. Is it possible to refer BOTH "Action Type" (Consume/Produce) and "Material Options" (Material/BOM) simulatenously? If yes how? Could you please guide? Kind regards, Tolgahan
  14. I have a problem with producing/consuming within my TaskSequence. I need multiple task operation (prepare -> work -> clean -> produce), where I'm also consuming/producing material defined inside my BOM table. When I'm trying to reference material requirements on the BOM table I get an error: "Could not determine the row to use in the referenced table or repeat group ...", references to the processing time and other parameters are working fine. If I set the task sequence reference to the BOM table, then material requirements works OK, but I could not add more than 1 task. I'm using version 15.241.27814 . Best regards, Žan
  15. I think the title is pretty straight forward, but is there any way to utilize a reference state to then concatenate onto a string? I have a large number of states I'm tracking and they're all a function of the EntityType itself. So for the sake of efficiency I was hoping I could somehow take advantage of the reference but so for no dice considering they're 2 completely different states. Any tips/tricks I'm just not thinking of?
  16. If anyone will come to the same problem. In Example3 --> table Delavci --> column Delavec you just need to change the property Auto-set Table Row Reference to "True".
  17. Hi John, The entity is requesting a ride from the vehicle and the vehicle will seize the driver if available. However, if the vehicle is unable to seize the driver, it will reject the ride request and the entity will move to the Global Visit Request Queue, as you are seeing. You can attempt to have the Vehicle check again if it can now pick up the entity, and it will run the process to check if a driver is available. To have the Vehicle check the Global Request Queue to see if it can give a ride, use a PlanVisit step. Ensure that the Vehicle, in this case Vehicle_A, is the object executing this step. By default, the Vehicles are not aware if the Driver they need becomes available. You might consider using a Subscribe step on the Vehicle's OnInitialized process. This Subscribe step can watch for an Event and if that Event occurs, can trigger a related process. For example, the Vehicle might wait for the Driver.Released Event. When this Event occurs Process1 could run. In Process1, the Vehicle could execute the PlanVisit step. For more information, I recommend the Help pages in the Simio Reference Guide titled "PlanVisit" and "Subscribe". Happy Modeling!
  18. Hi, I want to generate one type of product with one interarrival time. I have one source and one model entity. However, this entity can have different lengths following probabilities. Depending on these properties, the processing times at the servers will be shorter or longer. I tried to assign a state to the entity before this entity exits the source so ModelEntity.Length becomes DataLength.prob.randomrow. where DataLength is a table with the different lengths and the probabilities associated with those Lengths. The only thing is that it is a property and not a state, but I do not know how to do it in another way. Afterwards, I have different processing times at the servers depending on the different characteristics of my entity. For example, server1 will have different processing times depending on the length. How can I reference to the good processing time say I have added a column to the table DataLength with the associated processingtimes according to the lengths? Finally, I would also like keep track of those different lengths generated and see what the model produced in the end. Thank you for your help, Emilie
  19. Hello! 

    In reference to your question "How to use Simio as an external simulation routine (respectively, how to control Simio from other software e.g., R)?", did you figure out an answer that suited your needs? 

    I saw that your question post in SI General Discussions received a post from lstretton. What was the follow-up on that? I am unsure of where to go to get further information on the steps for that. I'm new on the forum.

     

    My problem seems to run in line with yours. I have data that populates an excel csv file and I want to import that into Simio for my simulation. Eventually I would like to automate the runs of a bunch of difference replications, potentially with R or Python or something like that.

    Thanks, ftiller

  20. Thanks you so much for you help Liz. That's such an advanced modeling techinique I had never heard of before. I would never be able to figure it out myself. It has almost worked but correctly. It has recorded the results for some tallies correctly but recorded some tallies on the wrong tally. I think there is a problem with the set row feature somewhere. I have no problem with setting rows elsewhere in the model such as arrivals from production and arrivals from truck tables create entities correctly with all their state variables. The product list table also has unique "productnames" (entity instances), set as key and auto set-row property is set to true. I have added another coloumn with element tally statistics reference (DistanceOnForklift) to products table. I have auto created it as you suggested and turned on the auto-set row feature to true. Both my product names and tally statistics coloumn are set as key in same "products" table. But the tally step still doesnt record them to the correct tally statistics. Where am I doing wrong? Would you still be able to help me? Shall I send you the model in private message? Here is the formula I have inputted 'Products[Products.ProductName.RowForKey(ModelEntity.EntityType.Name)].DistanceOnForklift' and in the picture below you can see that tally step records into wrong tally element on last three entries. I would be glad if you could help me.
  21. Hi Caleb, Appreciate your effort in providing a reference model. Process Logic approach was useful. Thanks A lot. Regards, Alen
  22. I would recommend using a Data Table. One column could have all your entity types defined. The next column could be a Tally Statistic Element Reference Property. This column would match up the Tally statistic you want to correspond with the Entity Type. You could choose to auto-create these Tally Statistics from the Data Table. If you change the Tally Statistic Property's column Reference Type property from 'Reference' to 'Create', this will make the Tally Statistics for you. I recommend the Help page "Table-Based Elements (Auto-Create)" in Simio for more information. If your Entity Instances noted in the Data Table are unique, no duplicates, you can set that column as a Key. With that column as a Key, you could use just the Tally step and use the RowForKey expression. RowForKey will allow a key input to search for in that column. If the model entity is driving the process, you could use an expression like this for the Tally Statistic Name 'Table1[Table1.EntityInstanceProperty1.RowForKey(ModelEntityReference)].TallyStatisticProperty'. Since it seems this process will be on the OnRunEnding, it will not have a reference to a specific entity, so you will most likely need a Search step to find the entities still in the system. I would set the Search step to find Infinite things and let each entity reference exit on the found branch. If the EntityInstanceProperty column in your Data Table has the Auto-set Table Row Reference property to 'True', the entities will already know the row reference and your Tally step Tally Statistic Name property could be 'Table1.TallyStatisticProperty'.
  23. Hi, I am trying to build an object library for an airport terminal. For this, I build the objects as separate models and place them in a 'sampleairport' model for testing them all together. The 'sampleairport' model contains all the objects, so it has no issue referencing to properties from the placed objects. However the other way around does not seem possible. For example; I want the user to import a standard format flight schedule, which will be uploaded in the 'sampleaiport' model. Now I need to reference this table from the other models, but Simio does not allow me to do this? Is there a way I can reference the table or other properties from models in my other models? Thank you Jason
  24. Assuming you are are using the prebuilt task sequencing logic in the server you could just add an add-on-process either after the predecessor task or before the successor task that delays for the given amount of time. If you are using a table to read these tasks add a column for the delay, make a model level process with a delay value of TaskTable.Delay. Then reference this process in the Before starting task or after completing task of the task sequence.
  25. Let's see if I can elaborate... The following outlines the relevant characters in simio file "table_selection_by_name.spfx." Model->Definitions: Properties: OptionId (Entity Property, default=null) _SelectedTable (Table Property, default=tableOption1) States: RowId (integer, default=1) maxEntities (integer, default=2) ModelEntity->Definitions: States: _id (Integer, default=0) row_num (integer, default=0) temp (integer, default=0) Model->Facility: ModelEntity Types: Option1, Option2 Source1, Server1, Sink1 Source1->Entity Arrival Logic: Entity Type = OptionId (Reference Property) InterarrivalTime = 1 second Source1->Stopping Conditions->Maximum Arrivals = maxEntities Source1->Add-On Process Triggers->Created Entity = Source1_CreatedEntity Sink1->Add-On Process Triggers->Entered=Input_Sink1_Entered Model->Facility->Controls->General: OptionId = Option1 _SelectedTable = tableOption1 Model->Processes: Input@Sink1 Add-On Processes Input_Sink1_Entered: [Begin-> Tally(temp = ModelEntity.temp) End] Source1 Add-on Processes: Source1_CreatedEntity: ************************* [Begin->Decide1(IsOption1 = True)-> Assign(maxEntities = tableOption1.AvailableRowCount)-> SetRow(tableOption1, RowId)-> Assign(ModelEntity._id = tableOption1.id, ModelEntity.row_num = tableOption1.row_num, ModelEntity.temp = tableOption1.temp)-> Assign(RowId = RowId + 1)->End Decide1(IsOption1 = False)-> Decide2(IsOption2 = True)-> Assign(maxEntities = tableOption2.AvailableRowCount)-> SetRow(tableOption2, RowId)-> Assign(ModelEntity._id = tableOption2.id, ModelEntity.row_num = tableOption2.row_num, ModelEntity.temp = tableOption2.temp)-> Assign(RowId = RowId + 1)->End Decide2(IsOption2 = False)-> End] ************************* It is here that I could like to simply the logic using something like _SelectedTable instead of tableOption1 and tableOption2. I would like to know how to replace Source1_CreatedEntity's above step definitions with something like: [Begin-> Assign(maxEntities = _SelectedTable.AvailableRowCount)-> SetRow(_SelectedTable, RowId) Assign(ModelEntity._id = _SelectedTable.id, ModelEntity.row_num = _SelectedTable.row_num, ModelEntity.temp = _SelectedTable.temp)-> Assign(RowId = RowId + 1)-> End] But this replacement does not work. The following works, but I'm searching for a way to do this without replacing the column name with an indexed value: [Begin-> Assign(maxEntities = _SelectedTable.AvailableRowCount)-> Assign(ModelEntity._id = _SelectedTable.id[RowId, 1], ModelEntity.row_num = _SelectedTable[RowId, 2], ModelEntity.temp = _SelectedTable[RowId, 3] )-> Assign(RowId = RowId + 1)-> End]
×
×
  • Create New...