Scoring

There are 3 major components of the Trial Score.

  1. Cost Factor: How much does the system (sensors) cost?

  2. Efficiency Factor: How fast or efficiently did the system complete the task(s)

  3. Task Score: How well did the task(s) get performed?

Cost Factor

The Cost Factor \(CF\) compares the cost of the sensors chosen by the team to the average of all sensor configurations across all teams.

  • \(TC\) is the total cost of the sensors in the team’s configuration.

  • \(TC_{avg}\) is the average sensor cost across all teams.

  • \(w_c\) is a weighting constant for cost factor.

Cost Factor

\[CF = w_c \cdot \frac{TC_{avg}}{TC}\]

Efficiency Factor

The Efficiency Factor \(EF_i\) for order \(i\) compares the time to complete order \(i\) for the team to the average of all teams’s times to complete order \(i\).

  • \(T_i\) is the time to complete order \(i\)

  • \(T_{avg_{i}}\) is the average time to complete order \(i\) for all teams

  • \(w_t\) is a weighting constant for efficiency factor.

Efficiency Factor

\[EF_i = w_t \cdot \frac{T_{avg_{i}}}{T_i}\]

Task Scores

Each submitted order will recieve a task score based on the required task for that order (Kitting, Assembly, or Combined). Each task score is generated from Boolean conditions.

Kitting Task Score

  • A kitting task has \(n\) parts that need to be placed on the kitting tray.

  • A shipment has \(m\) parts on the kitting tray.

  • For each task there are two Boolean conditions:

    • \(\texttt{isCorrectTrayID} \rightarrow A ~~\) : true if the shipment tray ID is correct.

    • \(\texttt{isCorrectDestination} \rightarrow B ~~\) : true if the shipment was sent to the correct destination.

  • For each quadrant \(q\) of the kitting tray there are four Boolean conditions:

    • \(\texttt{isCorrectType}_{q} \rightarrow C ~~\) : true if the part type in quadrant \(q\) is correct.

    • \(\texttt{isCorrectColor}_{q} \rightarrow D ~~\) : true if the part color in quadrant \(q\) is correct.

    • \(\texttt{isFlipped}_{q} \rightarrow E ~~\) : true if the part in quadrant \(q\) is flipped.

    • \(\texttt{isFaulty}_{q} \rightarrow F ~~\) : true if the part in quadrant \(q\) is faulty.

Tray Points

\[\begin{split}\texttt{pt}_{t} = \begin{cases} 1, &\text{if} ~~ A \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Quadrant Points

\[\begin{split}\texttt{pt}_q = \begin{cases} 0, &\text{if} ~~ \lnot C \lor E \lor F \\ 3, &\text{if} ~~ D \\ 2, &\text{if} ~~ \lnot D \\ \end{cases}\end{split}\]

Bonus Points

\[\begin{split}\texttt{pt}_b = \begin{cases} n, &\text{if} ~~ \sum_{q}^{n}{\texttt{pt}_q} = n\times 3 \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Extra Parts Penalty

A penalty is only applied if more parts are on the tray than needed.

\[\begin{split}\texttt{pn}_{ep} = \begin{cases} m - n, &\text{if} ~~ m>n \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Wrong Tray Penalty

\[\begin{split}\texttt{pn}_{t} = \begin{cases} 1, &\text{if} ~~ \lnot A \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Destination Multiplier

\[\begin{split}\texttt{pm}_{d} = \begin{cases} 1, &\text{if}\, B \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Kitting Task Score

\[S_{k} = (\texttt{pt}_{t} + \sum_{q}^{n}{(\texttt{pt}_q)} + \texttt{pt}_b - \texttt{pn}_{ep} - \texttt{pn}_{t}) \times \texttt{pm}_{d}\]

The task score cannot be negative, if the calculation is negative the score will be set as 0.

Assembly Task Score

  • An assembly task has \(n\) parts that need to be assembled into the insert.

  • For each task there is one Boolean condition:

    • \(\texttt{isCorrectStation} \rightarrow A ~~\) : true if the assembly was done at the correct station (as1, as2, as3, or as4).

  • Each slot \(s\) in the insert has the following Boolean conditions:

    • \(\texttt{isAssembled}_{s} \rightarrow B ~~\) : true if the part in slot \(s\) is reported as assembled.

    • \(\texttt{isCorrectColor}_{s} \rightarrow C ~~\) : true if the part in slot \(s\) is of correct color.

    • \(\texttt{isCorrectPose}_{s} \rightarrow D ~~\) : true if the part in slot \(s\) has the correct pose.

Slot Points

\[\begin{split}\texttt{pt}_s = \begin{cases} 0, &\text{if} ~~ \lnot B \\ 3, &\text{if} ~~ C \land D \\ 2, &\text{if} ~~ C \lor D \\ 1, &\text{if} ~~ \lnot C \land \lnot D\\ \end{cases}\end{split}\]

Bonus Points

\[\begin{split}\texttt{pt}_b = \begin{cases} n, &\text{if} ~~ \sum_{s}^{n}{\texttt{pt}_{s}} = n\times 3 \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Station Multiplier

\[\begin{split}\texttt{pm}_{s} = \begin{cases} 1, &\text{if}\, A \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Assembly Task Score

\[S_{a} = (\sum_{s}^{n}{\texttt{pt}_s} + \texttt{pt}_b) \times \texttt{pm}_{s}\]

Combined Task Score

  • A combined task has \(n\) parts that need to be gathered from the environment and assembled to the insert.

  • For each task there is one Boolean condition:

    • \(\texttt{isCorrectStation} \rightarrow A ~~\) : true if the assembly was done at the correct station (as1, as2, as3, or as4).

  • Each slot \(s\) in the insert has the following Boolean conditions:

    • \(\texttt{isAssembled}_{s} \rightarrow B ~~\) : true if the part in slot \(s\) is reported as assembled.

    • \(\texttt{isCorrectColor}_{s} \rightarrow C ~~\) : true if the part in slot \(s\) is of correct color.

    • \(\texttt{isCorrectPose}_{s} \rightarrow D ~~\) : true if the part in slot \(s\) has the correct pose.

Slot Points

\[\begin{split}\texttt{pt}_s = \begin{cases} 0, &\text{if} ~~ \lnot B \\ 5, &\text{if} ~~ C \land D \\ 4, &\text{if} ~~ C \lor D \\ 3, &\text{if} ~~ \lnot C \land \lnot D\\ \end{cases}\end{split}\]

Bonus Points

\[\begin{split}\texttt{pt}_b = \begin{cases} n, &\text{if} ~~ \sum_{s}^{n}{\texttt{pt}_{s}} = n\times 5 \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Station Multiplier

\[\begin{split}\texttt{pm}_{s} = \begin{cases} 1, &\text{if}\, A \\ 0, &\text{otherwise} \\ \end{cases}\end{split}\]

Combined Task Score

\[S_{c} = (\sum_{s}^{n}{\texttt{pt}_s} + \texttt{pt}_b) \times \texttt{pm}_{s}\]

Trial Score

The trial score \(TS\) combines the cost factor, efficiency factors and task scores into a single score for ranking the teams.

  • For each order there is one Boolean condition:

    • \(\texttt{isPriorityOrder} \rightarrow A ~~\) : true if the order is classified as a priority order

Priority Multiplier

\[\begin{split}\texttt{pm}_p = \begin{cases} 3, &\text{if} ~~ A \\ 1, &\text{otherwise} \\ \end{cases}\end{split}\]

Trial Score

\[TS = CF \times \sum_{i=0}^{n}{(\texttt{pm}_p \times EF_i \times S_i)}\]