Jump to content

Search the Community

Showing results for 'original token'.

  • 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. A simple approach is to create the highest resolution image you can find using any map program or other software. Save it off in one of the import formats: Hint: some software allows export as a high-resolution pdf. Then you can convert that pdf to a png file for import into Simio. Then import that as a symbol and place that in your model (preferably to its original scale). Then lock that to the background and build your model on top of it. The main down side of this approach is that it is limited by the resolution of your image, so if you zoom in, it might appear fuzzy.
  2. This post contains additional files associated with the paper "Agent-base modeling and simulation in Simio" by Thomas Kehl. The additional files include the original paper, an installer for the Simio Agent Library, the Simio Agent Library user extension, and further documentation. These files were created by Thomas Kehl and are not endorsed or supported by Simio LLC. Note also that these files were published with the paper in 2018 and might be out of date. 1585821475_SimioAgentBasedModeling-ThomasKehl.zip
  3. It seems the buffer capacity of the FinishedPitchFastStation is set to zero in the original file that comes with the book but was not explained in the book about this.
  4. We are currently updating our forum space! During this time, your posts may be moved from their original location. Here is one way to find your posts and their new location: 1. Go to your Profile. You can do this by selecting your profile picture in the upper right hand corner, or select your name in the upper right hand corner and then select Profile in the drop down: 2. Your profile should contain a collection of your posts. You can select your post's title to be direct to its current location. 3. The top of the page will list the forum path location.
  5. Thanks Adam for the reply. I know a fair amount about Processes; I just needed a clarification about some aspects related to large models created using tables. The example I mentioned in the original post may be simple but it could easily scale to include 100's of locations. I will give some examples of these aspects that get tricky in such large models below. Thanks Glenn for the clarification. The tip about finding where processes are being referenced in a model is great! The MultiEchelonSupplyChain example may look simple, but it has the potential to be complex. When I asked the question what I had in mind is a similar model but with 100s of locations like DistributionCenter and Retailer (Basic Nodes). Imagine you want 300+ basic nodes (like in my case) to have the same add-on process. Imagine having 300+ inventory elements that you want to write statistics for using a Write step. It's tedious to do things manually. As for referencing the same add-on process for 100s of objects (basic nodes in my case), I found a trick, which is to add the add-on process to one of the objects and then sub-class it so that the process becomes a default for the newly sub-classed object. Then change all the other objects to the new sub-classed object. As for writing statistics for 300+ inventory elements, I couldn't find a way to automate the process. To be clear, I want (for each inventory element) to write statistics at various points throughout the simulation run. The standard reported stats for inventory elements are only "Totals" or "Averages" or a function of the two. What I want is to see how a statistic changes over time, so I need to write to a CSV file using a Write step. When working with large models, there's a need for automating some modeling aspects. Creating objects and elements can be easily automated using tables. It's dealing with these created objects and elements that sometimes needs tricks and workarounds to automate.
  6. After looking more into task sequences, it may work, but not without major rework, the primary issues are that the seizing is not the only thing that happens, and work will be done in phases, without moving from the server, and different patients may not have the same phases. I see how it could be done with a second model, but i'd like to avoid getting too complicated if I can Is it not possible to do what I asked in my original question?
  7. Hi GFurtado! Thanks for your answer! I'm using Simio 11.189 as my testing ground, and even though the ribbon is not the same, I can import data trough it, the problem is, even tho the data is imported into the table, it is not updated mid run so Simio keeps using the values previous to the new import, I'll elaborate a bit. Imagine these are the original values in the binded table I created. With those original values, I start the simulation and after a while I update the binded file (the .csv where Simio is taking values from) and I click on update table with the following options enabled. (Bear in mind! I've tried all of the options in the image below to no avail!) (Options used before clicking update mid-run) (Updated mid-run table, values get updated but Simio doesn't use them!) While the values get updated, Simio doesn't use them in this run (in the example I posted, it would only use the original first 9 values instead of all of the 19 values provided). As further context, I am indeed trying to make kind of a 'wacky' simulation, my idea is to update the .csv providing the data to the table at periodic intervals with new data from a real life reading from a machine, or something similar, and use that data as the entity creation time to try and make kind of a 'parallel' simulation with the actual readings of the system. But of course, for me being able to do that I need to know if Simio can update tables with new data and USE that new data mid - run! Thank you so much for your reply and for your time! Have a great one!
  8. As far as I know you can not accelerate the speed of an entity on any link? you should use tricky solutions to overcome this difficulty. One of the trick is setting the speed of entities to infinity right after entering node a. then changing the desired speed of path 3 and path 5 to some meaningful values. In the attached model this trick is applied. Note that the assigned values (i.e., Path3.Contents.NumberWaiting) should be replaced by any reasonable values. This assignment is only for illustrative puposes. Note that by this way we made the speed of modelentities limitless but at the same time we limit their speed with the speed of paths. you can do any other tricks as well... One of them maybe changing the type of the modelentities right after entering path 3 and path 5 (say path3_modelentities and path5_modelentities) by creating a copy of the associatedobject. Be sure to destroy the original one. And then whenever you need to increase their speed you should search their population by a search step and then assign appropriate speeds to them individually. These are the ones that come to my mind at the moment, but you can find some better methods by pondering. EntitySpeed4_me.spfx
  9. 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.
  10. Hi! I'm sea, making some user-defined selection rule. I wonder that what is the exact meaning of "based on entity ID" in your question. is it same as creation sequence, like order date? I know original value expression was "Candidate.Entity.Priority" in the dynamic selection rule. But I'm not sure that is oriented from arrival sequence at specific buffer.
  11. i want to find the original object name (without instantiation or population eg. just Ca123) is this possible ? how ? ( from CA123.35357 to just CA123 uising expressions, CA123 belongs to CustomTruck model)
  12. If you have a batched entity (through Batch step or Combiner object), there is only one parent entity and the rest member entities. Thus, one entity exits the parent node, the others exit the member node. If the Separator instead did a Make Copies instead of the Split Batch, you still have the original parent entity (incoming entity) and the member entities (copies). If you need to split the entities in different directions, you should look at having both of those nodes connected to a single node where you then make the decision to go in two different directions.
  13. Hello, there! I'm quite new to Simio. I saw "SchedulingDiscretePartProduction" example recently and noticed that there was B2MML data schema which was very impressive. So, What i have wondered is whether the data schema in the example is exactly same as B2MML data schema. Or, are there some changes from original schema? In addition, does anybody know where to get some information about B2MML data schema? Thank you. Jay.
  14. you can use a create step for making a copy of your original entity. Also, you can use seperator object for the same purpose. You can look around simbits by using create step or seperator keywords.
  15. I'm new to Simio. I'm trying to split my original entity into two different parts. The goal is to have the entity be separated, with half of them having a different server processing times through the same server.
  16. First define a real state variable to your modelentity named "livingtime" after its creation. Then make a copy of your modelentity and send the copy of modelentity to a process (maybe called as death_process). Place a delay step and set delay time as modelentity.livingtime. Of course the original one should go its way. Then place a search step and find the original modelenity in the system when the time is up at delay step (while finding the original entity you should set a match condition such as candidate.modelentity.ID==modelentity.ID etc. I am not sure whether the ID's of both entities are same, you should try. If it does not work you should try to match creation times of them (both should be same) or any other user defined state variables or properties). If the search is succesful make necessary controls (i.e., if it owned any resource release them etc.) by placing necessary steps following found branch. You should remove and transfer the found modelentity (it is the original one) to appropriate place. At the end you should place a destroy step following the original branch or even transfer it to appriate place. It depends on your goals.
  17. Your original problem stated: It seems the best and simplest approach is illustrated in SimBit SelectEntityTypeFromTable . Your table would have 10 rows, one for each entity type. You would add a 2nd column to hold the weight or frequency of selection for each entity type. Set your MaximumArrival on the source to 900 to avoid any overload.
  18. subclass a workstation object, override perform teardown activity process of this subclassed object then at the end of the process steps (before the transfer step) use only one create step then assign the type of the created modelentity to swarf (place an assign step to the end of the created branch of create step and also tie this branch to the transfer step if it is required) and assign the original modelentity type to part (if it is required)... this will ensure that all of the operations (setup, processing and teardown) occur on the single part, and THEN two separate entities are made?
  19. You can use two Create steps within a process to create two different types of entities and simply destroy the original entity when you no longer need it. Assign step can be used to assign information to the new entities that you may wish to transfer from the original entity.
  20. Petr, I tried out your updated version, as I had used Glen's original in the past. There is definitely a speed boost with this version. My "test" import file is the 25 X 25 grid attached (625 BasicNode and 1200 Path Objects.) On my old laptop this imports in about 60 seconds. I noticed that the progress bar works great for the Objects sheet, however it does not appear to update when the Links are imported. The progress remains at 0 while the links are imported, though the routine works and I see the dialogue at the end with no errors. The nodes only take about 10 seconds to import and the links constitute the remaining ~ 50 seconds. I tried turning off visibility of the links/arrows, but this made no difference. I haven’t tried vertices yet. Also, note that I had to re-build the add-in in Visual Studio, as I seem to have an issue with adding add-in .dll's from an outside source to my ..\SimioUserExtensions directory. Hopefully I did not break the application in the process. Thank you very much - this is very useful! 25 X 25 Grid Import.xlsx
  21. Hi I want to change a state-variable of each entity of a specific type. I am trying to reach this goal by using a search-step in a Process. The process is executed correctly but the search-step is not doing anything. I have set the following values for the search-step: CollectionType: EntityPopulation Entity Type: Besucher Search Type: Forward Match Condition: True Limit: Infinity The goal is that each entity of Type Besucher should flow to the "Found"-Branch where I have created an assign-step for changing the state. But the Step following the "Found"-Branch is never reached and also the Step following the "Original"-Branch is never reached (I have set a breakpoint at thia steps.) I have also attached a screenshot. I hope, someone can help me.
  22. Is the search step being executed? Have you tried a break point on that step? If tokens are entering that step but not exiting through either the "original" or the "found" branch that would imply a pretty major bug, I think Can you post an example model demonstrating the behavior you are seeing? -Adam
  23. The Server knows that there are 20 units on the pallet, but it cannot access the individual processing times for each product without using process logic. Use a Search step to find all the units on the pallet and add the individual processing times to a state on the pallet, then use this state variable as the processing time on the server. To do this, use a process on the Before Processing trigger. Add a Search step to search the QueueState 'ModelEntity.BatchMembers' (and set the Limit property to 'Infinity'). Create 1 state variable on the model - TempStateName, and 1 on the ModelEntity - TotalProcessingTime. Then on the Found branch put as Assign step to assign a State variable the value of the individual processing time for each unit. Setup the Assign state like the following: State Variable: TempStateName, New Value: TempStateName+ (Unit processing time). TempStateName is a variable used to collect the sum of the unit processing time and save that value to the state on the pallet. Then on the Original branch put another Assign step:State Variable:ModelEntity.TotalProcessingTime, New Value: TempStateName. Then add an Assign to reset the TempStateName to 0. On the Server's Processing Time property, put 'ModelEntity.TotalProcessingTime'
  24. An alternative approach might be using a combiner upstream to the WS to create a fictional entity, let's call it "block", which contains all 3 objects. This way, the workstation process a single entity (the block). All 3 original entities enter and leave the WS at the same time, obviously. Downstream the Ws, you can split the block into its 3 original entities, and it's all done. Meilleures salutations,
  25. Thanks for your reply Petr Tulach. I've already emailed you I would like to add some information that I did not state on the original post. Thus, I would like to emphasize that, to update the layout of a single model, I have to delete all the objects on its Facility and then create them anew. The simple process of deleting all the models can take hours! Sometimes, it takes more time to delete them all than to create a new warehouse (I can't understand this). Thus, I have 2 processes each 1 consuming more that 1 hour! All of this, just to update the logic of all the other Simio files I have that are using the same logic... Isn't there a better way to do this? So, I really would apretiate some help, even if it is just to tell me that there is no alternative to what im currently doing (at least I would know I have to do it this way, unfortunately)
×
×
  • Create New...