Jump to content

Search the Community

Showing results for 'create entitys based on probability'.

  • 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. 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. 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.
  3. 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.
  4. 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.
  5. Did you create an object-reference type of properties?
  6. 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.
  7. Hello, You can go to the process tab in the model. Once in the process tab you can click on create process to create add on processes at the model level.
  8. Hello everybody, I'm trying to make this work but I cant Type/Conteiner BinBig BinMed BinSmall Product1 1 1 - Product2 - 1 1 Product3 1 - 1 Product4 1 1 1 I want to make a node where these entities (Products and Bins) are convined in one batch, I try to use a process based in decitions and search.. the file is attached if you wanna take a look on it.. (the product have to be the parent) OptimoContenedores2.spfx
  9. Hi, Usually what I do in cases that I want to check capacity before sending is create a "dummy" Resource. This way I seize its capacity before sending the entity forward. If it has no capacity for a given entity, the entity will just wait until it has capacity.
  10. 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.
  11. 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
  12. Clearpath Robotics is looking to hire a Senior Industrial Simulation Developer at our Canada headquarters, or virtually based out of North America. For more information see posting here
  13. I know it's been a while, but I just came across this question and I'm responding in case this can help someone else. Depending on the problem, modeling nurses as patient capacity might not work; for example, if you need to limit both a nurse's active utilization and the nurse's patient load. Two general approaches exist: Easier: Create two different resources, rename one 'NursesActive' and the other 'NursesPassive.' Set the latter to have n times the capacity of the former, where n is the patient ratio at n:1. Require simultaneous seizure of one of each type of resource when first assigning the patient, and release them separately, re-seizing the former as needed. Harder: Subclass the Resource object and create states to track the patients assigned and a property to define the patient ratio. This approach enables more fine-tuning as necessary.
  14. 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
  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. Hello, I have two concerns. In one of my small models I want my transporter to make a round and pick up the entities at the different locations and bring them to a destination (Server1). In addition, I would like that the individual times are measured with a state MyModelEntity.TmpStart and MyModelEntity.Duration, in order to calculate afterwards with a transport cost rate the cost for each individual part. Unfortunately I'm getting desperate with this and getting various error messages, does anyone know how to implement this? Best Regards, Gashi
  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. Hi, everyone I am developing a postgraduate project related to hospital OPD simulation. In one examination room, there will have a round 5 to 6 doctor using this room during the week. Now I am facing one problem, because every doctor process have difference processing time(function) as picture below(The number is doctor ID). Is there any method to set a difference process time during every shift in one server? or I have to create a process for this them?
  20. A basic photo eye object that can be used with conveyor belts. Photo eye is based on a transfer node object. It collects statistics on time in blocked state, cleared state and throughput. Transfer nodes on entered and on exited add on processes can be used as on blocking and on clearing add on processes. Photo eye has properties to define the delays for on blocked and on cleared. Photo eye will wait to complete on blocked delay to execute on blocked add on process. Similarly, photo eye will wait to complete on cleared delay to execute on cleared add on process. PE_Library.spfx
  21. Hello I wanna create Blockchain simulation in Simio I have student license, can you please help me how Can i make my topology
  22. Well, there are two problems in your model: First, there are many gates that are not following the data table. Second: every gate should be on the Gate table, regardless if they will have flights or not. If not, they will create entities on every single arrival of the departure table. You have many gates that are not included on Gate table.
  23. 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
  24. I am working on a model of a production line where one of the work stations is a long work table with six workers at it. These workers perform identical assembly tasks and will sometimes leave the table in order to transport finished items to the next step in production. I am currently representing the work table as a single server. I am wondering if it is possible to dynamically change the server's capacity based on how many workers it is able to seize at a given time. Essentially, the server can process with just one seized worker but can seize up to six. Is this something I can implement with Simio's built in functionality, or is it easier just to represent the six spots in the table as individual servers? Thank you!
  25. This is problematic in Simio because Simio considers only entity length (not width) and only when on a Path or Conveyor. I think the first thing to do is fix the nose to tail problem. If you happen to use Conveyors to model this, there are built-in features to manage spacing while stopped and different spacing while moving. But unfortunately Conveyors are limited to a single direction, so are perhaps not appropriate if this is a bi-directional taxiway. If you are using Paths, you can fix this by making each plane longer when you draw it. For example, if you are drawing a plane that is 50M long and you want it to stay at least 10M behind the plane in front of it, place a nearly invisible dot about 10M in front of the plane's nose, making the total plane length (including safety spacing) be 60M. Although Simio will still put the entities nose to tail, there will be a 10M safety spacing between the physical planes. The problem of conflict at merge points is a bit more tedious to fix. I'd recommend a resource-based approach, like illustrated in the SimBit in Merging Conveyors Controlled by Gate. You can use this approach even when using Paths.
×
×
  • Create New...