7_2_6

WHAT: Design and use a computational abstraction that models the state and behaviour of real world problems and physical systems

HOW:

Activity 1

Firstly...what is computational abstraction? Look at the images of houses below:

These are all models of houses. The one on the right shows lots of detail about the house and the one on the left has hidden all of the detail of the house.

When would you need to use each version of the house?

Write down your thoughts for the left, middle and right house.

Activity 2

Computational abstraction is hiding the detail that we don't need when solving a problem. If I was going to produce a map then I might use the left house. If I was drawing a sketch for an architect to interpret, I may use the middle image. If I wanted a friend to be able to recognize my house when they were coming round for tea then I might give them the one on the right.

Take a look at this image:

What has been hidden from the viewer in this image?

Is there anything else that could be hidden?

If I wanted to know about travel routes in the UK, what could be hidden? What becomes irrelevant?

Activity 3

When we model real world problems, we can hide unnecessary detail to make it easier to see the solution.

Download this file and print it out. Have a go at the activities on the sheet.

Resource source: CS Unplugged: csunplugged.org/graph-colouring/

By limiting the number of colours used on a map, we can make them simpler to read. The map of Europe below shows an example of this.

Image source: mapswire.com

Activity 4

Draw a map of your school. Think about the detail that can be hidden to make it easier to follow the map and find a classroom.

Activity 5

Planning the shortest route.

Using the map that you created in Activity 4, choose a start and end location. Imagine that each classroom and external door is a "bus stop" and you must stop at each "bus stop" for 30 seconds before moving on. With that in mind, what is the shortest route? How can you remove more detail to make this easier to solve?

You can see an example of this process on the presentation here.

Or watch the YouTube video below:

The skill being used here is called "creating a graph" we have replaced classrooms and doors with nodes and created links between each node where a link is possible. By creating a graph, we can hide the detail and make it easier to solve a problem.

Activity 6

How can we now apply this skill to a problem that has nothing to do with maps? If you needed to write an algorithm for rock, paper, scissors then how could you use abstraction to help with this? Could a graph be created to represent the relationship between each item in the game?

(if you don't know how to play then click this link)

CHECK:

EMBED:

Activity 1

Create a graph to represent your personal social network of friends and relatives. They will all link to you but how might people in your network link to each other? Be as accurate as you can with your graph.

Is there anyone in your social group that is only linked to you?

Is there anyone in your social group that links to everyone that you do?

Activity 2

If you carry out an image search for "Facebook Map" then you will see a graph showing the links across the world. This website shows the evolution of social media and how the connections have grown over the years.

Look at the evolution of Facebook and notice which areas of the world started to use it first.

1. Why do you think this was the case?

2. What factors could affect an area of the world from connecting to social media?

3. How could you find solutions for the factors mentioned in question 2?

CLASSROOM IDEAS:

More examples of real world problems could be:

  • How can we make the dinner queue faster?
  • What is the cheapest way to get public transport from school to a local attraction?
  • When is the best time to watch a popular film at the cinema?
  • How can you create the perfect growing conditions in a greenhouse?
  • How much fuel would be required to go from x to y?