to download/print the teacher notes for this module

Origami Algorithms
Carol S. Yarbrough, Alabama School of Fine Arts, CS4Alabama
Lesson Overview – CS Principles, Algorithms
Enduring Understandings and Learning Objectives
Enduring Understanding 4.2: Algorithms are expressed using languages.
Learning Objective 4.2.1: Express an algorithm in a language. [P5]
Essential Knowledge:
4.2.1.a Languages for algorithms include natural language, pseudocode, and visual and textual
programming languages.
 Natural language and pseudocode describe algorithms so that humans can understand
them.
 Algorithms described in programming languages can be executed on a computer.
4.2.1.b Different languages are better suited for expressing different algorithms.
 Natural language may be better than programming languages for expressing algorithms at
a high level.
 Some programming languages are designed for specific domains and are better for
expressing algorithms in those domains (e.g., Structured Query Language (SQL) for
making database queries).
4.2.1.c The language used to express an algorithm can affect characteristics such as clarity or
readability but not whether an algorithmic solution exists.
 Every algorithm can be constructed using only sequencing, selection, and iteration.
 Nearly all programming languages are equivalent in terms of being able to express any
algorithm.
 Clarity and readability are dependent on the experience of the person reading an
algorithm expressed in a language.
Prerequisite knowledge
No prior knowledge needed. This is an introduction to algorithms.
Essential/Guiding Question(s)

How do you select appropriate combinations of algorithms to make new algorithms?

How do you create an algorithm to solve a problem?

How can an algorithm be expressed using natural language, pseudo-code, or a visual or textual
programming language?
Lesson Summary
In this lesson students are introduced to the concept of an algorithm through the art of origami. Origami
is something that many students are already familiar with and this gives them an opportunity to see that
they are already using algorithms in many parts of their life, without calling them algorithms. After a
brief discussion of origami, half of the class will create an origami frog and half will create an origami
dog using wordless diagrams as directions. Then, students will write directions in English, no pictures,
on how to create the origami animal they just made. Students will swap directions and try to create the
other animal based on the written instructions. The results are usually very humorous. Once students
have created the second origami animal, discuss the need for exactness in instructions and the need for a
common language. Next, work with the students to develop a common Origami language. Once the
common language is agreed upon, students work in groups of 3 or 4 to write the instructions to create an
origami butterfly and create one per group. After the groups share their algorithms and creations, discuss
the importance of clear instructions, sequencing. Discuss the fact that different algorithms can be used to
achieve the same end product. Is one better than the other? How measure “goodness” of algorithms –
time/space efficiency? Also discuss how some origami creatures can be made of parts from other
creatures – example Pikachu uses Rabbit which in turn uses Waterbomb. Algorithms can be made up of
other algorithms when common patterns are seen. The entire lesson is guided with the
OrigamiAlgorithms.pptx presentation attached.
Outline of lesson: Two standard class periods or one block period
1. Introduction: Anyone know how to make an origami frog? ''Please explain to the class''.
(5 minutes)
2. Create from pictures: Distribute copies of one of the slides (either 7 or 8) to students to
use as a guide. Students should be seated so that neighbors are creating different animals.
Frog-dog-frog-dog, etc. Instruct students to make a frog or a dog on their own without
any assistance. They should keep what animal they are creating secret from their
neighbor. (10 minutes)
3. Discussion: ''What is missing?'', ''Is it detailed enough?'' Probably fine for some
students and not detailed enough for others. (5 minutes)
4. Write detailed instructions: ''Computers need exact detailed instructions''. Write detailed
instructions in words (no pictures) for someone to create the same origami animal you
just created from the pictures. Students can work alone or in groups to complete this
task. (15 minutes)
5. Create from neighbor's instructions: Swap instructions with a neighbor and create the
other animal that you have not yet created using their instructions. Briefly display the
pictorial algorithms from ppt and see if students were able to make recognizable animals.
(10 minutes)
END OF STANDARD CLASS 1- MIDDLE OF BLOCK
6. Discuss need for common language: Once students have tried their best to make the frog
or dog, discuss the process – the frustration, the need for exactness, need for a common
language. (10 minutes)
7. Develop common language: Develop a common language for paper folding as a class.
''If you have a paper folding robot, you must program it using instructions it understands
to fold your paper''. (20 minutes)
8. Write algorithm using common language: In groups of 3 or 4 students, write an
algorithm for a butterfly using the instructions in the common language. Display pictoral
instructions from the powerpoint to assist students. (10 minutes)
9. Conclusion/ Discussion: Different algorithms developed, all create a butterfly. ''What
happens if change the order?'' Order matters. Could our language be more clear? Less
clear? Show examples of origami creatures made with parts of other algorithms (e.g.
Pikachu uses Rabbit uses Waterbomb). Algorithms can be combined to make new
algorithms. (5 minutes)
END OF STANDARD CLASS 2 - END OF BLOCK
Lesson Details
Student Activities
What students are doing for each part of the above lesson, and any materials needed:
1. Introduction: Group discussion. (5 minutes)
2. Create from pictures: Half the students should get a print out of slide 7 and half should
get a printout of slide 8 from origamiAlgorithms.pptx. Each student needs four pieces of
origami paper. (10 minutes)
3. Discussion: Group discussion. (5 minutes)
4. Write detailed instructions: Each student needs paper and pencil. (15 minutes)
5. Create from neighbor's instructions: Students trade instructions with their neighbor and
create the origami animal from instructions given using origami paper distributed in step
2. (10 minutes)
END OF STANDARD CLASS 1- MIDDLE OF BLOCK
6. Discuss need for common language: Group discussion. (10 minutes)
7. Develop common language: Group discussion. Assign a student to be the class scribe
and have her/him write the commands as students develop them (Powerpoint is set up to
be done on Smartboard, but can easily be done on a whiteboard). (20 minutes)
8. Write algorithm using common language: Work in groups of 3 or 4 students. Need
pencil and paper. (10 minutes)
9. Conclusion/ Discussion: Group discussion. (5 minutes)
END OF STANDARD CLASS 2 - END OF BLOCK
Teaching and Learning Strategies
Before the lesson the teacher should create all three of the origami animals – frog, dog and
butterfly – so he/she can help students when they get frustrated.
The entire lesson is detailed above in “Outline of Lesson” section. Use the accompanying
OrigamiAlgorithms.pptx to guide the lesson. Guiding questions for the discussions are
included in the presentation.
What the teacher is doing during each part of the lesson:
1. Introduction: Group discussion. (5 minutes)
2. Create from pictures: Distribute origami paper (4 per student) and copies of slides 7 or 8
to every other student. Circulate around the room and help students when they get too
frustrated. (10 minutes)
3. Discussion: Group discussion. (5 minutes)
4. Write detailed instructions: Circulate around the room and observe. Try not to assist.
(15 minutes)
5. Create from neighbor's instructions: Circulate around the room an observe. Try not to
assist. (10 minutes)
END OF STANDARD CLASS 1- MIDDLE OF BLOCK
6. Discuss need for common language: Group discussion. (10 minutes)
7. Develop common language: Group discussion. Allow a student to be scribe, but make
sure to guide the discussion. Possible commands are included in the notes section of
slide 12. (20 minutes)
8. Write algorithm using common language: Circulate and observe. (10 minutes)
9. Conclusion/ Discussion: Group discussion. (5 minutes)
END OF STANDARD CLASS 2 - END OF BLOCK
Differentiated Instruction
If a student is struggling with making the origami pieces, I will sit them with a student who has
experience with origami and allow them to work together. Likewise, if a student has a physical
disability that will not allow them to fold the paper, I will have that student work with another
student who is able to perform the folding tasks. Students unable to create the pieces from the
pictorial instructions can be given the written instructions, if necessary.
Assessment
Normally I teach this lesson as an introduction to algorithms and do not have an immediate
formal assessment associated with it.
Informally, I circulate around the room and see what the students are doing and ask them
questions to gauge their level of understanding. An “exit slip” could be given to students at the
end of the lesson asking “What is an algorithm? Why is it important for algorithms to be
detailed and complete?”. Alternatively, give students the following diagram and have them
write an algorithm to tie a single windsor knot.
Appendices
Materials and Resources
All handouts and resources needed are included in the OrigamiAlgorithms.pptx presentation as outlined
above.
Supplemental Resources







Origami paper – 4 sheets per student
Computer and Projector
Smartboard (or whiteboard)
Pencil and paper
OrigamiInstructions.docx contains written instructions needed to create the frog, dog and
butterfly (for teacher use)
http://www.origami-instructions.com/ or http://www.origami-fun.com/ - websites containing
instructions for making many origami pieces with video tutorials
http://www.origamiwithrachelkatz.com/origami/origami.asp - brief history of origami