Pattern Recognition

Pattern recognition in problem solving is key to determining appropriate solutions to problems and knowing how to solve certain types of problems. Recognizing a pattern, or similar characteristics helps break down the problem and also build a construct as a path for the solution. Ever find yourself saying, 'where have I seen this before', could be a significant step in computational thinking.

Once you have decomposed a complex problem, it helps to look for similarities or 'patterns' in each segmented part of the problem. These patterns can help solve the larger problem more effectively. We look for things that have similarity in each order to address the problem. It may be that there are no common elements but it should still be a stage in the process.

Patterns exist between different problems and within a single problem.

Recognizing Patterns for Problem Solving in EveryDay Life

We can look for distinguishing attributes ( colour, shape, size), extract features or matching patterns.

Example 1: Can you spot the sequence in these numbers ?

{ 1,4,7,10,13,16,19,22,25, }

Example 2: How does pattern recognition work on images or photographs. Many people use face recognition in photos when posting to social media. This is based on pattern recognition, similar to fingerprints.

Example 3: Everyone of us has done laundry, with all your clothes including socks. After the socks have dried, you use pattern recognition in order to pair the socks back together. Although there is an algorithm where one method may be faster than another, pattern matching is a key to com posing the solution. There is similarities to finding a shirt of your size in a clothing store. We will relate these examples to modern solutions that deal with many more data items.

This face was recognized in this photo by pattern recognition.

Workshop Materials

The materials for this session is slightly different than the the other three sessions and this is intentional. We intend to develop computational thinking skills and Pattern Recognition is one of the 4 components, however we also want to emphasize that there are many examples where a computer or other devices may not be required.

List of Materials (all materials will be provided during the session)

Baking Cookies

The task of baking chocolate chip cookies highlights some common elements that you need to know to be . a creative chef for a series of smaller problems.

  • what kind of cake
  • what ingredients we need
  • how many people

And you can add more to this list...

Once we know the parameters, we can see that baking a cake of many types is not that different --- because patterns exist.

Let's examine some patterns in these recipes - in general terms.

Traffic Patterns - the Traveling Beaver

Let's examine some other common problems. Most participants will have navigated their way to this workshop and this is in itself a pattern recognition issues, mostly a transportation problem and an algorithmic design component as well. We will examine this in more detail with the lens of pattern recognition.

Beaver ponds

Beaver neighbourhoods consist of rivers running between ponds. Patricia is grumpy and wants to build one dam in each neighbourhood that will cause trouble. That is, she wants to block a single river so that beavers will not be able to travel between all pairs of ponds in the neighbourhood.

In which of the following neighbourhoods is Patricia unable to build her dam?

Knights \Tour

A single chess Knight is able to move on a small cross-shaped board. A knight moves two spaces in one direction and one space in another direction at right angles. It does not land on any spaces in between these squares. Your task is to create the algorithm that will have the knight visit each square without going off the board. We will share this in the workshop and discuss under the pattern recognition lens.

Tour Guide

A similar puzzle to the knights tour, the tour guide must visit each of the major attractions in a city and find the most feasible way to travel between the locations to complete the task. This is similar to travelling public transport problems. Compare Google Maps to a physical map vs GPs systems.

Homes and Utilities

This is a similar problem to bringing utilities to each home, a situation engineers face when building communities. What is the most effective and efficient way to connect the houses in the community?

Although each of the problems are different you should see a pattern in the problem types. The pattern types have a similar solution and once you create an algorithm for each you may see some similarities, however recognizing the pattern type of the question helps to create the solution. Each participant at this workshop may have used Google Maps to arrive here today... the algorithm generated to provide you the detailed instructions is based on pattern recognition.

Data Visualization

Using a public data set we will examine patterns in data and visualize or describe the patterns. Using a Google public data site we ask participants to interpret visualization from the data.

Some good questiosn to ask:

  • What does the data tell us?
  • Will the data patterns provide a part of the solution to the problem?
  • What is the best way to present the information?
  • What new questions do I consider?

Whats my Line

In learning, we often look for patterns that would aid in knowledge transfer and solving problems in a variety of subjects including languages, music and chemistry. The pattern recognition in each area provides a scaffold for the total solution.

Let's examine the patterns in common subjects such as English and Chemistry.

Period Table (Chemistry)

As students go through the learning process, they are exposed to many type of patterns and the early recognition of patterns is key to understanding many other more complex problems. Consider early arithmetic patterns for addition and multiplication using time tables. We certainly look at problem solving methods, often as patterns, and once recognized we apply the certain formulae or practices that lead to a solution.

Let's take a brief look at the periodic table and how we frequently we see many other topics represented (abstraction) today in periodic table fashion. A couple of examples are iPad apps for junior school, and Blooms Taxonomy.

Text Compression (English Language)

Computers store and enormous amount of data and in so doing they utilize algorithms that simply use pointers or markers instead of repeated lines of text or data. This helps the system storage by decreasing file size and also utilizes routines that are more efficient in processing. We see this in compression of text files, photos and videos, and often the computers will compress when doing backups. The latest iteration of Google Drive call Drive File Streaming is a prime example of how this can be applied to our entire datastore. In this activity we will engage participants in a text compression exercise.

Drawing Cats

Draw a series of animals. What are the patterns we can recognize?

All cats have similar characteristics. All cats have a tail, eyes and fur, and also eat fish and meow. These general characteristics are called patterns when looking through the lens of computational thinking. Now from this general knowledge of patterns in cats, we could draw the general outline of a cat.

You Tube Videos - Pattern Recognition

More examples of Pattern Recognition

What is the pattern in the data?

What patterns are visible here? Can you think of other patterns within this map?