From Path-Segment Tiles to Loops and Labyrinths

Similar documents
Edge-Constrained Tile Mosaics

Tile Number and Space-Efficient Knot Mosaics

Twenty-sixth Annual UNC Math Contest First Round Fall, 2017

BMT 2018 Combinatorics Test Solutions March 18, 2018

Pointillism via Linear Programming

Closed Almost Knight s Tours on 2D and 3D Chessboards

Square Roots and the Pythagorean Theorem

Melon s Puzzle Packs

INTERNATIONAL MATHEMATICS TOURNAMENT OF TOWNS Junior A-Level Paper, Spring 2014.

Unit 5 Shape and space

FIBONACCI KOLAMS -- AN OVERVIEW

EXPLORING TIC-TAC-TOE VARIANTS

G 1 3 G13 BREAKING A STICK #1. Capsule Lesson Summary

SHAPE level 2 questions. 1. Match each shape to its name. One is done for you. 1 mark. International School of Madrid 1

IN THIS ISSUE. WPC Placement. WPC Placement Puzzles of the th Belarusian Puzzle Championship. Puzzles of the

arxiv: v2 [math.gt] 21 Mar 2018

Figure 1: The Game of Fifteen

Chapter 4. Linear Programming. Chapter Outline. Chapter Summary

Enumerating 3D-Sudoku Solutions over Cubic Prefractal Objects

Overview. Equipment. Setup. A Single Turn. Drawing a Domino

Classwork Example 1: Exploring Subtraction with the Integer Game

Color-matching Non-matching Symmetries Patterns Game

GPLMS Revision Programme GRADE 3 Booklet

Inductive Reasoning Practice Test. Solution Booklet. 1

MATHEMATICS ON THE CHESSBOARD

LMI Monthly Test May 2010 Instruction Booklet

Math Runes. Abstract. Introduction. Figure 1: Viking runes

UK Junior Mathematical Challenge

40 Cat Case. Place four Cat pieces flat in the frames. MDF board 2D put-together. Copyright 2003 IPP Design Competition All rights reserved.

For all questions, answer choice E) NOTA means that none of the above answers is correct.

Drawing a Living Room and Family Room Floorplan

On Variants of Nim and Chomp

SUDOKU1 Challenge 2013 TWINS MADNESS

A complete set of dominoes containing the numbers 0, 1, 2, 3, 4, 5 and 6, part of which is shown, has a total of 28 dominoes.

arxiv: v1 [math.co] 30 Jul 2015

LUNDA DESIGNS by Ljiljana Radovic

Branching Miter Joints: Principles and Artwork

The mathematics of Septoku

puzzles may not be published without written authorization

The patterns considered here are black and white and represented by a rectangular grid of cells. Here is a typical pattern: [Redundant]

arxiv: v1 [math.gt] 21 Mar 2018

Pennies vs Paperclips

The 24 oct-dominoes and their wonders

PROBLEMS & INVESTIGATIONS. Introducing Add to 15 & 15-Tac-Toe

Part III F F J M. Name

Two Parity Puzzles Related to Generalized Space-Filling Peano Curve Constructions and Some Beautiful Silk Scarves

Summer Assignment for students entering Pre IB Algebra II

Grade 7 & 8 Math Circles February 2-3, 2016 Logic Puzzles

Positive Triangle Game

UK JUNIOR MATHEMATICAL CHALLENGE. April 26th 2012

Pascal Contest (Grade 9)

Knots in a Cubic Lattice

Dutch Sudoku Advent 1. Thermometers Sudoku (Arvid Baars)

Jamie Mulholland, Simon Fraser University

LMI-MONTHLY TEST JUN 2010 'SPEED SIXES'

MATHEMATICS LEVEL: 5 6 (E - Στ Δημοτικού)

lines of weakness building for the future All of these walls have a b c d Where are these lines?

Introduction to Mathematical Reasoning, Saylor 111

Some Monohedral Tilings Derived From Regular Polygons

TEKSING TOWARD STAAR MATHEMATICS GRADE 6. Student Book

The Complexity of Generalized Pipe Link Puzzles

Arkansas Tech University MATH 2924: Calculus II Dr. Marcel B. Finan. Figure 50.1

Lesson 1b Linear Equations

Caltech Harvey Mudd Mathematics Competition February 20, 2010

Lesson 10 Practice Problems

PRIMES STEP Plays Games

Lesson 10: Understanding Multiplication of Integers

Mathematics, Grade 8

SUDOKU Colorings of the Hexagonal Bipyramid Fractal

TEST 6. 12, 7, 15, 4, 1, 10, Circle all the odd numbers.

Beyond Sudoku: Using Puzzles to Develop Students Logical-Thinking Skills. Jeffrey J. Wanko Miami University - Oxford, OH

Squares Multiplication Facts: Square Numbers

Chapter 4 Number Theory

Aesthetically Pleasing Azulejo Patterns

Table of Contents. Table of Contents 1

Instruction Cards Sample

Lesson 6 2D Sketch Panel Tools

Table of Contents Problem Solving with the Coordinate Plane

TEST (a) Write these numbers in order of increasing size. 12, 7, 15, 4, 1, 10, Circle all the odd numbers.

Objectives. Materials

Solutions of problems for grade R5

Meet # 1 October, Intermediate Mathematics League of Eastern Massachusetts

METHOD 1: METHOD 2: 4D METHOD 1: METHOD 2:

1. Use Pattern Blocks. Make the next 2 figures in each increasing pattern. a) 2. Write the pattern rule for each pattern in question 1.

Foundations of Multiplication and Division

Composition. Arranging the elements on your page for maximum impact

Multiplying Three Factors and Missing Factors

Abstract. 1. Introduction

Twenty-fourth Annual UNC Math Contest Final Round Solutions Jan 2016 [(3!)!] 4

INSTRUCTION BOOKLET SUDOKU MASTERS 2008 NATIONAL SUDOKU CHAMPIONSHIP FINALS Q&A SESSION 10:30 10:50 PART 1 CLASSICS 11:00 11:35

Activity 5.2 Making Sketches in CAD

WPF PUZZLE GP 2018 ROUND 1 COMPETITION BOOKLET. Host Country: Turkey. Serkan Yürekli, Salih Alan, Fatih Kamer Anda, Murat Can Tonta A B H G A B I H

THE ART OF SPIROLATERAL REVERSALS Robert J. Krawczyk

Latin Squares for Elementary and Middle Grades

Exploring Concepts with Cubes. A resource book

Lines Number Lines Tally Marks

Building Concepts: Fractions and Unit Squares

Counting Problems

Up and Down or Down and Up

25 C3. Rachel gave half of her money to Howard. Then Howard gave a third of all his money to Rachel. They each ended up with the same amount of money.

Transcription:

Proceedings of Bridges 2013: Mathematics, Music, Art, Architecture, Culture From Path-Segment Tiles to Loops and Labyrinths Robert Bosch, Sarah Fries, Mäneka Puligandla, and Karen Ressler Dept. of Mathematics, Oberlin College, Oberlin, OH 44074 (bobb@cs.oberlin.edu) Abstract We explain how to use integer programs to assemble a collection of path-segment tiles squares decorated with path segments on a grid so that the path segments join together to form a single closed loop or a single open path through the centers of the squares of the grid. We describe how to optimize (maximize or minimize) the number of bends (90-degree turns) in the loop or path. We show how to force loops to be symmetric and to encourage paths to be as close to symmetric as possible. We conclude by displaying laser-cut and 3D-printed artwork designed with our integer programs. 1 Introduction Integer programs are mathematical optimization problems in which the objective is to optimize (in some cases, to maximize, and in others, to minimize) a linear function of integer-valued variables subject to one or more linear constraints (equations or inequalities) on those variables [10]. Since the 1960s, integer programs have been applied with great frequency and success to problems in the areas of logistics, manufacturing, and scheduling, and in these applications, the objective is usually to maximize profit or minimize cost [7]. For the last 12 years, Bosch and colleagues have conducted investigations into how integer programs can be employed in the construction of visual artwork [1-6,9]. In the present article, we continue these explorations. We focus on using integer programs to assemble a collection of path-segment tiles (displayed in Figure 1) on a square grid so that the tiles path-segment decorations (drawn in black) join together to form a closed loop (a Hamiltonian cycle) or a labyrinth (a Hamiltonian path) through the centers of the squares of the grid. We strive to produce aesthetically pleasing loops and labyrinths. To this end, we employ methods for optimizing (maximizing or minimizing) the number of bends (90-degree turns) in the loop or labyrinth, for forcing loops to be symmetric, and for encouraging labyrinths to be as close to symmetric as possible. 1 2 3 4 5 6 7 8 9 10 Figure 1: Path-segment tiles. 119

Bosch et al. 2 Designing Loops with Path-Segment Tiles In this section, we describe how to use integer programs to arrange copies of the path-segment tiles into a loop (a Hamiltonian cycle) on an m n board (grid of squares). We require that a tile be placed in each square of the board, and we strive to maximize (or minimize) the number of bends (90-degree turns). 2.1 Variables We set x t,i, j equal to 1 if we place a copy of tile t in square (i, j), the row-i, column- j square of our m n board, and we set x t,i, j equal to 0 if we don t do this. Note that there are 6mn variables. (For loops, we can restrict ourselves to tiles 1 through 6, so 1 t 6, 1 i m, 1 j n.) 2.2 The Core Constraints To force ourselves to place precisely one tile in square (i, j) of our board, we impose the constraint 6 t=1 x t,i, j = 1. (1) We need mn such constraints one for each square. To force ourselves to place compatible tiles in square (i, j) and its right hand neighbor (i, j+1), we impose the constraints x 1,i, j + x 3,i, j + x 5,i, j = x 2,i, j+1 + x 4,i, j+1 + x 5,i, j+1 (2) and x 2,i, j + x 4,i, j + x 6,i, j = x 1,i, j+1 + x 3,i, j+1 + x 6,i, j+1. (3) Constraint (2) states that the number of tiles placed in square (i, j) that have the path segment exiting the right side of square (i, j) must be equal the number of tiles placed in square (i, j+1) that have the path segment exiting the left side of square (i, j+1). Constraint (3) states that the number of tiles placed in square (i, j) that have no path segment exiting the right side of square (i, j) must be equal the number of tiles placed in square (i, j+1) that have no path segment exiting the left side of square (i, j+1). We need m(n 1) constraints of each type one for each square that has a right hand neighbor. To force ourselves to place compatible tiles in (i, j) and its lower neighbor (i+1, j), we impose the constraints x 1,i, j + x 2,i, j + x 6,i, j = x 3,i+1, j + x 4,i+1, j + x 6,i+1, j (4) and x 3,i, j + x 4,i, j + x 5,i, j = x 1,i, j+1 + x 2,i, j+1 + x 5,i, j+1. (5) We need (m 1)n constraints of each type one for each square that has a lower neighbor. To keep the path from leaving the board, we simply set certain variables equal to 0 and then remove them from the model. By setting x 3,1, j = x 4,1, j = x 6,1, j = 0 and x 1,m, j = x 2,m, j = x 6,m, j = 0 for each 1 j n, we prevent the path from crossing either the top edge or the bottom edge of the board. By setting x 2,i,1 = x 4,i,1 = x 5,i,1 = 0 and x 1,i,n = x 3,i,n = x 5,i,n = 0 for each 1 i m, we prevent the path from crossing either the left edge or the right edge of the board. 2.3 Objective Function If we want to find a loop that has as many (or as few) bends as possible, we maximize (or minimize) 4 m n t=1 i=1 j=1 120 x t,i, j. (6)

2.4 Sub-loop Elimination Constraints From Path-Segment Tiles to Loops and Labyrinths If we maximize (6) subject to the core constraints, we will end up with a solution similar to the one displayed in Figure 2. Figure 2: 30 sub-loops on a 10 12 board. This solution satisfies all of the core constraints, but it it is composed of sub-loops. To eliminate subloops, we adapt Dantzig, Fulkerson, and Johnson s approach to solving instances of the Traveling Salesman Problem (TSP) [8]. In the TSP, when we encounter subtours, we add linear inequalities to the model to eliminate them. Here, to eliminate the top left sub-loop, we add the linear inequality x 1,1,1 + x 2,1,2 + x 3,2,1 + x 4,2,2 2 (7) to our model. This constraint states that we may use no more than two of the four tile placements that make up the top left sub-loop. Note that if we were to use three of the four tile placements, the compatibility constraints (constraints (2) through (5)) would force us to use all four of them. To eliminate other sub-loops, we include constraints similar to constraint (7). As in the case of the TSP, we add our sub-loop elimination constraints as they are needed. 2.5 Symmetry Constraints If we want our loop to be symmetric, we can include constraints that force in the desired symmetry. For example, if we want our 10 12 loop to have 180-degree rotational symmetry, we can include for all 1 i 5 and all 1 j 12. x 1,i, j = x 4,11 i,13 j, x 2,i, j = x 3,11 i,13 j, x 3,i, j = x 2,11 i,13 j, x 4,i, j = x 1,11 i,13 j, x 5,i, j = x 5,11 i,13 j, x 6,i, j = x 6,11 i,13 j 2.6 A Gallery of Loops To date, we have used our integer programming model to create thousands of loop designs. Figure 3 displays three designs that have 180-degree rotational symmetry. Loop 3a has 108 bends, the greatest number possible for a 10 12 loop with 180-degree rotational symmetry. There are seven other 10 12 loops that have 108 bends and 180-degree rotational symmetry. Once we have an optimal solution, we can find additional optimal solutions (and eventually suboptimal solutions) by including sub-loop elimination constraints to eliminate the solutions we have already found. Loop 3c has only 20 bends, the least number possible for a 10 12 loop with 180-degree rotational symmetry. There are nine other 10 12 loops with 180-degree rotational symmetry that have only 20 bends. 121

Bosch et al. Loop 3b has 68 bends. To produce this design, we employed special constraints to force in the interior staircase structure. Figure 3: Three 10 12 loops that have 180-degree rotational symmetry. Figure 4 displays six designs that have horizontal mirror symmetry, vertical mirror symmetry, and 180- degree rotational symmetry. By repeatedly adding sub-loop elimination constraints to eliminate all previously obtained solutions, we discovered that there are 2179 such loops. Loop 4a is one of 24 loops that have 100 bends, the greatest number possible for a 10 12 loop with these symmetries. Loop 4 f is one of eight loops that have only 36 bends, the least number possible for a 10 12 loop with these symmetries. Loops 4b, 4c, 4d, and 4e have 84, 76, 60, and 52 bends, respectively. They are some of our favorite designs. d e f Figure 4: Six 10 12 loops that have horizontal mirror symmetry, vertical mirror symmetry, and 180-degree rotational symmetry. 122

2.7 Loops in Physical Form From Path-Segment Tiles to Loops and Labyrinths To get some sense of what it would be like to travel through these loops, Robert Bosch made laser-cut versions out of hardboard and MDF. The laser-cut loops can be placed atop a BRIO Labyrinth game, as shown in the left half of Figure 5. The player can then turn the game s knobs to tilt the board and maneuver a steel ball through the loop. Figure 5: A laser-cut version of Loop 4e (left) and a loop made out of 3D-printed tiles (right). To be able to construct all loops (and labyrinths) that can be constructed from path-segment tiles, Robert and Derek Bosch designed a set of 3D-printed tiles shown in right half of Figure 5. On one side of each tile, there is a path segment (not drawn in black, but inset into the tile) that has a 90-degree bend. On the opposite side, there is a path segment (again, inset into the tile) that goes straight across. 3 Designing Labyrinths with Path-Segment Tiles In this section, we provide a sketch of how to modify the integer program described in the previous section so that it can be used to arrange copies of the path-segment tiles into a labyrinth (a Hamiltonian path) that starts on a specified square on the edge of the board and ends on a specified square in the interior. Figure 6: Three 12 12 labyrinths. 123

Bosch et al. For the three 12 12 labyrinth designs displayed in Figure 6, square (12,6) is the start square and square (7,6) is the end square. If we want the path to leave the start square and enter the end square through these squares upper neighbors, we set x 7,12,6 = x 7,7,6 = 1 and x t,i, j = 0 for all 8 t 10. Other than making some small modifications to the instances of constraints (2) through (5) that involve squares (12, 6) and (7, 6), we are able to leave the core constraints alone. As in the loop case, we add sub-loop elimination constraints as needed. Figure 7: Three 12 12 labyrinths with (top) all instances of horizontal mirror symmetry shaded and marked with white dots, (middle) all instances of vertical mirror symmetry shaded and marked with white dots, and (bottom) all instances of 90-degree rotational symmetry shaded and marked with black dots. As it is impossible for a labyrinth with our chosen start and end squares to be perfectly symmetric, we do not include symmetry constraints. Instead of maximizing or minimizing the number of tiles with 90-degree bends, we make it our goal to design labyrinths that will be as close as possible to being symmetric. 124

From Path-Segment Tiles to Loops and Labyrinths To measure closeness to horizontal mirror symmetry, we introduce a binary variable h t,i, j for each tile t with 1 t 6 and each square (i, j) with 1 i m/2 and 1 j n (each square in the top half of the board). For each path-segment tile t, we let H(t) denote the image of tile t in a horizontal mirror. Note that H(1) = 3, H(2) = 4, H(3) = 1, H(4) = 2, H(5) = 5, and H(6) = 6. We then constrain the variable h t,i, j as follows: x t,i, j + x H(t),m+1 i, j 1+h t,i, j, (8) h t,i, j x t,i, j, (9) h t,i, j x H(t),m+1 i, j. (10) Inequality (8) forces h t,i, j to equal 1 when both x t,i, j and x H(t),m+1 i, j equal 1. Inequalities (9) and (10) force x t,i, j and x H(t),m+1 i, j to equal 1 when h t,i, j equals 1. In other words, inequalities (8), (9), and (10) state that the variable h t,i, j equals 1 if and only if tile t and its image H(t) are involved in an instance of horizontal mirror symmetry that takes place in squares (i, j) and (m+1 i, j). In the top row of Figure 7, the squares that have been shaded and marked with white dots are precisely those squares that house instances of horizontal mirror symmetry. Labyrinth b has 128 such instances, while Labyrinth c has 120 instances, and Labyrinth a has only 74 instances. To count instances of vertical mirror symmetry, we introduce a binary variable v t,i, j for each tile t with 1 t 6 and each square (i, j) with 1 i m and 1 j n/2 (each square in the left half of th board). For each t, we let V(t) denote the image of tile t in a vertical mirror. Note that V(1) = 2, V(2) = 1, V(3) = 4, V(4) = 3, V(5) = 5, and V(6). We then constrain the variable v t,i, j with inequalities similar to (8), (9), and (10). The middle row of Figure 7 shows the locations of instances of vertical mirror symmetry. Labyrinths b and c are the best in terms of vertical mirror symmetry, with 128 instances, while Labyrinth a is far behind with only 76 instances. To count instances of 90-degree rotational symmetry, we introduce a binary variable r t,i, j for each tile t with 1 t 6 and each square (i, j) with 1 i n/2 and 1 j n/2 (each square in the top left quadrant of the board). Here we are assuming that m = n. For each t, we let R(t) denote the tile produced when tile t is rotated 90 degrees clockwise about its center. Note that R(1) = 2, R(2) = 4, R(3) = 1, R(4) = 3, R(5) = 6, and R(6) = 5. We then constrain the variable r t,i, j as follows: x t,i, j + x R(t), j,n+1 i + x R(R(t)),n+1 i,n+1 j + x R(R(R(t))),n+1 j,i 3+r t,i, j, r t,i, j x t,i, j, r t,i, j x R(t), j,n+1 i, r t,i, j x R(R(t)),n+1 i,n+1 j, r t,i, j x R(R(R(t))),n+1 j,i. These inequalities state that the variable r t,i, j equals 1 if and only if tile t and its rotations R(t), R(R(t)), and R(R(R(t))) are involved in an instance of 90-degree rotational symmetry that takes place in squares (i, j), ( j,n+1 i), (n+1 i,n+1 j), and (n+1 j,i) (square (i, j) and the three squares it rotates into). The bottom row of Figure 7 shows the instances of 90-degree rotational symmetry. Here, Labyrinth a is the best, with 116 instances. Labyrinth c has 92 instances, and Labyrinth b has only 20 instances. We produced Labyrinth a by maximizing the sum of the r t,i, j variables. By repeatedly adding sub-loop elimination constraints to eliminate all previously obtained solutions, we discovered that Labyrinth a is one of 112 12 12 labyrinths that have 116 instances of 90-degree rotational symmetry, the highest number possible. To produce Labyrinth b, we maximized the sum of h t,i, j variables and the v t,i, j variables. Labyrinth b is one of more than four hundred 12 12 labyrinths than have a total horizontal/vertical (h/v) score of 256, the highest number possible. We did not find all such labyrinths. We suspect that the number is very large. 125

Bosch et al. To produce Labyrinth c, we maximized the sum of the h t,i, j variables, the v t,i, j variables, and the r t,i, j variables. Labyrinth c has a total horizontal/vertical/rotational (h/v/r) score of 340, the highest number possible. Only one other 12 12 labyrinth has a total h/v/r score of 340, and like Labyrinth a it closely resembles a classical Chartres-like labyrinth. Labyrinth b has a total h/v/r score of 276, and labyrinth a has a total h/v/r score of 266. 4 Conclusion We have shown that integer programs can be used to arrange a supply of path-segment tiles into loops (Hamiltonian cycles) and labyrinths (Hamiltonian paths). When designing loops with our model, the user can include constraints that force in desired symmetries and can use the objective function to find the loops that have the most bends (or the least bends). When designing labyrinths, the user cannot force in symmetries, but can strive for closeness to symmetry via an objective function that counts instances of symmetries. In other words, we have shown that integer programs can be used for searching through the set of all loops and labyrinths. We can reduce the size of the sets by including constraints that eliminate unwanted elements (non-symmetric loops, for example). And through our choice of an objective function, we can focus our search in a desired direction (for example, towards the bendy portion of the set of loops or towards the almost rotationally symmetric portion of the set of labyrinths). We have not shown, nor have we attempted to show, that integer programs are the best tool (or a best tool) for this task. 5 Acknowledgments We thank the anonymous reviewers for their constructive feedback. References [1] R.A. Bosch, Constructing domino portraits, in Tribute to a Mathemagician, ed. B. Cipra et al., A.K. Peters, 2004, 251-256. [2] R. Bosch. Opt art. Math Horizons, February 2006, 6-9. [3] R. Bosch. Edge-constrained tile mosaics. In Bridges Donostia: mathematical connections in art, music, and science, pages 351-360, 2007. [4] R. Bosch. Connecting the dots: the ins and outs of TSP Art. In Bridges Leeuwarden: mathematical connections in art, music, and science, pages 235-242, 2008. [5] R. Bosch. Simple-closed-curve sculptures of knots and links. Journal of Mathematics and the Arts. 4(2):57-71, 2010. [6] R. Bosch and A. Pike. Map-colored mosaics. In Bridges Banff: mathematical connections in art, music, and science, pages 139-146, 2009. [7] D.-S. Chen, R.G. Batson, and Y. Dang. Applied Integer Programming: Modeling and Solution, Wiley, 2010. [8] G. Dantzig, R. Fulkerson, and S. Johnson. Solution of a large-scale traveling-salesman problem. Operations Research, 2:393-410, 1954. [9] C.S. Kaplan and R. Bosch. Operations research in the visual arts. In Wiley Encyclopedia of Operations Research and Management Science, Wiley, 2010. [10] L. Wolsey, Integer Programming, Wiley-Interscience, 1998. 126