Sie sind auf Seite 1von 18

Using The Geometer’s Sketchpad to Explore Fractals Images

and Iterated Function Systems

ME2 by the Sea


June 9, 2006

Richard Rupp
Del Mar College
INTRODUCTION
According to the Key Curriculum Press website, the publisher of The Geometer’s Sketchpad,
“Sketchpad is a dynamic construction and exploration tool that enables students to explore and
understand mathematics in ways that are simply not possible with traditional tools—or with other
mathematics software programs. With a scope that spans the mathematics curriculum from middle
school to college, The Geometer’s Sketchpad® brings a powerful dimension to the study of
mathematics.” Understanding this, we will see that Sketchpad can be an incredibly useful tool for the
study of fractal images.

In simplest terms, fractal images are geometric figures that exhibit self-similar patterns in
continually decreasing sizes. One of the most common ways of creating fractal images is to use a
recursive definition, i.e. an iterated process. When using recursion, we must define a specific starting
image and a process by which we will transform the first image into a second image. The starting image
is called the initiator or seed and the second image is called the generator or first iteration. Infinite
repetition of the recursive process ultimately creates an infinitely complex image…our fractal. Fractal
images defined in this way are also referred to as Iterated Function systems. While finite iterations of
the process will not create an exact image of the fractal, they can give us a reasonable approximation
and The Geometer’s Sketchpad excels in this application.

To draw fractals with Sketchpad, one merely needs to be able to construct a generator from an initiator
and successfully apply the iterate function.

We will use this process to create an approximation of a very simple fractal, Lévy’s curve, and a more
complex fractal, the Koch curve, and its beautiful, pseudo-fractal counterpart, the Koch Snowflake.

Time permitting; we will discuss fractal or similarity dimension and applications of fractals in real world
settings.

-2-
CREATING LÉVY’S CURVE WITH SKETCHPAD

Initiator Generator Approximation of fractal

1.) Start with a blank sketch and construct a line segment using the straightedge tool. This is the
initiator of Lévy’s curve.
2.) Using the text tool, click on endpoints of our segment to label the points as “A” and “B”
A B

3.) Using the selection arrow tool, select the line segment. When selected, it will highlight.
Now from the construct menu, select midpoint to construct a midpoint on the segment
A B

4.) First select both the midpoint and AB , then, from the construct menu, select perpendicular to
create a line perpendicular to the segment passing through the line.

A B

5.) Using the selection arrow tool, deselect all objects. Now double click on point A to set it as a
point of rotation. You should see a bulls-eye animate briefly around point A. Now select
AB and from the transform menu choose rotate. Make sure the fixed angle radio button is
selected (it should be by default) and enter 45 into the degrees entry space. You should see a
lighter image of the rotated segment in the sketch. If everything looks correct, press the
rotate button and obtain the following image.

A B

-3-
6.) Now, select the rotated segment and perpendicular line. Using the construct menu, choose
intersection to create the point of intersection.

A B

7.) We now want to hide the portions of the construction that aren’t needed. So, using the
selection arrow tool, deselect all objects by clicking in blank space and then select the rotated
segment, the original segment, the perpendicular line, and the midpoint. Now, in the display
menu, choose hide objects. Your image should look like this.

A B

8.) Using the text tool, click on top point to label it as “C”. Then, using the arrow selection tool,
select points A and C and from the construct menu choose segment.
C

A B

9.) Now select points C and B and from the construct menu choose segment.
C

A B

We have now constructed the generator of Lévy’s curve. To approximate the fractal we now
need to iterate the generator construction process.
-4-
10.) Using the arrow selection tool, deselect all objects and then select points A and B. In the
transform menu, select iterate. A new menu appears. We have to tell Sketchpad where we
want the iterated process mapped or placed. We want point A to be mapped to point A and
point B to be mapped to point C. This will iterate the process on AC . So with the A ⇒ box
highlighted, click on point A in the sketch. Now the B ⇒ and point B should highlight. We
want to map point B to point C, so now click on point C in the sketch. Note: you may have to
move the iterate menu box to have access to point C in your sketch. When you have done
this you should see a lighter image that looks like the following
C

A B

11.) We still need to map the iterated process onto CB . In the iterate menu box, click on
structure and then select add new map. This time map A to C and B to B. So first click on
point C and then on point B in the sketch. Now press the iterate button to obtain the
following picture.

A B

12.) Pressing the “+” or “-” keys will increase or decrease the number of iterations displayed.
Also by right clicking on the fractal and selecting properties and then the iteration tab, one
can select whether all iterations of the fractal are displayed “full orbit” or just the “final
iteration only”.

-5-
CREATING THE KOCH CURVE AND SNOWFLAKE WITH SKETCHPAD

Initiator Generator Approximation of fractal

1.) Start with a blank sketch and construct a line segment using the straightedge tool. This is the
initiator of Koch’s curve.
2.) Using the text tool, click on endpoints of our segment to label the points as “A” and “B”
A B

We need to trisect segment AB. To do this, we will utilize the proposition that parallel lines
intersecting a triangle will partition the sides into proportional lengths. Thusly, we will
construct a triangle such that one side is our original segment and a new side consists of three
collinear congruent segments. The third side of the triangle will be the segment connecting
the remaining endpoints.
3.) Using the straightedge tool, construct a new segment starting at A and creating an acute angle
with vertex A. The acute angle is not necessary, but does help to keep the construction more
compact. Use the text tool to label the new endpoint of the segment as “C”.
C

A B

4.) We now will mark a vector for a segment translation. Using the selection arrow tool,
deselect all objects, and then in order select points A and then C. Now from the
transformation menu, choose mark vector. You should see dots race briefly from point A to
point C.
5.) Now select the AC segment and point C. From the transform menu, choose translate. When
the translate menu box appears, make sure the marked radio button is selected (it should be
by default) and then press the translate button.

A B

6.) Without changing the current selections, from the transform menu, choose translate and press
the translate button. Your image should now look as follows.

A B

-6-
7.) Use the text tool to label the new points, in order, as C′ and C′′ . Then, using the selection
arrow tool, deselect all objects, and then select C′′ and B. From the construct menu, choose
segment.
C''

C'

A B

8.) Now select point C′ , note: C′′B is already selected, and, from the construct menu, choose
parallel line.
C''

C'

A B

9.) Now select point C, note: the previously constructed parallel line is still selected, and, from
the construct menu, choose parallel line.
C''

C'

A B

10.) We now want to select AB , note: the previously constructed parallel line is still selected, and
from the construct menu choose intersection. Using the text tool label this new point D.
C''

C'

A D B

-7-
11.) Using the selection arrow tool, deselect all objects, and then select AB and the parallel line
passing through C′ . From the construct menu choose intersection and then, using the text
tool, label this new point E.
C''

C'

A D E B

12.) Using the selection arrow tool, deselect all objects, and then select all objects other than the
points A, D, E, B, and from the display menu choose hide objects.
A D E B

13.) Congratulations! You have successfully trisected AB . If you want to verify this, select
points A and D and from the measure menu choose distance. Repeat this for points D, E and
E, B. Note: all three distances are equal, but may not necessarily be same as those shown
here.
AD = 2.13 cm
DE = 2.13 cm
EB = 2.13 cm

A D E B

14.) If you choose to measure the above distances, select them and press the delete key as we
don’t really need them and they will just clutter up the image. If you didn’t measure the
distances, just go on to the next step.
15.) Using the selection arrow tool, deselect all objects, and then select points A and D. From the
construct menu, choose segment.
A D E B

16.) Using the selection arrow tool, deselect all objects, and then select points E and B. From the
construct menu, choose segment.
A D E B

17.) Now double click on point D to make it as a center of rotation for a transformation. You
should see a bulls-eye animate briefly around point D. Using the selection arrow tool,
deselect all objects, and then select point A and AD . From the transform menu choose
rotate. Make sure the fixed angle radio button is selected (it should be by default) and enter
-120 into the degrees entry space. You should see a lighter image of the rotated segment in
the sketch. If everything looks correct, press the rotate button and obtain the following
image.

A D E B

-8-
18.) Using the text tool, label the new point as A′ . Now, using the selection arrow tool, deselect
all objects, and then select points A′ and E. From the construct menu, choose segment.
A'

A D E B

We have now constructed the generator of Koch Curve (Snowflake).


To approximate the fractal we now need to iterate the generator construction process.

13.) Using the arrow selection tool, deselect all objects and then select points A and B. In the
transform menu, select iterate. A new menu appears. We have to tell Sketchpad where we
want the iterated process mapped or placed. We want point A to be mapped to point A and
point B to be mapped to point D. This will iterate the process on AD . So with the A ⇒ box
highlighted, click on point A in the sketch. Now the B ⇒ and point B should highlight. We
want to map point B to point D, so now click on point D in the sketch. Note: you may have
to move the iterate menu box to have access to point D in your sketch. When you have done
this you should see a lighter image that looks like the following
A'

A D E B

14.) We still need to map the iterated process onto DA′ , A′ E , and EB . In the iterate menu box,
click on structure and then select add new map. This time map A to D and B to A′ . So first
click on point D and then on point A′ in the sketch.
15.) Now click on structure and then select add new map a second time. This time map A to A′
and B to E. So first click on point A′ and then on point E in the sketch.
16.) Finally, click on structure and then select add new map a third time. This time map A to E
and B to B. So first click on point E and then on point B in the sketch.
17.) Press the display button in the iterate menu box and choose final orbit only. Now press the
iterate button to obtain the following picture.
A'

A D E B

19.) Using the selection arrow tool, deselect all objects, and then select AD , DA′ , A′ E , and EB .
From the display menu, choose hide segments. Your picture will now appear as follows.
A'

A D E B

This is an approximation of the Koch curve.


-9-
20.) Using the selection arrow tool, select the Koch curve and press the “+” keys to increase the
number of iterations displayed. It should work twice. You now have this image.
A'

A D E B

There are many ways to finish the snowflake. This is an easy one.

21.) To finish the snowflake, from the edit menu choose select all, then copy, and then paste
twice. The image will be a mess and look like this.
Note: if you repeat and undo the copy and paste process, Sketchpad will rename the points
differently. Use the point labels given here as references only and do not worry if the points
in your copied images are labeled differently.
A'

N' 2
S' 2

A D E B
N2 P2 O2 M2
S2 U2 T2 R2

22.) Now move one copy near the end of the original so that points B and N2 are very close to
each other as in the following diagram. Move the second copy near the other end of the
original so that points R2 and A are very close to each other as in the following diagram.
When moving the copies, select the Koch curve, rather than the labeled points, and the curve
will move as a unit and not deform.
A'
S' 2 N' 2

S2 U2 T2 R2 A D E B N2 P2 O2 M2

23.) Now, using the arrow selection tool, deselect all objects and then select points B and N2.
From the edit menu select merge. One of the points, in my case B, will move and become
one with the other point. Repeat this process to merge points R2 and A.
A'

S' 2 N' 2

S2 U2 T2 A D E N2 P2 O2 M2

- 10 -
24.) Using the arrow selection tool, deselect all objects and then select point S2. Drag this point
to a location directly underneath A′ so that the distance from S2 to A is preserved. Don’t
worry if the distance isn’t exact, we can fix it later. Now, deselect all objects and then select
point M2 and move it next to S2. It should look as follows.

A'

A D E N2

T2 P2

S' 2 N' 2
U2 O2

S2M2

25.) Using the arrow selection tool, deselect all objects and then select points S2 and M2. From
the edit menu select merge.

A'

A N2
D E

T2 P2

M'2 U2 O2 N' 2

M2

- 11 -
26.) Using the point selection tool, deselect all objects, then select points A and N2. From the
measure menu select distance. Repeat this process to also measure the distances from A to
M2 and from N2 to M2. Now slightly adjust the locations of point M2 to try to equalize all
three distances. Don’t worry, you probably won’t be able to make them perfectly equal.
A'
AN2 = 6.67 cm

AM 2 = 6.68 cm

N2M 2 = 6.68 cm

A N2
D E

T2 P2

M'2 U2 O2 N' 2

M2

27.) Now to clean up the picture, select only the three measurements and from the display menu
choose hide distance measurements.

28.) Here is a neat trick to get rid of the points. Click on the point tool. Now from the edit menu
choose select all points. Only the points will be selected. (Using the tools and select all also
works with straight objects and circles!) Finally, from the display menu choose hide points.
Viola! The Koch Snowflake! Note: The Koch Snowflake lacks true self similarity and, thus,
is not a true fractal.

- 12 -
PICTORIAL CATALOG OF FRACTAL INITIATORS AND GENERATORS

Lévy’s curve

Initiator Generator Approximation of fractal

Koch curve

Initiator Generator Approximation of fractal

Quadric Koch curve

Initiator Generator Approximation of fractal

Minkowski’s fractal

Initiator Generator Approximation of fractal

- 13 -
Box curve

Initiator Generator Approximation of fractal

Cantor set

Initiator Generator Approximation of fractal

Sierpinki gasket

Initiator Generator Approximation of fractal

Sierpinski carpet

Initiator Generator Approximation of fractal

- 14 -
Calculation of Fractal or Similarity Dimension
Fractal or similarity dimension is a calculation of how densely a fractal image fills a 2-dimensional
plane. The calculation is quite simple.
log N
D=
⎛1⎞
log ⎜ ⎟
⎝r⎠
N is defined to be the replacement ratio or the number of copies created in each iteration.
r is defined to be the scaling factor of the transformation involved in each iteration.

For example, consider the Koch curve

Initiator Generator
1 1
Here, N = 4 since 4 copies of the initiator are created. Also, r = since each copy is of the length of
3 3
log 4 log 4
the initiator. Thus, D = = ≈ 1.262
⎛ ⎞ log 3
⎜1⎟
log ⎜ ⎟
1
⎜ ⎟
⎝3⎠

In Lévy’s curve,

Initiator Generator
1 1
N = 2 since 2 copies of the initiator are created. Also, r = since each copy is of the length of
2 2
log 2 log 2 log 2 log 2
the initiator. Thus, D = = = = = 2.
⎛ ⎞ log 2 1
1
log 2
⎜ 1 ⎟
2
log 2
2
log ⎜ ⎟
⎜ 1 ⎟
⎜ ⎟
⎝ 2⎠

Thus, Lévy’s curve more densely fills a 2-dimensional plane than the Koch curve.

- 15 -
Applications of Fractal Geometry
Fractals have many applications ranging from computer science, to cartography, to advanced antenna
design. In computer science, fractals as iterative processes have been used to develop image
compression routines based upon self-transformations that have been demonstrated to be superior to
traditional formats like .gif and .jpg. Fractals have been used to study the length of coastlines, especially
the coastline of Great Britain. Most interestingly, it has been shown by Nathan Cohen and Robert
Hohlfield that “for an antenna to work equally well at all frequencies, it must satisfy two criteria. It
must be symmetrical about a point. And it must be self-similar, having the same basic appearance at
every scale – that is, it has to be a fractal.”1 Another antenna fact is that, generally, the larger or longer
the antenna, the more powerful it is. With this in mind, the Koch curve has been utilized for antenna
design because, interestingly, the more iterations used in the curve, the longer the curve becomes…and
this process is unlimited. Thusly, the Koch snowflake is a bizarre geometric object as it has infinite
perimeter, but only contains a finite area. Finally, the increased reception capabilities of fractal
antennae, in some cases up to 25% greater than traditional cell phone antennae2 have been a driving
force in including fractal antennae inside the bodies of cellular phones and allowing these phones to
incorporate GPS capability.

Pictures of fractal cellular phone antennae featured in Mathematical Excursions by Auffmann,


Lockwood, Nation, and Clegg, page 535.

1
Musser, George. Technology and Business: Wireless Communications. Scientific American, July, 1999.
2
Ibid.
- 16 -
POSSIBLE TEKS CORRELATIONS FOR PRESENTATION

§111.22. Mathematics, Grade 6.


(3) Patterns, relationships, and algebraic thinking. The student solves problems involving
proportional relationships. The student is expected to:
(A) use ratios to describe proportional situations;
(C) use ratios to make predictions in proportional situations.
(13) Underlying processes and mathematical tools. The student uses logical reasoning to make
conjectures and verify conclusions. The student is expected to:
(A) make conjectures from patterns or sets of examples and nonexamples; and
(B) validate his/her conclusions using mathematical properties and relationships.

§111.23. Mathematics, Grade 7.


(3) Patterns, relationships, and algebraic thinking. The student solves problems involving
proportional relationships. The student is expected to:
(B) estimate and find solutions to application problems involving proportional
relationships such as similarity, scaling, unit costs, and related measurement
units.
(4) Patterns, relationships, and algebraic thinking. The student represents a relationship in
numerical, geometric, verbal, and symbolic form. The student is expected to:
(A) generate formulas involving conversions, perimeter, area, circumference,
volume, and scaling;
(B) graph data to demonstrate relationships in familiar concepts such as
conversions, perimeter, area, circumference, volume, and scaling; and
(C) describe the relationship between the terms in a sequence and their positions
in the sequence.
(6) Geometry and spatial reasoning. The student compares and classifies shapes and solids
using geometric vocabulary and properties. The student is expected to:
(D) use critical attributes to define similarity.
(15) Underlying processes and mathematical tools. The student uses logical reasoning to make
conjectures and verify conclusions. The student is expected to:
(A) make conjectures from patterns or sets of examples and nonexamples;

§111.24. Mathematics, Grade 8.


(6) Geometry and spatial reasoning. The student uses transformational geometry to develop
spatial sense. The student is expected to:
(A) generate similar shapes using dilations including enlargements and
reductions;
(10) Measurement. The student describes how changes in dimensions affect linear, area, and
volume measures. The student is expected to:
(A) describe the resulting effects on perimeter and area when dimensions of a
shape are changed proportionally
(16) Underlying processes and mathematical tools. The student uses logical reasoning to make
conjectures and verify conclusions. The student is expected to:
(A) make conjectures from patterns or sets of examples and nonexamples;

- 17 -
§111.34. Geometry (One Credit).
(b) Geometric structure: knowledge and skills and performance descriptions.
(2) The student analyzes geometric relationships in order to make and verify conjectures.
Following are performance descriptions.
(A) The student uses constructions to explore attributes of geometric figures and
to make conjectures about geometric relationships.
(c) Geometric patterns: knowledge and skills and performance descriptions.
The student identifies, analyzes, and describes patterns that emerge from two- and three-
dimensional geometric figures. Following are performance descriptions.
(1) The student uses numeric and geometric patterns to make generalizations about geometric
properties, including properties of polygons, ratios in similar figures and solids, and angle
relationships in polygons and circles.
(2) The student uses properties of transformations and their compositions to make connections
between mathematics and the real world in applications such as tessellations or fractals.
(f) Similarity and the geometry of shape: knowledge and skills and performance descriptions. The
student applies the concepts of similarity to justify properties of figures and solve problems.
Following are performance descriptions.
(1) The student uses similarity properties and transformations to explore and justify conjectures
about geometric figures.
(2) The student uses ratios to solve problems involving similar figures.

MATERIALS AND PRICING INFORMATION

The only materials required to implement this activity into a K-12 classroom are a computer (or
computer lab) and the The Geometer’s Sketchpad software. Please visit the website of Key Curriculum
Press (http://www.keypress.com/catalog/products/software/Prod_GSP.html#Anchor-The-44867) for
information on pricing of the software.

BIBLIOGRAPHY OF SUGGESTED READING

The Geometer’s Sketchpad Resource Center (http://www.keypress.com/sketchpad/)


- This is a part of the Key Curriculum Press website and features classroom activities,
project ideas, bibliographies, information on pricing of the software, and more.

Mathematical Excursions by Auffmann, Lockwood, Nation, and Clegg, Houghton Mifflin Company,
2004.

The Fractal Geometry of Nature by Benoit B. Mandelbrot, W. H. Freeman and Company, 1982.

Fractals Everywhere by Michael F. Barnsley, Academic Press, 1988.

- 18 -