Sunday, January 26, 2014

Road Building Task

The Pythagorean Theorem is often taught in isolation. It has connections to solving equations, but often appears in curriculum long before other equations involving radicals. It also has unique ties to both radicals as well as geometry.

Despite these connections, the theorem has developed the reputation of a surface skill. It involves the  repetition of the rule alongside numerous iterations. Something so fundamental to geometry is reduced to a droning chorus of:

" 'a' squared plus 'b' squared equals 'c' squared "

This task aims to find a middle ground between where critical problem solving and collaboration can meet the technical precision of the outcome. 

The task is originally from James Tanton's Solve This! book. In a recent Twitter conversation, a couple people were looking for good Pythagorean Theorem tasks. It was through this conversation that I began to look for extensions / alterations. 

The task:

You are building roads between four towns. The only requirement is that there is a route between every pair of towns. It doesn't have to be a direct route. What is the shortest distance of roads that needs to be built?
I originally set the towns on the vertices of a 10m by 10m square. This seems like a good place to start building familiarity with the problem. I also included a handout that provided some suggestions to test as well as spark imaginations. These starters give the task a low floor and the extensions provide a high ceiling. 

I give this task to randomly selected groups with large whiteboards. This fits into the structure of my class, but it could be given in any matter that you are comfortable. I encourage parings or groupings so students can build communal lines of thought and action. 

Student work (with original task):

As evidenced, the original task provided opportunity for iterations, but didn't provide much opportunity for branching out. Students needed to be coaxed past the original suggestions. To increase the robustness of the task, allow me to offer some suggestions: 

Begin by having students work on a grid. Whether this is with an overhead transparency or a large whiteboard, the grid will ensure they work with integers if they place towns on grid intersections. Try extending the task in the following directions:

  • Move the towns off of the vertices of the square. Recommend that the students still stick to integer coordinates--at least to begin. This variation will allow students to see the right-angle triangles that exist on the grid regardless of position. They may also get a sense for lengths of diagonals, and whether or not they are congruent. 
  • Add more towns. A simple alternative that might open up the discussion of what it means to be co-linear. Various regular polygons can be explored for patterns. 
  • Mandate direct routes. Instead of having indirect routes, make direct routes between town mandatory. This may open up conversations around number of required roads, the patterns created by regular polygons, and even--although it's a stretch--the number of distinct sections created by the roads. (an extension into inductive reasoning and counter-examples).
  • Create and place a central depot. This could possibly be my favourite extension. Have students place a point that will serve as a central depot where each town must connect to directly. Where is the best place to put it? This could possibly lead into some type of regression analysis.
The task requires students make intelligent decisions with the theorem in mind. They will begin to run iterations of the theorem as they attempt to place towns. This not only builds fluency, but blankets it in critical thinking. It is in this sense that the task meets the middle ground between fluency and critical problem solving. 


** If there are further variations or extensions from readers, please do not hesitate to comment. 

On a side note, analyzing the distances between collinear towns provides a nice visual for simplifying radicals. Use this visual to show how 2*root(2) = root(2) + root(2) = root(8)