![]() (That is too say, the inject function isn't linked to the agent that called it). My problem with this approach is that, I hoped for the inject agent to be a 'logical' representation of the ACTUAL crate, but I think all i did was just create another agent with its own changing attributes. Through simulation, and visualization, you can develop the best warehouse design, layout and operations for today and the future. The injected agent will be sunk - otherwise it will flow back to the service block and seize the worker again. AnyLogic can be used as warehouse simulation software, which flexible capabilities give you the power to model your warehouse as in the real-world the structure, the processes, and the resources. Afterward, it enters a select block which checks the variables "InRange" and "Empt圜rate'' where if the crate on the current conveyor (the one that triggered the inject) has moved to the next station (next conveyor). This 'logic' flow chart then seizes a worker at a service block and is delayed for the amount of time it takes to hang a bird (once the delay is finished - the variable "NumberOfBirds'' is reduced by one. When a crate agent enter the conveyor block, it triggers an inject(1) for a source block on a separate "logic" flow chart (which represents the activities that happen at that station/conveyor). The idea was that for every hanging station a conveyor block was placed to represent that station. There was another approach that I tried which just involved flow charts. With your suggestion, is it still possible to seize a worker from a resource pool? It pretty vital that I do that because afterwards I want to monitor the utilization of each pool. The image added is to help understand the process. I would really appreciate some help, I have been stuck on this activity for the past three days trying different techniques. Ideally, the material handling library seems like the answer but unfortunately, I can only work with the process modeling library because I allows me to model for more than an hour. I also cant just create a general service block that deals with this entire activity because, for later models, I would want to see the effects of adding or removing allocated workers.Īny idea how I would go about trying to model activities that happen ON the conveyor? where the amount of time to perform this activity is limited by the position of the agent on the conveyor. (Meaning I cant use delay blocks because the process doesn't stop for that particular activity or task). ( I hope I painted a good picture of what this particular activity looks like).īasically, each worker only has a set amount of time to unload as many birds as possible before they are out of reach and move to the next worker. But usually the crates are empty when they pass the last worker. When the last worker notices that a crate passing him isn't empty, he will stop the conveyor allowing him (and his colleagues) to empty the crates in front of them. These workers stand next to each other and the crates pass by them on a conveyor. This Hanging station has three workers who each hang the birds onto the line and empty the crates. Okay, so here's where I'm struggling - when crates arrive (with live birds) they are loaded onto a conveyor which transports them to the Hanging Station. I'm using AnyLogic to simulate the plant and the product flow with the aim of determining the least required amount of floor workers for the abattoir to run at its target capacity. step).Hi, I am an industrial engineer doing my final year project on a broiler abattoir. In the arguments tab, add a new argument with Name "agent" and Type "MyAgent" (or the type you have created in the 1. How to find itĭrag a Function from agent palette to the main, let's name it getServiceTime. Select MyAgent(or the agent type you have created in the 1. You can do this by going to the properties of your agent type, Avandced: extends other agent. Make your two agent types to extend the MyAgent type. I have a solution, it may be not quite efficient but seems doing what you want to achieve.Ĭreate a new agent type and leave all the configurations default.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |