5.6: Prioritization of Tasks

Now that a cost-benefit analysis of all the potential game tasks as been determined, it is time to make design priority lists. To do this, start with two separate lists. The first list covers robot qualities. This is the list of “What should the robot be like?” Examples of qualities include:

  • Speed - “The robot should be fast.”
  • Power – “The robot should be strong, able to push things easily.”
  • Agility – “The robot should be easily maneuverable.”
  • Low Center of Gravity – “The robot shouldn’t tip over easily.”

The qualities are based off the list of optimal tasks. The most desired qualities are the ones which are most critical to the success of the most optimal tasks. For example, if the most optimal task is placing baseballs in a goal on the opposite side of the field, speed would be very desirable in order to reduce the time spent traversing the distance across the field.

Below is an example priority list of robot qualities for a hypothetical competition robotics game. The objective in this game is to score baseballs in three goals at three different heights. More points are earned for baseballs scored in the higher goals. The goals are located on the opposite side of the field from the baseballs.

  1. Speed. The robot needs to be fast to repeatedly cross the field to gather baseballs and score them.
  2. Accuracy. The robot needs to reach desired positions in an accurate fashion, to have the precisions required to score the baseballs in the goals.
  3. Agility. The robot needs to be quite maneuverable in order to avoid obstacles and opponent robots in an effort to gather the baseballs.
  4. Low Center of Gravity. In order to reach the high valued goals, the robot must reach high in the air. Thus, the robot must  not tip at these heights.

The second list covers robot functionalities. This is a list of the abilities that the robot should have. This list should just include the ability, and not the actual implementation. That comes at a later stage of the design process. If possible, it helps to quantify the abilities. Examples of abilities that have been quantified include:

  • Traversing the field – “The robot should be able to traverse the full length of the field in less than five seconds.”
  • Picking up objects – “The robot should be able to pick up three baseballs at a time from the ground.”
  • Depositing objects – “The robot should be able to accurately lift one baseball to a height of 24” and release it, all in a time of four seconds.”

Once again, these qualities are based off the list of optimal tasks. The abilities that are prioritized higher are the ones that are most critical to the success of the optimal tasks. At this point, there should be natural parallels between the two lists. Below is an example priority list of robot abilities to play the same game described above.

  1. Drive – The robot needs the ability to drive across the field in less than four seconds, to maximize the amount of baseballs scored. The drive will also provide the ability to play defense against opposing robots.
  2. Picking up baseballs – The robot needs to be able to instantly pickup any baseball it touches, with a minimal amount of lining up. A large tolerance, allowing for minimal accuracy in lining up is desired to make the process as fast as possible. Being able to hold two baseballs at a time is desired, as it minimizes the number of trips across the field that are needed.
  3. Placing baseballs – The robot needs to be able to elevate to the height of the highest goal in less than two seconds and place two baseballs in the goal.

Notice that there is a sequential order to these sample priority lists. This is by design. You cannot place baseballs in a goal if you cannot pick up baseballs. You cannot pick up baseballs without being able to get to the baseballs. Thus the ability to place and pick up baseballs is completely dependent on the ability to get to the baseballs. Therefore, the ability to drive has to be your most important ability. Any time a specific ability is dependent upon another ability, this other ability must be a higher priority. After all, one cannot walk without first being able to crawl.

This example game is quite simple, hence the priority lists are also simple and straightforward. This is not the case with most competition robotics games. The lists are based on complex and detailed analysis, and will be much longer and more intricate than the ones presented here. The combination of these two lists will act as the Functional Requirements (See Unit 1, Step 3: Define, for more details) for the robot.

With the completed prioritized lists of abilities and qualities, it is now possible to start working on the new defined problem: “How do we build a robot that achieves the stated abilities and qualities?” With the new problem defined and identified, the next step is to proceed with the engineering process from Step 3. In other words, start deciding which qualities and abilities to pursue and how to pursue them based on the given design constraints. Please be sure to review the detailed information and lessons on this topic from Unit 1.