This page describes the approach taken to
solve the Petersen Graph Zome Challenge from the prizes page of Mathpuzzle.com. If you are more visually inclined, you
might want to start with theVirtual Zome Petersen Graphs
page.
I didn't feel like searching for the solution by hand (given that it might be impossible) so I decided to create a computer program to search for any and all solutions. To do this, I first needed some way of representing a Zome ball positioned in space as well as some nomenclature for describing the various directions taken from a Zome ball.
The Zome coordinate system I used is a typical three dimensional (x,y,z) space with a Zome ball at the origin and three mutually perpindicular blue stuts (i.e. the corner of a cube) being the positive axes. Here is a picture of the origin and the positive axes as viewed from the from the first octant. (Note that the images here are taken by placing actual Zome pieces on the glass of my scanner and then editing the scanned image.) The positive x axis is pointing to the lower left, the positive y axis is pointing to the lower right and the positive z axis is pointing up. Note that the wider side of the strut lying on the positive x axis is parallel to the xy plane, the wider side of the y axis lies in the yz plane, and the wider side of the z axis lies in the xz plane. This is an arbitrary decision (alternatives are equally valid), but the decision is significant because the nomenclature and computer program rely on this particular orientation. 
Next, I needed a way to represent the coordinates of Zome balls in this space. I started with blue struts of the same length since that is all that the original problem required. Using 1 as the blue strut length, the coordinates of the Zome balls at the ends of the six axes struts are obviously (+/1, 0, 0), (0, +/1, 0), and (0, 0, +/1). The coordinates of the remaining 24 neighboring balls are not so obvious. As you can see from the above picture, there are three blue (i.e. rectangular) holes in octant 1. In fact, there are three blue holes in each of the eight octants (3*8=24). Due to the symetry of the Zome ball, finding the coordinates of any one of these 24 balls will give us the coordinates of the other 23 balls (thanks to rotation and reflection). I chose to start with the blue hole in octant one that shares a corner with the positive x axis. I used a b3 strut as the positive x axis, a b1 strut as the positive y axis, and a b2 strut as the positive z axis. I then placed a b2 strut in the blue hole in octant 1 next to the x axis. Connecting b2 struts between the ball at the end of the octant 1 strut and the balls at then ends of the three axial struts results in the structure shown in the two images shown here.
The upper image is essentially a projection of the structure onto the xy plane. The lower image is a projection onto the xz plane. If T is the ratio of successive lengths of blue struts and b2 is taken to have a length of 1, then it is apparent from this structure that the coordintes of the fourth ball are: ( T/2, 1/(2T), 1/2 ) These three values and their negatives can be used in different permutations to express the coordinates of all balls that are at the ends of nonaxial blue struts with length 1. One interesting thing about these numbers (including the coordinates of the axial balls) is that they can all be expressed as: (a+bT)/2, where a and b are integers It turns out that this expression can be used to represent the coordinates of any ball that is connected (or connectable) to the origin using any combination of struts of any length (including green struts in any orientation, but not blue green struts). Using 2tuples of integers to represent coordinates is ideal for computer programs because...


Now that the coordinates of neighboring Zome balls can be determined, I needed a nomenclature to describe the different directions that can be taken from a Zome ball. Every Zome ball has 62 holes. The first way to differentiate the holes is by the color of the strut that fits into the hole: blue, yellow, or red. Since yellow starts with a "y" and y is also used to describe a ball's coordinates (as in "(x,y,z)"), I decided that it would reduce confusion if I referred to struts of that color as "amber struts" instead of "yellow struts". Here is a breakdown of the Zome ball's holes:
Color  Number per axis/octant  Number of axes/octants  Total 

Blue  2 per axis  3 axes  6 
3 per octant  8 octants  24  
Amber  4 per axis  3 axes  12 
1 per octant  8 octants  8  
Red  4 per axis  3 axes  12 
Grand Total  62 
Further examination of a Zome ball reveals that each hole (except for 8 amber holes) is adjacent to an axis or is itself an axis. I wanted the nomenclature to be as compact as possible, yet still be readable by humans. After considering several possibilities, I finally decided on using the following three components to refer to a Zome ball hole: its color, the axis to which it is adjacent, and the octant in which it lies. Using one character for each component provides a three character "name" for each hole. The characters I used for each component are shown in the following table.
Component  Value  Symbol  Comment 

Color  Blue  b  
Amber  a  aka Yellow  
Red  r  
Axis  x  x  
y  y  
z  z  
N/A  o  This is for the amber holes that are centered in each octant.  
Octant  18  18  The numbers 1 through 8 are used for the 8 octants. 
+  +  This is used for the positive axes.  
    This is used for the negative axes. 
This nomenclature has some ambiguities. For example, the amber hole directly "above" the positive x axis lies in the xz plane and is not really in either octant 1 or octant 4. These ambiguities are resolved by the following convention: if a hole lies in the xy, yz, or xz plane, its zero coordinate is considered to by positive for the purposes of determining its octant unless the hole opposite it has already been assigned an octant. In that case, the hole is assigned the octant opposite the opposite hole's octant. Octants are assigned to holes starting with those in or around octant 1 and ending with those in or around octant 8. Some examples will probably clear up any confusion you may have...
The three positive axes are referred to as
bx+
, by+
, and bz+
. The hole that was used above to determine
the nonaxial coordinates was hole bx1
. The amber hole directly above the x axis
is called ax1
, the amber hole directly above the negative
x axis is called ax2
, the amber hole directly below the negative
x axis is ax7
, and the amber hole directly below the positive
x axis is called ax8
. The amber hole that is in the "center"
of octant 1 is called ao1
(think "o for other" or "o
for octant"). Here are the names of
all 62 holes:
Positive Axes:  bx+ 
by+ 
bz+ 

Octant I:  bx1 
by1 
bz1 
ax1 
ay1 
az1 
ao1 
rx1 
ry1 
rz1 
Octant II:  bx2 
by2 
bz2 
ax2 
ay2 
ao2 
rx2 
rz2 

Octant III:  bx3 
by3 
bz3 
ao3 

Octant IV:  bx4 
by4 
bz4 
az4 
ao4 
ry4 

Negative Axes:  bx 
by 
bz 

Octant V:  bx5 
by5 
bz5 
ao5 

Octant VI:  bx6 
by6 
bz6 
az6 
ao6 
ry6 

Octant VII:  bx7 
by7 
bz7 
ax7 
ay7 
az7 
ao7 
rx7 
ry7 
rz7 
Octant VIII:  bx8 
by8 
bz8 
ax8 
ay8 
ao8 
rx8 
az8 
If all of the struts of a Zome construction
have the same length, then the hole names
are adequate to describe the neighboring
Zome balls. If the struts have different
lengths, then a size indicator (1, 2, 3)
can be added after the color letter to indicate
the length of the strut placed in that hole.
A series of such names can be used to specify
a particular arrangement of Zome balls and
struts. For example, a square can be represented
as bx+, by+, bx, by
. An equilateral triangle can be represented
as bx+, by2, by7
.
The Zome construction used above to determine the coordinates of nonaxial blue balls can be described as:
b3x+, b2x2, b2x7, b2z+, b2x8, b2x6, b1y
Having established a coordinate system and a means of representing Zome constructions, it is now time to move on to actually solving the Petersen Graph Zome Challenge.