All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars    
perplexus dot info

Home > Just Math
Dodecahedral Vertex Sums (Posted on 2007-06-01) Difficulty: 4 of 5
Very roughly this is the net of a dodecahedron; each letter represents a pentagon.
       A
       |
    B--C--D
      / \
     E   F
      \
  G   H
   \ /
 I--J--K
    |
    L

Consider each face to be numbered 1 through 12.

Each vertex is the intersection of 3 faces. The vertex sum is therefore the sum of the values of those three faces.

The faces making up the vertices in the diagram above are:

 1. ABC  2. ABI  3. ACD  4. ADL  5. AIL
 6. BCE  7. BEG  8. BGI  9. CDF 10. CEF
11. DKF 12. DKL 13. EFH 14. EGH 15. FHK
16. GHJ 17. GIJ 18. HJK 19. IJL 20. JKL.

What is the global vertex sum (20 vertices) and therefore the mean vertex sum?

How best can the faces be labeled so that the 20 vertices are as close as possible to the mean vertex sum?

“Close as possible” means that:
the sum of differences above (or below) the mean is at the optimum
or
the most vertex sums land on or have the best proximity to the mean as possible. The prior condition also applies; ie, any deviance is minimal.

See The Solution Submitted by brianjn    
Rating: 4.0000 (1 votes)

Comments: ( Back to comment list | You must be logged in to post comments.)
Solution computer solution | Comment 3 of 4 |
In writing the program to find a best solution, we want to visit as few possible permutations of numbers vs. letters.  Without loss of generality we can say that the 1 is taken to be on face C, which conceptually I place in the center of the top half of the dodecahedron. Then we have to choose 5 of the remaining 11 (without regard to order, so it the selection is done in ascending order). Also without loss of generality, the lowest of these can be placed on face E, and we can always make sure the number on F is lower than the number on B; other than that all permutations of the digits for F, D, A and B can be used.

Then every permutation of the remaining numbers vis-a-vis the remaining letters G thru L need be tried.

As a result, under 4 million combinations need be tried, which is considerably less than 12!.


DECLARE SUB permute (a$)
DEFDBL A-Z

DIM taken(12)

CLS

avg = 19.5
tdMax = 9999999
tsqMax = 99999999999#

c = 1
FOR v1 = 2 TO 8: taken(v1) = 1
FOR v2 = v1 + 1 TO 9: taken(v2) = 1
FOR v3 = v2 + 1 TO 10: taken(v3) = 1
  PRINT v1; v2; v3
FOR v4 = v3 + 1 TO 11: taken(v4) = 1
FOR v5 = v4 + 1 TO 12: taken(v5) = 1
  s1$ = CHR$(v2) + CHR$(v3) + CHR$(v4) + CHR$(v5)
  h1$ = s1$
  DO
   IF LEFT$(s1$, 1) < RIGHT$(s1$, 1) THEN
    e = v1
    f = ASC(LEFT$(s1$, 1))
    d = ASC(MID$(s1$, 2, 1))
    a = ASC(MID$(s1$, 3, 1))
    b = ASC(MID$(s1$, 4, 1))
    s2$ = ""
    FOR ii = 2 TO 12
      IF taken(ii) = 0 THEN
        s2$ = s2$ + CHR$(ii)
      END IF
    NEXT ii
    h2$ = s2$
    DO
      h = ASC(LEFT$(s2$, 1))
      k = ASC(MID$(s2$, 2, 1))
      l = ASC(MID$(s2$, 3, 1))
      i = ASC(MID$(s2$, 4, 1))
      g = ASC(MID$(s2$, 5, 1))
      j = ASC(MID$(s2$, 6, 1))

      td = 0: tsq = 0

      diff = ABS(a + b + c - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(a + b + i - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(a + c + d - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(a + d + l - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(a + i + l - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(b + c + e - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(b + e + g - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(b + g + i - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(c + d + f - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(c + e + f - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(d + k + f - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(d + k + l - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(e + f + h - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(e + g + h - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(f + h + k - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(g + h + j - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(g + i + j - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(h + j + k - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(i + j + l - avg): td = td + diff: tsq = tsq + diff * diff
      diff = ABS(j + k + l - avg): td = td + diff: tsq = tsq + diff * diff

      IF td < tdMax THEN
        tdMax = td
        PRINT a; b; c; d; e; f; g; h; i; j; k; l, td / 20
        PRINT (a + b + c - avg);
        PRINT (a + b + i - avg);
        PRINT (a + c + d - avg);
        PRINT (a + d + l - avg);
        PRINT (a + i + l - avg);
        PRINT (b + c + e - avg);
        PRINT (b + e + g - avg);
        PRINT (b + g + i - avg);
        PRINT (c + d + f - avg);
        PRINT (c + e + f - avg);
        PRINT (d + k + f - avg);
        PRINT (d + k + l - avg);
        PRINT (e + f + h - avg);
        PRINT (e + g + h - avg);
        PRINT (f + h + k - avg);
        PRINT (g + h + j - avg);
        PRINT (g + i + j - avg);
        PRINT (h + j + k - avg);
        PRINT (i + j + l - avg);
        PRINT (j + k + l - avg)
      END IF

      IF tsq < tsqMax THEN
        tsqMax = tsq
        PRINT a; b; c; d; e; f; g; h; i; j; k; l, SQR(tsq / 20); " (sq)"
        PRINT (a + b + c - avg);
        PRINT (a + b + i - avg);
        PRINT (a + c + d - avg);
        PRINT (a + d + l - avg);
        PRINT (a + i + l - avg);
        PRINT (b + c + e - avg);
        PRINT (b + e + g - avg);
        PRINT (b + g + i - avg);
        PRINT (c + d + f - avg);
        PRINT (c + e + f - avg);
        PRINT (d + k + f - avg);
        PRINT (d + k + l - avg);
        PRINT (e + f + h - avg);
        PRINT (e + g + h - avg);
        PRINT (f + h + k - avg);
        PRINT (g + h + j - avg);
        PRINT (g + i + j - avg);
        PRINT (h + j + k - avg);
        PRINT (i + j + l - avg);
        PRINT (j + k + l - avg)
      END IF


      permute s2$
    LOOP UNTIL s2$ = h2$
    
   END IF
   permute s1$
  LOOP UNTIL h1$ = s1$
  taken(v5) = 0
NEXT
  taken(v4) = 0
NEXT
  taken(v3) = 0
NEXT
  taken(v2) = 0
NEXT
  taken(v1) = 0
NEXT

DEFSNG A-Z
SUB permute (a$)
DEFINT A-Z
 x$ = ""
 FOR i = LEN(a$) TO 1 STEP -1
  l$ = x$
  x$ = MID$(a$, i, 1)
  IF x$ < l$ THEN EXIT FOR
 NEXT

 IF i = 0 THEN
  FOR j = 1 TO LEN(a$) \ 2
   x$ = MID$(a$, j, 1)
   MID$(a$, j, 1) = MID$(a$, LEN(a$) - j + 1, 1)
   MID$(a$, LEN(a$) - j + 1, 1) = x$
  NEXT
 ELSE
  FOR j = LEN(a$) TO i + 1 STEP -1
   IF MID$(a$, j, 1) > x$ THEN EXIT FOR
  NEXT
  MID$(a$, i, 1) = MID$(a$, j, 1)
  MID$(a$, j, 1) = x$
  FOR j = 1 TO (LEN(a$) - i) \ 2
   x$ = MID$(a$, i + j, 1)
   MID$(a$, i + j, 1) = MID$(a$, LEN(a$) - j + 1, 1)
   MID$(a$, LEN(a$) - j + 1, 1) = x$
  NEXT
 END IF
END SUB


The optimum assignments found are

 A   B  C   D  E  F  G  H  I   J  K  L   Avg deviation
8  11  1  10  7  9  6  4  2  12  3  5     1.7
 
 The individual deviations of the vertices are
     
 .5  1.5 -.5  3.5 -4.5 -.5  4.5 -.5  .5 -2.5  2.5 -1.5  .5 -2.5 -3.5  2.5  .5 -.5 -.5  .5

So 1.7 is the smallest average deviation from the mean that you can get.



I thought it would be instructive to see what would happen if we sought to minimize the average square of the deviations from the mean, rather than the average absolute value. Indeed a different set of assignments results in optimum there:

A   B  C  D  E   F  G  H  I   J  K  L     Avg squared deviation
8  11  1  9  7  10  4  5  3  12  2  6     1.962141687034858 

and the individual deviations themselves (not squares) are

 .5  2.5 -1.5  3.5 -2.5 -.5  2.5 -1.5  .5 -1.5  1.5 -2.5  2.5 -3.5 -2.5  1.5 -.5 -.5  1.5  .5
 
 showing less extreme deviations (both small and large).
 
 
 
  Posted by Charlie on 2007-06-01 17:51:00
Please log in:
Login:
Password:
Remember me:
Sign up! | Forgot password


Search:
Search body:
Forums (0)
Newest Problems
Random Problem
FAQ | About This Site
Site Statistics
New Comments (2)
Unsolved Problems
Top Rated Problems
This month's top
Most Commented On

Chatterbox:
Copyright © 2002 - 2017 by Animus Pactum Consulting. All rights reserved. Privacy Information