Information Technology Reference
In-Depth Information
When components arrive on time, the agent will most likely have used its inventory
for manufacturing PCs, and towards the end of the game it remains idle. To address this
issue, another modification was introduced. To determine if the agent needs more com-
ponents towards the end we have to ensure the agent has received all the components
and calculate the number of PCs that can be manufactured with the current inventory.
Considering the LastDeliveryDate (usually set to 121) that Socrates asks for compo-
nents, the algorithm starts checking on day LastDeliveryDate +30 if all components
have been received. If this is the case and there are enough days to manufacture more
PCs, Socrates starts ordering more components in small quantities. The total quantity
of components to be ordered depends on the number of remaining days in the game and
the quantity of PCs that can be assembled.
4.3
Dealing with Gaps in the Production
Although the steps described so far deal with some of the problems in obtaining compo-
nents and keeping the production steady, there are still gaps in the production schedule.
To this end, a strategy that would detect the gaps in the factory utilisation for the whole
game by analyzing all the ActiveOrders of components after the agent has accepted of-
fers from suppliers for all the initial RFQs sent was deployed. The ActiveOrders provide
information about when the components are supposed to be delivered and this will be
known early in the game. The algorithm determines the gaps in the factory utilisation
by looking at the delivery dates in the ActiveOrders :
1. Generate a virtual production of PCs with the current inventory (if any) utilising
100% of the assembly capacity, and determine the day in the game in which the pro-
duction of PCs falls below 100%.
2. The day found in the previous step is used to look for ActiveOrders that should be
delivered before that day or on that day. The agent has two alternatives: go to step 3 if
there are ActiveOrders , or alternatively go to step 4.
3. The ActiveOrders found give the agent a virtual inventory of components that will
be added up to the remaining inventory from step 1. The agent generates the virtual
production of PCs with the new inventory (the remaining inventory from step 1 plus the
virtual inventory) and determines the day in which the production stops due to lack of
components. The agent continues with step 2.
4. This step is executed if there are no more ActiveOrders , that is the agent has no more
components to manufacture for this day and probably for more days, because the next
ActiveOrders (if any) will be delivered later in the game. This will lead to a gap of
one or more days depending on when the next components arrive. The agent looks for
the next ActiveOrders that give the 100% factory utilisation, keeps track of the days in
which it cannot manufacture and goes to step 3. The number of days without production
is used to generate new RFQs.
5. The algorithm attempts to fill in the detected gaps by sending RFQs only for those
types of components necessary to have 100% factory utilisation during those periods
in the game. The agent sends RFQs to cover production for 1 day, thus if there is a
gap of 6 days in the production schedule 6 RFQs will be sent. The recursive algorithm
described above is executed every TAC day until day 200 to determine if the gaps have
Search WWH ::




Custom Search