Subtitles section Play video Print subtitles Abstraction and Pattern Generalization Abstraction in Computational Thinking allows for the creation of a more generalized model of the complex problem being solved. Abstraction “lets one object stand for many” and allows us to deal with complexity and scale. Using what you learned by recognizing patterns, relevant variables can be identified, grouped and generalized (described with less detail) so that they define the main ideas of a problem. The key to abstraction is to be able to identify and filter out or ignore the details not necessary to solve the problem. From there, a model (equation, image, word, simulation, etc.) can be developed to represent all the important variables. A variable is a name that can be associated with a value. Variables have changing values and can be represented by a number, letter, word, blank or image. Often, the value of one variable will determine, or be dependent upon, another. In these examples, you can see how the value of the second variable, or input, is dependent on the value of the first variable or input. Abstraction allows you to create a generic representation of a problem. Pattern generalization “is creating models, rules, principles, or theories of observed patterns to test predicted outcomes” In other words, Pattern generalization is figuring out the right relationship between the abstracted variables to accurately represent the problem. Recognizing patterns as we did in the last video is critical, as patterns are almost always where generalizations begin. What an abstraction looks like depends on the type of problem being solved. Here are some abstractions across different areas and problem types: Science Examples of abstractions in science include simplified models of the water cycle, nitrogen cycle, rock cycle, etc. Classification of living things can also be considered abstraction--we use words like mammal to generalize groups of animals, or marine organisms to generalize life in the ocean. In Chemistry the periodic table is an abstract diagram representing lots of information about much of human knowledge relating to earth’s materials. Math Most of mathematics involves abstraction. Even something as simple as a triangle is an abstraction of points, lines and angles. Art In his painting Three Musicians Pablo Picasso’s abstract shapes and colors come together to form a picture that we recognize as three individuals playing instruments. English When we learn a language, we learn about how different parts of speech come together to form a sentence. Here is an abstraction of a basic sentence structure in English. Subject (person or thing) + action/occurrence/state of being + object (person or thing) OR Noun + verb + noun For example: Susie ate pie. The dog ran home. Mad Libs are another example of abstraction. Instead of specific nouns, verbs and adjectives, a blank is given where any noun, verb or adjective can be placed. The result is grammatically correct sentences with some pretty silly meanings! Universal symbols Every day we encounter familiar symbols that are so commonplace in our lives we rarely notice them. However, these abstractions truly do “let one object stand for many”. See if you know what message each of these symbols represents. Let’s start by using abstraction with a familiar problem. We previously decomposed the problem into three smaller subproblems to be added together and identified the patterns between how those subproblems can be solved. The subproblems are: Cost of red beads x number of red beads Cost of blue beads x number of blue beads Cost of thread x length of thread We can now use abstraction to simplify the problem even further into one repeatable operation: Material cost x material quantity The variables are 1. The cost for each type of material 2. The quantity of each material Through abstraction we have created one operation that can be used to determine the cost of each of the three materials. In the final video we will return to this problem and discuss an algorithm for solving the entire problem. Abstraction helps us to create models related to a problem that can work for large quantities and ranges of data. Suppose you wanted to calculate how much it would cost to make a 10 foot garland out of red beads and thread, or calculate the cost to create 250 necklaces, or calculate how many 24 inch necklaces using an alternating pattern of 3 red beads and 3 blue beads could be made for a certain budget? The abstract operations you have designed can help you do that. Your abstract operations can make it easy to model or calculate different options. Other examples of abstraction being used to create models that allow testing of different variables and situations include: Learning about gravity and acceleration using a physical model (a ramp and ball) at a very young age, in a lab as a middle school or high school student using graphing to model changing variables, or as an engineer. Let’s continue with another example from the last video, the Make a Monster example. In the last section we listed patterns or similarities that the different monsters had in common. Here is what we found: What do all the monsters have in common? • The all have a head • They all have eyes • They all have a nose • They all have a mouth • Two have ears We know from looking at the pictures that there are several options for different head shapes, eyes, noses, mouths and ears (including no ears). Using abstraction, we now want to modify these statements so they could describe the qualities of any monster. For example, This monster has a blank head. This monster has blank eyes. This monster has a blank nose. This monster has blank ears. This monster has a blank mouth. In this case, the variables are as follows: Heads: Zombus, Franken and Happy And eyes, ears, noses and mouth: Vegitas, Wackus and Spritem If a monster doesn’t have one of these features, we can call that InHideum. In the last video we will learn how to take this abstraction and use it to give instructions to another person to recreate any monster! Here are some other examples that you can use in your classroom to practice abstraction: A Dichotomous Key provides a process for identifying something based on its features. This can be an animal, plant or candy--the process is the same! Like in Make a Monster, in this activity the student is responsible for abstracting the characteristics of several different types or varieties of something--in this case candy. By organizing those abstractions into a dichotomous key, they create a tool that can be used by others for identification purposes. As mentioned earlier, Mad Libs are created through abstraction of a sentence. Mad Libs can be done on paper, such as in the activity Mad Glibs from studio.code.org, or they can be generated online. In this activity students first go from specific to general, by carefully describing an everyday object using general terms so that someone who didn’t know what it was could understand. Students then trade descriptions and try to figure out what each other was describing. Working with tangrams involves abstracting geometric patterns--using shapes to create other recognizable shapes. This becomes a game at GeoShapes on National Geographic Kids. Challenge your students—who can solve the tangrams problems the fastest? When you have finished watching this video, don’t forget to complete the quick self-evaluation to check your understanding.
B1 abstraction monster blank problem cost variable Computational Thinking: Abstraction and Pattern Generalization 63 6 Chris Lyu posted on 2016/06/04 More Share Save Report Video vocabulary