Algorithms can have a big impact on our lives. More and more companies are building and using algorithms. Companies use them to pick products to advertise, suggest movies for you to watch, and even select who to hire for a job. As algorithms become more common, it will be essential for people to understand what they are and how to build them. In this challenge, you will build an algorithm that rates or ranks things you care about and that can be the start of a successful business.
Is LeBron James a better basketball player than Michael Jordan? Is Chinese food better than Tex Mex? In today’s internet world, data on people’s opinions are highly prized. One way to figure out those opinions is to ask people to complete surveys where they rate or rank their favorites and figure out how to use those results to create an ordered list of people’s top choices. The way they figure out the final ordered list of favorites is to create formulas that put together those answers in an automated process. That process is called an algorithm.
How one carries out the algorithm on the data is objective because it is a well-defined set of combination of computations. But the way the algorithm was built to weigh some characteristics as more important than others is not objective — the values of the designer of the algorithm come into play. In the case of basketball players, do you value their scoring more or less than their rebounding? In restaurants, do you like rice with your meal or prefer tortillas?
Many successful businesses are built around algorithms. Your challenge is to build an algorithm that uses people’s opinions to rate or rank something you care about and that can be the start of a successful business. Your solution must:
- Allow users to put in data and automatically rate or rank the thing you care about (You are not allowed to rate or rank students or physical appearance).
- Include weighted categories*.
- Be transparent (Users should know how your algorithm works and be able to test it).
- Include a way to make money.
*Weighted Categories: Algorithms often assign “weights” to categories depending on how important they are to the builder of the algorithm. For example, suppose you were building an algorithm to decide where to live when you graduate from college. You might care more about the average temperature of the city than the size of the city. You can use weights so that average temperature has a larger impact on the ranking than population. Explore the interactive spreadsheet
Web Link - Algorithm Worksheet
to see examples of algorithms that use weighted categories.
Click here for a printable version of this document: Article - Your Challenge (PDF)