## 字幕列表 影片播放

• Decomposition

• The late Stanford University Professor Georgelya once said, "If you can't solve a problem,

• then there is an easier problem you can solve: find it." This advice can be applied to any

• problem by identifying easier to solve smaller problems within larger ones--decomposition.

• For example, consider this ridiculous problem--how would you go about eating an elephant? The

• answer? One mouthful at a time! This goofy analogy actually provides great insight into

• the first step of problem solving through Computational Thinking. Big, complex problems

• are comprised of smaller, and more easily solved subproblems or tasks. The process/strategy

• of logically identifying these smaller problems and determining how to use the combined solutions

• to solve the bigger problem is called decomposition.

• The process of focusing on how a problem breaks into parts is called analysis. In contrast,

• rebuilding or focus on how the parts come back together is called synthesis.

• When a problem is broken down into smaller parts, these parts may be addressed simultaneously,

• or in parallel. Organizing and multitasking to work on several smaller problems is called

• parallelization. Parallelization is something you practice when you are cooking multiple

• dishes at the same time Depending on the problem, these smaller parts

• may need to be addressed in a certain order, or sequentially.

• Let’s start out with a visual example of decomposition. Here is a necklace made of

• total cost to construct this 24-inch necklace. Think for a minute. How do you set up this

• problem? What information do you need?

• Without even thinking much you have likely already decomposed the problem into subproblems.

• Since the materials all have different costs and are used in different amounts, an analysis

• of this problem leads us to the conclusion that calculating the cost for each type of

• material and then adding those answers together is the logical way to approach the problem.

• Solving each of those subproblems is an example of parallelization.

• We will return to this necklace example throughout the course to learn about each step in the

• Computational Thinking process.

• The process of decomposition in the previous example is reminiscent of solving word problems

• from math classes in our past. It involves thinking about how to solve the problem, translating

• from the language of words into the language of math and numbers, breaking it down logically

• and eventually solving it.

• Math problems often utilize decomposition. Here is an example of a 6th grade Common Core

• Math standard that incorporates decomposition.

• The following examples show how decomposition might work for other kinds of practical, everyday

• problems that aren’t represented by numbers. For example:

• How does a bicycle work? By breaking down the bicycle into components and their functions

• (such as gears, chain, pedals and brakes) and learning about how each works independently

• first, and then together, one can understand how the more complex machine operates.

• The same is true for a car, plane or boat. • How does the human body work? A very complicated

• question, but when we learn about the human body we focus on one system at a time - respiratory,

• circulatory, digestive, skeletal and muscular - and then think about how they interact with

• each other. • What happened at a crime scene? Police

• and detectives are careful to observe an entire crime scene, but they have procedures for

• in-depth examination of all the details (blood spatter, position of bodies, fingerprints,

• fibers and other clues) to piece together the most likely scenario for what occurred.

• Composing a song--musicians think in terms of parts as they are writing music. There

• are different roles for different instruments. Some play the bass beat, while others provide

• the melody or harmony. All the parts work together to create a whole.

• Creating an app. The idea of building an app may be a daunting challenge if you

• aren’t a computer programmer. However, anyone can work through the process of decomposition

• for creating an app by thinking about what your app will do, what it will look like,

• how you want the user to move through the screens and how much it will cost.

• Writing for an English classthe process of writing a paper involves outlining, or

• breaking the idea for your paper into logical parts. When asked to analyze a poem you focus

• on the poem as a whole, but also meter, rhyme, imagery, structure, tone, diction and meaning

• individually.

• As you can see, decomposition is a critical skill for solving complicated problems. Decomposition

• is a relatively simple concept, but each problem will have different variables and decomposition

• will need to be approached in different ways. It is critical to understand that to effectively

• use Computational Thinking students must be able to logically break down a problem on

• their own. It’s not enough to show some examples and assume your students understand,

• students must practice breaking down increasingly complex problems to learn how to apply this

• skill on their own and incorporate it into their process of thinking. Students need to

• be responsible for their own learning, individually or in small groups, rather than just shown

• examples of decomposition.

• In introducing students to the idea of decomposing a problem, start with something very simple,

• for example, how to clean your teeth. The goal is not to list the steps in brushing

• teeth, but the components involved in solving the problem, for example:

• What tools and materials will you use to clean your teeth?

• What methods and actions will you use to clean your teeth, and for how long?

• Links to several excellent existing activities that can be done in the classroom to reinforce

• decomposition, analysis, synthesis and parallelization skills are provided along with this video.

• A few are introduced here. These activities are meant to be challenging. When you finish

• watching the video, please take the time to explore these links and choose some to try

• out with your students, either individually or in small groups. Because every problem

• is different, the more exposure to different ways of thinking about decomposition the better

• students will become at putting the skill into practice. Also, remember that in many

• cases there is no one right answer about how to decompose a problem. Be open and discuss

• studentstrain of thought.

• Bee-Bot is a simple game for very young children to start to understand programming. Although

• geared toward children younger than Middle and High School, Bee-Bot can be used as a

• visual example to explain and practice decomposition. The goal in the Bee-Bot game is to move the

• bee from its starting point to the flower by inputting instructions using the arrow

• keys. The Bee-Bot only performs one instruction at a time, but can remember and perform a

• series of many. As the student adds steps, they are listed across the top of the screen--a

• decomposition of their larger set of instructions. When they clickgothe steps are highlighted

• as they are performed, allowing students to see where they may have made a mistake. At

• this point in the course this allow students to play with this game through trial and error.

• Point out how it keeps track of steps and how this is an example of decomposition of

• the problem. Students will likely find the first few levels easy and learn how the program

• works and then, since the complexity of the route increases by level, they will be challenged

• and likely find the decomposed steps to be very useful. We will return to Bee-Bot again

• later in the training.

• The activity Colour by Number: Image Representation provides opportunity for both synthesis and

• analysis in decomposition. Students follow basic instructions to fill in squares on graph

• paper that collectively form a recognizable image, an example of synthesis. Then, students

• analyze a recognizable image into squares and create instructions for their classmates.

• The process here is similar how pixels on a computer work.

• Google: Divide and ConquerSearching for the Token

• Dividing and conquering is a different method of decomposition that can make a complex problem

• much simpler. Strategic yes/no questions allow for up to half of the complexity of the problem

• to be removed through process of elimination. In Searching for the Token students hide a

• token of some sort in one of their pockets or desks. The instructor then asks yes/no

• questions to determine who has the token. Instead of questions such asdoes Alice

• have the token?” oris the person with the token wearing a blue shirt?” a much

• more efficient decomposition method is to divide the room in half and ask if the token

• is on the right side. In one question you will determine in which half of the room the

• token is hiding. Your second question can divide the appropriate side of the room in

• half again, and so on, until you find the token--it won’t take long! Students should

• take turns practicing finding the token to get a good handle on the concept of divide

• and conquer.

• Another method to encourage efficient, strategic thinking in decomposition is to have students

• buy” a question using candy--the goal is to keep (and eat) as much candy as possible.

• This is demonstrated in the activity Searching Algorithms and could be used during Searching

• for the Token.

• To reinforce the concept of divide and conquer decomposition students can explore the silly

• Santa’s Dirty SockseBook where savvy elves use divide and conquer to efficiently

• locate Santa’s dirty socks amid a sea of packages on Christmas Eve.

• When you have finished watching this video, don’t forget to complete the quick self-evaluation

Decomposition

B1 中級

# 計算思維。分解 (Computational Thinking: Decomposition)

• 43 6
Chris Lyu 發佈於 2021 年 01 月 14 日