Jump to content

stationary entitiy with resources being seized in a certain order


sswann
 Share

Recommended Posts

I am trying to model a system that has ships arriving to 1 of 8 berths. A ship stays in the same berth for 10 days and does not move, but instead different crews (resources) come to the ship at different times in the following order:


Day 1 - unload crew

Day 3 - fuel crew

Day 5 - load crew

Day 9 - catering crew


Each type of work is performed by a different type of crew which rotate through the ships in the order they arrive to their berth. There is a chance that the crew will not complete all of their work in their assigned duration. At the end of each scheduled interval, if a crew has not completed all their assigned work, part of that crew will finish their work the next day, reducing the size of the crew to work on the next ship. For example: if at the end of Day 2, the Unload crew has not finished all their work on Ship1, on Day 3 a few of the unload crew will stay back and finish unloading Ship1 while the rest of the crew will move on to unload Ship2. Regardless of whether all the previous work was completed, fueling will begin on Day 3 as scheduled, so there could be more than 1 type of crew working on the same ship at a time. Additionally, as crews get better at their work, the day that a certain task begins may get moved up (i.e. fueling may start on Day2 instead of Day 3 after some period of time).


At the end of Day 10, regardless if all the work was completed, the ship leaves the berth.


I'm looking to see if anyone has some suggestions on how to approach this problem - entity staying in same place for a fixed duration while different crews come and leave in a certain order for a certain period of time.

Link to comment
Share on other sites

It sounds like a very interesting problem. There are a lot of moving parts to this.


I like to start problems like this by evaluating the real system to determine where the decisions are being made. For example:

--If the crews are smart and individually decide where and how they work, then I would lean toward making the crews "smart" with process logic on the crew objects.

--If a manager makes all the decisions for the crews, then I might instead have a process at the model level representing the manager.

--If the crew decisions are basically an outcome of the ships competing for resources, then that might indicate a more traditional approach of ships contending for resources.


Once you select the object where the "smarts" will reside, that might also indicate a modeling approach.

Link to comment
Share on other sites

Your problem composed of a set of related tasks which are serial and/or parallel. The easiest approach to model such a structure is to use task sequences elments and starttasks step. Examine ServerUsingTaskSequence.spfx for this type of modeling approach. It is so easy. Details are up to your logic. For example, If I were you I could use resource objects as secondary resources to simplfy modeling loose ends.

Link to comment
Share on other sites

Dave and gocken,


I've been working on an identical problem, and both of your answers have helped a lot. Its looking like the easiest way to model it is likely the new task sequence logic with clever resource seizing to represent crew sizes. Thanks!

Link to comment
Share on other sites

×
×
  • Create New...