Commit 0cc76c02 authored by Markus Klinik's avatar Markus Klinik
Browse files

rename some tasks and skills

Medical treatment -> Give medical treatment
Pilot -> Operator
parent f1cd6c88
...@@ -5,7 +5,7 @@ Multi-criteria decision making (MCDM) is the problem of picking a preferred solu ...@@ -5,7 +5,7 @@ Multi-criteria decision making (MCDM) is the problem of picking a preferred solu
In our domain, the decision consists of a number of sub-decisions: one has to decide which resource to assign to each skill. In our domain, the decision consists of a number of sub-decisions: one has to decide which resource to assign to each skill.
The decisions can be represented by a decision vector $\vec{x} = \tuple{x_1, x_2, \ldots, x_n}$. The decisions can be represented by a decision vector $\vec{x} = \tuple{x_1, x_2, \ldots, x_n}$.
Each decision variable $x_i$ can have its own domain. Each decision variable $x_i$ can have its own domain.
For example, the decision variable \emph{transport} has domain $\set{\text{Heli 1}, \text{Heli 2}, \text{Boat}}$, while the decision variable \emph{pilot} has domain $\set{\text{Bob}, \text{Alice}}$. For example, the decision variable \emph{transport} has domain $\set{\text{Heli 1}, \text{Heli 2}, \text{Boat}}$, while the decision variable \emph{operator} has domain $\set{\text{Bob}, \text{Alice}}$.
Every decision vector gives rise to an objective vector $\vec{q} = \tuple{q_1, q_2, \ldots, q_m}$. Every decision vector gives rise to an objective vector $\vec{q} = \tuple{q_1, q_2, \ldots, q_m}$.
The lengths of $\vec{x}$ and $\vec{q}$ can be different. The lengths of $\vec{x}$ and $\vec{q}$ can be different.
......
...@@ -56,11 +56,11 @@ ...@@ -56,11 +56,11 @@
\put(0.00092615,0.04771696){\makebox(0,0)[lb]{\smash{Alice}}}% \put(0.00092615,0.04771696){\makebox(0,0)[lb]{\smash{Alice}}}%
\put(0.00092615,0.01043809){\makebox(0,0)[lb]{\smash{Jan}}}% \put(0.00092615,0.01043809){\makebox(0,0)[lb]{\smash{Jan}}}%
\put(0.12767432,0.04771696){\makebox(0,0)[lb]{\smash{Prepare vehicle (Mechanic)}}}% \put(0.12767432,0.04771696){\makebox(0,0)[lb]{\smash{Prepare vehicle (Mechanic)}}}%
\put(0.12767432,0.08499584){\makebox(0,0)[lb]{\smash{Prepare vehicle (Pilot)}}}% \put(0.12767432,0.08499584){\makebox(0,0)[lb]{\smash{Prepare vehicle (Operator)}}}%
\put(0.12767432,0.15955359){\makebox(0,0)[lb]{\smash{Prepare vehicle (Transport)}}}% \put(0.12767432,0.15955359){\makebox(0,0)[lb]{\smash{Prepare vehicle (Transport)}}}%
\put(0.36625912,0.08499584){\makebox(0,0)[lb]{\smash{Prepare ER (Medic)}}}% \put(0.36625912,0.08499584){\makebox(0,0)[lb]{\smash{Prepare ER (Medic)}}}%
\put(0.36625912,0.12227471){\makebox(0,0)[lb]{\smash{Prepare ER (ER)}}}% \put(0.36625912,0.12227471){\makebox(0,0)[lb]{\smash{Prepare ER (ER)}}}%
\put(0.36625912,0.04771696){\makebox(0,0)[lb]{\smash{Perform rescue (Pilot)}}}% \put(0.36625912,0.04771696){\makebox(0,0)[lb]{\smash{Perform rescue (Operator)}}}%
\put(0.36625912,0.15955359){\makebox(0,0)[lb]{\smash{Perform rescue (Transport)}}}% \put(0.36625912,0.15955359){\makebox(0,0)[lb]{\smash{Perform rescue (Transport)}}}%
\put(0.72413632,0.01043809){\makebox(0,0)[lb]{\smash{Give medical treatment (Medic)}}}% \put(0.72413632,0.01043809){\makebox(0,0)[lb]{\smash{Give medical treatment (Medic)}}}%
\put(0.72413632,0.12227471){\makebox(0,0)[lb]{\smash{Give medical treatment (ER)}}}% \put(0.72413632,0.12227471){\makebox(0,0)[lb]{\smash{Give medical treatment (ER)}}}%
......
...@@ -56,11 +56,11 @@ ...@@ -56,11 +56,11 @@
\put(0.00092615,0.04771696){\makebox(0,0)[lb]{\smash{Eva}}}% \put(0.00092615,0.04771696){\makebox(0,0)[lb]{\smash{Eva}}}%
\put(0.00092615,0.01043809){\makebox(0,0)[lb]{\smash{Jan}}}% \put(0.00092615,0.01043809){\makebox(0,0)[lb]{\smash{Jan}}}%
\put(0.12767432,0.04771696){\makebox(0,0)[lb]{\smash{Prepare vehicle (Mechanic)}}}% \put(0.12767432,0.04771696){\makebox(0,0)[lb]{\smash{Prepare vehicle (Mechanic)}}}%
\put(0.12767432,0.08499584){\makebox(0,0)[lb]{\smash{Prepare vehicle (Pilot)}}}% \put(0.12767432,0.08499584){\makebox(0,0)[lb]{\smash{Prepare vehicle (Operator)}}}%
\put(0.12767432,0.15955359){\makebox(0,0)[lb]{\smash{Prepare vehicle (Transport)}}}% \put(0.12767432,0.15955359){\makebox(0,0)[lb]{\smash{Prepare vehicle (Transport)}}}%
\put(0.12767432,0.01043809){\makebox(0,0)[lb]{\smash{Prepare ER (Medic)}}}% \put(0.12767432,0.01043809){\makebox(0,0)[lb]{\smash{Prepare ER (Medic)}}}%
\put(0.12767432,0.12227471){\makebox(0,0)[lb]{\smash{Prepare ER (ER)}}}% \put(0.12767432,0.12227471){\makebox(0,0)[lb]{\smash{Prepare ER (ER)}}}%
\put(0.36625912,0.08499584){\makebox(0,0)[lb]{\smash{Perform rescue (Pilot)}}}% \put(0.36625912,0.08499584){\makebox(0,0)[lb]{\smash{Perform rescue (Operator)}}}%
\put(0.36625912,0.15955359){\makebox(0,0)[lb]{\smash{Perform rescue (Transport)}}}% \put(0.36625912,0.15955359){\makebox(0,0)[lb]{\smash{Perform rescue (Transport)}}}%
\put(0.72413632,0.01043809){\makebox(0,0)[lb]{\smash{Give medical treatment (Medic)}}}% \put(0.72413632,0.01043809){\makebox(0,0)[lb]{\smash{Give medical treatment (Medic)}}}%
\put(0.72413632,0.12227471){\makebox(0,0)[lb]{\smash{Give medical treatment (ER)}}}% \put(0.72413632,0.12227471){\makebox(0,0)[lb]{\smash{Give medical treatment (ER)}}}%
......
...@@ -40,22 +40,24 @@ These extensions are motivated by an example and described in the following sect ...@@ -40,22 +40,24 @@ These extensions are motivated by an example and described in the following sect
Consider the following example, in which the coast guard has to perform a search and rescue (SAR) operation. Consider the following example, in which the coast guard has to perform a search and rescue (SAR) operation.
To perform the rescue operation, four tasks must be carried out: To perform the rescue operation, four tasks must be carried out:
Prepare transport, which requires a transport, a pilot \todo{Fok: dit suggereert een helicopter; omdat je ook een boot beschouwt, denk ik dat driver een beter woord is}, and a mechanic. \begin{itemize}
Prepare ER, which requires an emergency room and a medic. \item Prepare transport, which requires a transport, an operator, and a mechanic.
Perform rescue, which requires a transport and a pilot. \item Prepare ER, which requires an emergency room and a medic.
Medical treatment, which requires an emergency room and a medic. \item Perform rescue, which requires a transport and an operator.
\item Give medical treatment, which requires an emergency room and a medic.
\end{itemize}
The coast guard has three transports: Two helicopters and a boat. The coast guard has three transports: Two helicopters and a boat.
There are two emergency rooms. There are two emergency rooms.
There are four people with the following skills: There are four people with the following skills:
Bob is a medic and a pilot. Bob is a medic and an operator.
Alice is a mechanic and a pilot. Alice is a mechanic and an operator.
Eva is a medic and a mechanic. Eva is a medic and a mechanic.
Jan is a medic. Jan is a medic.
The tasks partially depend on each other. The tasks partially depend on each other.
Perform rescue depends on Prepare transport. Perform rescue depends on Prepare transport.
Medical treatment depends on both Prepare ER and Perform rescue. Give medical treatment depends on both Prepare ER and Perform rescue.
\Cref{fig:SARSchedules} shows two possible schedules for this scenario. \Cref{fig:SARSchedules} shows two possible schedules for this scenario.
...@@ -87,14 +89,14 @@ The scheduler is free to pick any resource that has the required skill. ...@@ -87,14 +89,14 @@ The scheduler is free to pick any resource that has the required skill.
In our SAR example there are two places where there is an additional restriction, not expressible in the MSRCPSP. In our SAR example there are two places where there is an additional restriction, not expressible in the MSRCPSP.
The tasks Prepare transport and Perform rescue both require the same transport. The tasks Prepare transport and Perform rescue both require the same transport.
It does not matter which transport is selected, but the same must be selected for both tasks. It does not matter which transport is selected, but the same must be selected for both tasks.
The same is true for the emergency room for the tasks Prepare ER and Medical treatment. The same is true for the emergency room for the tasks Prepare ER and Give medical treatment.
The pilot for Prepare transport and Perform rescue may very well be different, as may be the medic for Prepare ER and Medical treatment. The operator for Prepare transport and Perform rescue may very well be different, as may be the medic for Prepare ER and Give medical treatment.
In a C2 scheduling problem it must be possible to express the constraint that the same resource must be chosen for two skills \todo{Fok: een taak 'bezit' volgens mij geen skill (of beter capability) maar ik denk dat requires hier beter is: a task requires a capability....} of different tasks. In a C2 scheduling problem it must be possible to express the constraint that the same resource must be chosen for two skills \todo{Fok: een taak 'bezit' volgens mij geen skill (of beter capability) maar ik denk dat requires hier beter is: a task requires a capability....} of different tasks.
These constraints are called \emph{resource affinity constraints}. These constraints are called \emph{resource affinity constraints}.
Both schedules in \cref{fig:SARSchedules} have the same transport and the same emergency room selected, but the scheduler is free to select different pilots and different medics. Both schedules in \cref{fig:SARSchedules} have the same transport and the same emergency room selected, but the scheduler is free to select different operators and different medics.
...@@ -103,11 +105,11 @@ Both schedules in \cref{fig:SARSchedules} have the same transport and the same e ...@@ -103,11 +105,11 @@ Both schedules in \cref{fig:SARSchedules} have the same transport and the same e
Another extension of the MSRCPSP required for C2 is that the quality of a resource \todo{Fok: ook hier geldt volgens mij: het gaat om de quality of the capability en niet om de quality of the resource...} for a task can depend on external circumstances. Another extension of the MSRCPSP required for C2 is that the quality of a resource \todo{Fok: ook hier geldt volgens mij: het gaat om de quality of the capability en niet om de quality of the resource...} for a task can depend on external circumstances.
In our example we assume that a helicopter can only be deployed in good weather. In our example we assume that a helicopter can only be deployed in good weather.
When the weather is bad, the boat must be used. When the weather is bad, the boat must be used.
Additionally, Bob does not have a helicopter license, so if the helicopter is selected, Bob can not be selected as pilot. Additionally, Bob does not have a helicopter license, so if the helicopter is selected, Bob can not be selected as operator.
Schedule B \todo{name schedules A and B} in \cref{fig:SARSchedules} has been calculated in a good weather situation. Schedule B \todo{name schedules A and B} in \cref{fig:SARSchedules} has been calculated in a good weather situation.
A helicopter is selected as transport, but Bob is not the pilot. A helicopter is selected as transport, but Bob is not the operator.
Schedule B has been calculated in a bad weather situation. Schedule B has been calculated in a bad weather situation.
The boat is selected as transport, and Bob as pilot. The boat is selected as transport, and Bob as operator.
In general, we want the quality of resources for a task to be of arbitrary formulas or computations \todo{Fok: volgens mij moet je het woord of hier weg laten; anders begrijp ik deze zin niet}. In general, we want the quality of resources for a task to be of arbitrary formulas or computations \todo{Fok: volgens mij moet je het woord of hier weg laten; anders begrijp ik deze zin niet}.
One can think of things like the distance of a person to a room on fire, the type of a fire, the hours since the last time a person rested, or rules of engagement. One can think of things like the distance of a person to a room on fire, the type of a fire, the hours since the last time a person rested, or rules of engagement.
...@@ -127,8 +129,8 @@ Quality functions take the following parameters. ...@@ -127,8 +129,8 @@ Quality functions take the following parameters.
\item The \textbf{resource} whose quality \todo{Fok: quality of the capability} should be calculated. For example Bob \item The \textbf{resource} whose quality \todo{Fok: quality of the capability} should be calculated. For example Bob
\item The \textbf{operational picture}. If the OP says that Bob is at the end of a 10 hour shift, he might perform with decreased quality. \item The \textbf{operational picture}. If the OP says that Bob is at the end of a 10 hour shift, he might perform with decreased quality.
\item The \textbf{task} to which the resource is assigned. For example Prepare transport. \item The \textbf{task} to which the resource is assigned. For example Prepare transport.
\item The \textbf{skill} to which the resource is assigned. The quality function needs to know whether Bob is assigned as pilot or mechanic to Prepare transport. \item The \textbf{skill} to which the resource is assigned. The quality function needs to know whether Bob is assigned as operator or mechanic to Prepare transport.
\item The \textbf{decision vector} that tells which resources are assigned to the other skills. If the helicopter is assigned as transport to Prepare transport, Bob performs badly as pilot. \item The \textbf{decision vector} that tells which resources are assigned to the other skills. If the helicopter is assigned as transport to Prepare transport, Bob performs badly as operator.
\end{itemize} \end{itemize}
\paragraph{Objectives} \paragraph{Objectives}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment