ADDRESSING AND DISTANCES FOR CELLULAR NETWORKS WITH HOLES

A thesis submitted to Kent State University in partial fulfillment of the requirements for the degree of Master of Science

by

Robert Allan Harbart

August 2009 Thesis written by

Robert Allan Harbart

B.S., Kent State University, 2004

M.S., Kent State University, 2009

Approved by

Dr. Feodor F. Dragan, Advisor

Dr. Robert Walker,Chair, Department of Computer Science

Dr. John Stalvey, Dean, College of Arts and Sciences

ii TABLE OF CONTENTS

LIST OF FIGURES ...... v

LIST OF TABLES ...... xii

Acknowledgements ...... xiii

Dedication ...... xiv

1 Introduction ...... 1

2 Previous Work and Our Problem ...... 6

3 Solution For Routing And Location Update With A K-disc Hole ...... 12

3.1 Creating a Cut ...... 14

3.2 Lemma 1 ...... 17

3.3 Lemma 2 ...... 25

3.4 Create the Four Region / Four Cut graph ...... 29

3.5 Theorem 1 ...... 34

4 Extension To Any Single Convex Hole ...... 39

4.1 General forms of convex holes ...... 41

4.2 Expansion Method ...... 44

4.3 Creating convex shapes with the Expansion Method ...... 51

4.4 Applying Theorem 1 to a convex shape hole ...... 54

iii 5 Possible Extension To Graphs With A Few Convex Holes ...... 57

5.1 Case 1 - Cuts do not intersect another hole ...... 58

5.2 Case 2 - Cuts do intersect the second hole ...... 62

5.3 Case 3 - Chaining holes ...... 70

5.3.1 A two hole graph ...... 71

5.3.2 A three hole graph ...... 76

5.3.3 A four hole graph ...... 80

6 Conclusion ...... 86

7 References ...... 89

iv LIST OF FIGURES

1 A view of a cellular network as a triangular system...... 2

2 The hexagonal system view of the network...... 3

3 The dual graph (trigraph) system view of the network...... 3

4 The process of paging outward...... 7

5 A triangular system, producing three trees with isometric embedding. . . 9

6 A network graph decomposed into four sub-graphs, each without a hole. . 10

7 Hexagonal structure...... 12

8 Triangular structure...... 12

9 Example of a 2-disc hole...... 13

10 General convex hole...... 13

11 Cuts start with choosing an arbitrary edge of the hole...... 14

12 Cuts contain all nodes in a perpendicular line until reaching a terminal

node...... 15

13 Example of a graph with a cut...... 15

14 An opposite cut will be created parallel to the first cut...... 16

15 The cuts must be equal distance apart in either direction...... 16

16 Both cuts and the hole create two partitions in the graph...... 17

17 Two nodes found in the same partition...... 17

18 Path found without crossing any cuts...... 18

19 Paths found when using cuts...... 18

v 20 This path can be shortened without crossing a cut...... 19

21 This path can also be shortened without crossing a cut...... 19

22 Two nodes found in alternate partitions...... 19

23 Paths found when using minimal cut crossings...... 20

24 Paths found using multiple cut crossings...... 20

25 Paths can be shortened by reducing the number of cut crossings...... 21

26 Paths can also be shortened by reducing the number of cut crossings. . . 21

27 Returning to the previously designed partition graph...... 22

28 The second pair of cuts will be perpendicular to the first pair of cuts. . . 22

29 All cuts will be an equal distance apart from those adjacent to them. . . 23

30 When the (A) edge is chosen on one side the (B) edge must be chosen on

the alternate side of the hole...... 23

31 A second two partition graph by cut3, cut4, and the hole...... 24

32 Combining both two partition graphs results in a Four Cut / Four Region

graph...... 24

33 The Four Cut / Four Region graph...... 24

34 Two nodes are found within the same region...... 25

35 Two nodes are found in adjacent regions...... 25

36 Two nodes are found in opposite regions of the graph...... 26

37 Using a Lemma 1(B) composite to solve Case C...... 26

38 Application of Lemma 1(B) on the cut1 and cut2 partition graph. . . . . 27

39 Application of Lemma 1(B) on the cut3 and cut4 partition graph. . . . . 27

40 Recalling the general graph with hole...... 28

vi 41 Decomposition of the original graph...... 28

42 Two Cut / Two Partition graph...... 29

43 Sub-graphs G1 and G2...... 29

44 Two sub-graphs lack some node pairs...... 30

45 Using a third cut returns a path for the node pair...... 30

46 Selecting non-perpendicular cuts...... 31

47 Both cuts sever the shortest path...... 31

48 Shortest path crossing two cuts...... 31

49 This is the collection of the four sub-graphs...... 31

50 Sub-graph composite of Four Cut / Four Region graph...... 32

51 A shortest path placed into the Four Cut / Four Region graph...... 32

52 The shortest path does not cross cut1 or cut3...... 33

53 Completely labeled Four Cut / Four Region graph...... 33

54 Two nodes are found within the same region...... 34

55 Two nodes are found within adjacent regions...... 34

56 Two nodes are found within opposite regions...... 35

57 Shortest path must cross one horizontal cut...... 35

58 Shortest path must cross one vertical cut...... 35

59 One node in a cut, the other within an opposite region...... 36

60 One node in a cut, the other within an adjacent region...... 36

61 Two nodes within the same cut...... 37

62 Two nodes within adjacent cuts...... 37

63 Two nodes within opposite cuts...... 38

vii 64 Differences between convex and isometric shapes...... 39

65 An isometric shaped hole ...... 40

66 Isometric shaped hole with two cuts...... 41

67 Isometric shaped hole with four cuts...... 41

68 A shortest path crossing all four cuts...... 41

69 K-disc structure hole ...... 42

70 Rectangle structure hole ...... 42

71 Square structure hole ...... 43

72 Pyramid structure hole ...... 43

73 Trapezoid structure hole ...... 43

74 Understanding the orientation of expansion hexagons...... 44

75 Basic convex expansion...... 45

76 Convex expansion with left terminal hexagon...... 45

77 Convex expansion with right terminal hexagon...... 45

78 Convex expansion with left and right terminal hexagons...... 46

79 Single line graph ...... 46

80 The results of all expansions on a single line graph...... 46

81 Increasing line graph ...... 47

82 The results of all expansions on an increasing line graph...... 47

83 Decreasing line graph ...... 48

84 The results of all expansions on a decreasing line graph...... 48

85 Constant line graph ...... 49

86 The results of all expansions on a decreasing line graph...... 49

viii 87 Expansion legend...... 51

88 K-disc structure...... 51

89 Rectangle structure...... 51

90 Square structure...... 52

91 Pyramid structure...... 52

92 Trapezoid structure...... 52

93 Random convex structure 1...... 53

94 Random convex structure 2...... 53

95 Random convex structure 3...... 53

96 Two cut graph for a rectangle...... 54

97 Four cut graph for a rectangle...... 54

98 Two cut graph for a square...... 54

99 Four cut graph for a square...... 54

100 Two cut graph for a four-degree pyramid...... 55

101 Four cut graph for a four-degree pyramid...... 55

102 Two cut graph for a trapezoid...... 55

103 Four cut graph for a trapezoid...... 55

104 Two cut graph for a two-degree pyramid...... 55

105 Four cut graph for a two-degree pyramid...... 55

106 Two cut graph for a three-degree pyramid...... 56

107 Four cut graph for a three-degree pyramid...... 56

108 Two cut graph for a five-degree pyramid...... 56

109 Four cut graph for a five-degree pyramid...... 56

ix 110 Two cut graph for a six-degree pyramid...... 56

111 Four cut graph for a six-degree pyramid...... 56

112 A general two hole graph...... 58

113 Case for choosing the larger hole...... 59

114 Four sub-graphs created from a unique cut from the chosen hole...... 60

115 Sixteen sub-graphs created by combinations of perpendicular cuts for each

hole...... 61

116 Again a general two hole graph...... 63

117 Reasoning for connecting the smaller hole to the larger hole...... 64

118 Explanation for why only two cuts are needed...... 65

119 Various methods for connecting two holes of the same size...... 66

120 Method for connecting two holes of the same size...... 66

121 Constructing the remaining perpendicular cuts...... 67

122 Example of how a set of perpendicular cuts can miss another hole. . . . . 68

123 Method for connecting two holes of the same size...... 68

124 A general two hole graph...... 71

125 Considering a two hole graph as a two partition graph...... 72

126 All cuts that comprise the partitions of the two hole graph...... 72

127 The collection of various decomposed sub-graphs...... 73

128 Composite graph labeling all regions...... 74

129 Composite graph labeling all cuts...... 75

130 A general three hole graph...... 76

131 Considering a three hole graph as a two partition graph...... 76

x 132 All cuts that comprise the partitions of the three hole graph...... 77

133 The collection of various decomposed sub-graphs...... 77

134 Composite graph labeling all regions...... 78

135 Remembering the composite graph labeling all cuts...... 79

136 A general four hole graph...... 80

137 Considering a four hole graph as a two partition graph...... 80

138 Consideration of diagonal partitions...... 81

139 All cuts that comprise the partitions of the four hole graph...... 81

140 The collection of various decomposed sub-graphs...... 82

141 Composite graph labeling all regions...... 83

142 Composite graph labeling all cuts...... 84

xi LIST OF TABLES

1 Region Table for a two hole graph...... 74

2 Cut Table for a two hole graph...... 75

3 Region Table for a three hole graph...... 78

4 Cut Table for a three hole graph...... 79

5 Region Table for a four hole graph...... 83

6 Cut Table for a four hole graph...... 84

xii Acknowledgements

I would like to thank all the people who have supported me as I completed this program.

I want to thank my parents, Ray and Carol, who supported and believed in me. I also want to thank Allyson for always being there for me, and who fortunately enjoyed being in as much as I did. I thank you all for never giving up hope that one day I would finish my graduate degree and have time to see all of you again. Thank you for pictures they helped me remember your faces.

I would also like to thank my advisor, Dr. Feodor Dragan, for his guidance and patience. His support and respect has made this an enjoyable experience for me.

There are a number of others who knew this was important to me and offered en- couragement in many ways. I can not thank you all enough for being a part of my life; you all have helped to created a positive atmosphere around everything I did.

Rab Harbart

In the summer of 2009

xiii This thesis is dedicated to the completion of my Master’s Degree.

xiv CHAPTER 1

Introduction

With the advent of technology people have become more interconnected than ever before. Businesses and individuals have become more dependent on wireless mobile com- munication devices during everyday use. From students without land lines (residential phone service) to business executives or department managers with PDAs (personal data assistants), more and more people are beginning to rely on wireless technology as their main form of communication. As a means to facilitate the needs of these mobile users, cellular communication networks were constructed. These networks offer connectivity for the users’ mobile devices when acting as a registered element of the cellular network.

A cellular network is a system of interconnected base stations that are capable of effectively transferring information to users of devices throughout the network. A base station is a sub-component of a network and acts as a relay, broadcasting and receiving information between the mobile user and the network. In [9], Nocetti, et al. proposed that the structure of a cellular network can be re-asserted as a graph as seen in Fig.

1. Here nodes represent base stations; nodes are considered neighbors if they share an adjacent edge. The hexagons (or cells) surrounding the base stations (nodes) represent its broadcast radius. All edges of the hexagon are the diametric partition of the broadcast overlay between itself and the broadcast radius of one of the respective neighboring base stations. In [11], it is explained that this method of edge construction that makes the

1 2 use of hexagons ideal. There are no gaps formed between the hexagons and their shapes closely approximate a circle.

Figure 1: A view of a cellular network as a triangular system.

The area of the hexagons, further more referred to as cells, act as a container of influence for all mobile users, such that the network will register each user to the base station centralized to the cell at which the mobile user currently resides. The collection of cells that make up the entire broadcast perimeter and encapsulated network base stations cells is called a hexagonal system and is represented as in Fig 2. Neighboring base stations (or nodes) are connected by an edge if their hexagons share a common side. This property allows us to create a dual graph (or trigraph) to represent this interconnectivity of base stations as seen in Fig 3. This graph structure is called a triangular network because the inner regions of the graph have triangular faces. This construction gives a cellular communication network a graph structure which allows for a more computational approach to routing through the use of graph theory.

Recently, as these cellular communication networks have continued to proliferate, not 3

Figure 2: The hexagonal system view of the network.

Figure 3: The dual graph (trigraph) system view of the network. 4 only in number but also in size, there has become a more pressing demand to develop a rigorous and accurate system of routing. This routing system will need to reduce the amount of time required to successfully transfer data from source to destination as well as dynamically adapt to redirection during transmission. Having an effective routing system requires an accurate and frequently maintained database containing the locations of all network devices. This requires that all mobile devices on the network have their locations updated routinely. Routing in cellular communication networks can be difficult based on the limitations of the mobile devices and the base stations that make up the network.

This is because most devices have a limited amount of memory and power supply in which to operate and that the base stations need to retain a low processing overhead to be able to connect users’ mobile devices in the event of an incoming or outgoing call. Because the base stations should not perform this needed computation (to reduce overhead), what is needed is a method for routing that will have the least cost and can accommodate the limited resources of the mobile devices on the network. This method in effect takes on a cluster computing approach where the location computation is distributed and performed by the network device itself to reduce taxing the performance of the base stations.

But with the advances and affordability of personal communication devices in recent years, wireless technology has become more prevalent in society. Networks have become larger and more complex in an effort to keep up with the demands of user support.

As these networks increase in size, more base stations are added and the network is further stretched. Because the size and breadths of cellular networks are increasing they can no longer limit themselves by geography. As cellular communication networks have continued to expand they are now growing around and adapting to various geographic 5 obstacles. Lakes, mountains, historical sites, and other natural and man made obstacles, that prevent the positioning of base stations, result in the creation of gaps that can significantly complicate currently practiced routing methods, most often resulting in a poorly chosen routing path. To compensate for the variations in these modern network topologies a new method will need to be designed to handle cases in which a hole is present in the network graph.

There has been significant work in the area of labeling, addressing and routing for cellular networks. This work, however, has mostly focused on networks that do not contain any holes. Because of the complications created by introducing holes into a network graph, a new method will need to be designed that will produce an accurate routing path that is the shortest distance between the source and destination nodes.

Here in this paper we offer an approach to handling cellular communication networks with holes that are disc shaped and then more generally to holes with any convex shape.

From this method we will also address the open problem of handling multiple holes in a cellular communication graph and analyze the performance of a few alternate approaches. CHAPTER 2

Previous Work and Our Problem

With a user base for wireless technology that is ever increasing, cellular communi- cation networks have continued to expand and become more intricate in structure and design. It is this growth and expansion, needed to maintain user support, which has caused the communication networks to develop around natural and man-made geograph- ical structures in an effort to cover as much area as possible. Though this is desirable for maximal coverage and support for a large user base it has the adverse effect of compli- cating the transmission of data accurately and successfully throughout the network. As a network is constructed in a manner to circumvent obstacles that impede the consistent placement of base stations it creates gaps within the network topology. These gaps create an ambiguity when determining the shortest path between two base stations, as routing algorithms will have to contend with a choice of direction around the network gap.

Mobile users are associated with a specific base station that is used for the purpose of routing data to them within the network. This base station can be where the user currently resides or it is a base station within a pre-determined distance threshold from the previously registered location. This association to a specific base station offers the routing algorithm a destination in the cellular communication network for determining the shortest path of data transmission. In [9], Nocetti, et al. explain that in the event that the user is not located in the base station to which it was last registered, call it node D, the surrounding base stations will be paged in an effort to find the cell in which

6 7 the mobile device is residing. Shown in Fig 4, the paging process is done by querying the adjacent base stations to the mobile device’s last know location, node D. Nocetti, et al. further explain that paging continues moving outward from base station D till either the mobile device is located or all base stations within a pre-determined paging threshold have been queried. Here the paging threshold is the distance of the shortest path between base station D and any of the surrounding base stations.

Figure 4: The process of paging outward.

Routing in a cellular communication network can be difficult because as mobile users move between base stations they will need to re-register their new position with the network. An accurate and updated database containing the locations of all mobile devices is necessary for maintaining an effective routing method. In [1], Bar-Noy, et al. suggested three methods of location updating. These suggestions are based on time (after a set interval of time), movement (after a set number of hexagonal edge crossings), and distance

(after having moved a set number of hexagons away from the last updated location). The distance between any pair of nodes is measured by determining the shortest path between those nodes in the triangular system. It has been stated in [1] that distance-based location 8 updating is more efficient and will therefore be the basis of this summary of previous work as well as the contributions found later in this paper.

In [9], Nocetti, et al. explain that to maintain an effective location management system it will require two operations; location updating, which will need to be performed by the mobile devices, and paging, which will be handled by the communication network.

This method for determining location updating needs to be efficiently performed by the mobile device, since continuously requesting distance computations from the local base station would greatly reduce its ability to handle incoming and outgoing calls. Using this distance based update method allows the mobile devices to be able to more efficiently compute the distance traveled from the last registered base station. Additionally, this method can be accomplished without requiring too much computational effort so that it may be performed under the resource constraints of the mobile devices.

When considering routing and location update for wireless networks, an efficient la- beling and addressing scheme needs to be designed. In [3], Chepoi et al. have found that a cellular network graph can be decomposed into three trees with the isometric em- bedding for the position of each base station in the network that, in combination form a Cartesian product, will identify a unique location in the graph. This can be seen in

Fig. 5 from [3] where each tree represents one of the edge directions (horizontal, forward diagonal, and backward diagonal) available at any of the nodes in the triangular system.

This method offers each node an addressing schema that is comprised of no more than three numerical values, each of which correlate to its position on each of the three directional planes (isometric trees). When these positions are placed through a transform function they will give the node’s unique address in the network. In [2], Chepoi, et al. 9

Figure 5: A triangular system, producing three trees with isometric embedding. show also that for any triangular system containing n number of vertices the distance label size for each vertex (base station) will be no larger than O(log2(n)). When the local base station routinely broadcasts its distance label the mobile devices will then determine whether or not to update. The mobile devices will compute the shortest path distance from its current position, offered by the base station, to the location that it last registered as its position to the communication network. Finding the shortest path distance is done using a distance computation on each of the embedded trees, as described in [3], which allows the mobile devices to compute the distance they have traveled in constant time and without any other information from the communication network. By retaining the three-digit address that represents the last registered network position and its distance label, the mobile device can determine when it has exceeded the distance threshold and needs to update its location.

The above method offers a very efficient routing and location update algorithm for 10 cellular communication networks that are hole-free. When a hole is introduced into the graph then one or more of the trees will develop a cycle in their structure. This cycle would make it impossible to run the algorithm of [3] on the isometric embeddings. Using the isometric nature of the graphs allows the embedded trees to be accurately traversed for shortest path computation regardless of node location in the network.

In this paper we will present a method for decomposing a network graph with convex holes into no more than four sub-graphs that will not have any holes present, such as in

Fig. 6. These sub-graphs will be shown to have been constructed in a manner that will cumulatively maintain all shortest paths that are present in the original graph. With the use of these sub-graphs it will then be possible to apply the existing method from

[3], where each sub-graph will generate three isometric embedded trees. Each set of three trees will be used to find the shortest path between any two nodes. Because of the physical difference between the sub-graphs the lengths of the shortest paths from each sub-graph will be compared. The shortest path of the four sub-graphs will then be applied to the routing and location update procedures in the original network.

Figure 6: A network graph decomposed into four sub-graphs, each without a hole. 11

This proposed method of graph decomposition shows that a linear solution can be used to eliminate the problems that arise for routing and location update when convex shaped holes are present in a cellular network. This method will also be shown to robustly handle other holes that are convex in nature. We will also discuss the open problem when graphs have multiple holes, offering a few approaches to this problem and evaluating them. CHAPTER 3

Solution For Routing And Location Update With A K-disc Hole

In this paper we will show that a graph which represents a triangular cellular com- munication network with a hole can be decomposed into a series of four sub-graphs that collectively maintain, in at least one sub-graph, the shortest path between any two vertices that are found in the original graph.

Throughout the following sections two different sets of terminology will be used;

I. When referencing hexagons and nodes the hexag- onal structure will be used.

Figure 7: Hexagonal struc- ture.

II. When referencing embedded trees and vertices the triangular structure will be used.

Figure 8: Triangular struc- ture.

12 13

Here a given graph G, which is a triangular cellular communication network with a hole, can be graphically represented as this picture where the central void is the hole, or absent base stations (nodes).

Figure 9: Example of a 2-disc hole.

For this paper a hole will be defined as any sub-graph H of a triangular system G

which is convex, that is for any x, y V (H),d (x, y)=d (x, y) ∈ G H

Figure 10: General convex hole.

We will now introduce and define what a cut is and detail cut creation. These cuts

will be used in later methods to remove the hole from a network graph to compute the

shortest path. This proposed method for removing the hole in the graph is a uniform

process of decomposing the original graph into sub-graphs. These sub-graphs do not

contain any holes by making cuts in the original graph which extend from the hole to a

terminal node at the boundary of the graph. 14

A cut is a chain of nodes in which the starting node of the cut is located in a hexagon with an edge that is part of the boundary of the hole. This chain of nodes will continue through the graph until an external node is reached, this path traverses the hexagons by exiting through the edge parallel to the edge from which it entered the hexagon.

3.1 Creating a Cut

The following is a description of the cut creation process. It describes the method of cut creation as well and the topological purpose of the orientation of one cut to another.

i) Given a hole in a network graph, Fig. 9, which has surrounding nodes and hexagons that comprise the rest of the network graph, the cut creation process will be initiated by selecting one of the hexagon edges that border the hole. The node inside the hexagon attached to that edge will be the node that starts the chain of nodes that form the cut.

Figure 11: Cuts start with choosing an arbitrary edge of the hole.

Fig. 11 shows the selection of an edge and the node chain that is intended to be our

cut. We know these nodes will be a part of the cut chain because the cut is comprised

of nodes in a linear sequence. 15

ii) Taking the initial edge, a perpendicular line can then be drawn through the edge intersecting any nodes until it comes to an external node. All nodes intersected by the perpendicular line will comprise the cut.

Figure 12: Cuts contain all nodes in a perpendicular line until reaching a terminal node.

Maintaining all (x, y) shortest paths that are present in the original graph will be − explained in further detail later, but for now it will suffice to say that this sub-graph, Fig.

13, does not represent all nodes found in the original graph. Namely, all nodes that are

part of this first cut are not present and therefore not available for distance computation.

Figure 13: Example of a graph with a cut.

iii) To maintain the presence of all nodes from the original graph and all (x, y) − shortest paths that would cross this cut, a second graph will need to be created. This

second graph will ensure that collectively all nodes will be present in at least one sub-

graph. This second graph will be created by finding an edge opposite to cut1 (half the 16 perimeter away) and beginning an outward cut starting with its corresponding node to a terminating node on the outer boundary of the graph.

Figure 14: An opposite cut will be created parallel to the first cut.

iv) The total number of edges for any k-disc hole will be even, therefore to find the alternate edge to create a complimentary cut, one must count the total number of edges around the hole subtracting the edge of the initial cut. From that count, choose the middle edge for cut2.

Figure 15: The cuts must be equal distance apart in either direction.

With the second cut found we can create a Two Part / Two Cut graph as seen in

Fig. 16. Given G with a hole, consider two opposite cuts and two parts P1, P2 which are created by those cuts where the hole and the two cuts create a solid partition through the middle of the graph.

In the realm of parts, and later as we will describe regions, we will use the nodes of 17

hexagons to describe x and y. This is because cuts are chains of nodes that principally

exist only in the hexagonal graph, while vertices are native to the trigraph.

Figure 16: Both cuts and the hole create two partitions in the graph.

3.2 Lemma 1

Recall that the shortest paths between nodes are considered in the triangular system.

Lemma 1: For any two nodes located within parts, the shortest path between them will not cross more than one cut.

Case A) x, y P (i =1, 2) If x, y P (i =1, 2) then any (x, y) ∈ i ∈ i − shortest path is entirely in Pi too.

Figure 17: Two nodes found in the same par- tition. 18

(i) An (x, y) shortest path taken will resemble this pattern. −

Figure 18: Path found without crossing any cuts.

(ii) It will not cross a cut into the part without the destination node only to recross the same or alternate cut in order to return to the original part it was previously in as shown in these pictures.

Figure 19: Paths found when using cuts.

The reason why the paths in Case A (ii) are not an (x, y) shortest path is because − the process of crossing the same or alternate cut can be eliminated and shown to reduce the distance while still maintaining the cumulative result of the path. Thus proving the path need not cross a cut if x and y are in the same part.

The path in Fig. 19 image A can be reduced by remaining on the initial side of the 19 cut. This shows that the path is made shorter, not by crossing the cuts but instead by traversing along the cuts and hole.

Figure 20: This path can be shortened without crossing a cut.

The path in Fig. 19 image B can also be reduced by remaining on the initial side of the cut. This shows that the path is made shorter, not by crossing the cut but instead by traversing along the edge of the cut.

Figure 21: This path can also be shortened without crossing a cut.

Case B) x P ,y P If x P ,y P then any (x, y) short- ∈ 1 ∈ 2 ∈ 1 ∈ 2 − est path crosses only one cut (either cut1 or cut2)

Figure 22: Two nodes found in alternate parti- tions.

(i) Again an (x, y) shortest path would resemble either images in Fig. 23. − 20

Figure 23: Paths found when using minimal cut crossings.

(ii) The shortest path will not cross the cuts three times (one cut crossed twice) like the paths in Fig. 24.

Figure 24: Paths found using multiple cut crossings.

The paths found in Case B (ii) however can be reduced in distance by eliminating the unnecessary cut crossings. Similar to the reasoning in Case A) of Lemma 1; if the path crosses a cut and then recrosses to the side it originally came from, then the crossing of the cuts can be omitted and an (x, y) shortest path can be constructed without crossing − that cut.

In the following figures it is seen that these paths can be reduced by traversing the edge of the cut and remaining in the same part (not crossing the cut) if there existed another cut crossing over the same cut where the path will be returning to a previously visited part, P1 or P2. 21

Figure 25: Paths can be shortened by reducing the number of cut crossings.

Figure 26: Paths can also be shortened by reducing the number of cut crossings.

Removing the duplicate cut crossing will invoke the removal of a second cut crossing

that originally returned the path back to the part it previously visited. This process

brings the number of cut crossings from three to one and shows that if x and y are in separate adjacent parts then only one cut crossing is required to find the shortest path between them.

This shows that the path is made shorter by traversing the edge rather than crossing and recrossing the same cut.

Building offof Lemma 1, we will soon show, through the application of Lemma 2, that any (x, y) shortest path of the original graph can be found within four unique − sub-graphs. But first we shall offer some information about creating two additional cuts which will be perpendicular to cut1 and cut2 , namely cut3 and cut4, these cuts will be used later to create the third and fourth sub-graphs. 22

We will now introduce a method for creating cut3 and cut4 on a vertical plane which will be perpendicular to the plane created by cut1 and cut2.

To begin the construction of cut3 and cut4 we will continue from the above described method for creating two cuts in a graph containing a hole. With this Two Part / Two

Cut graph, from Fig. 27, we will add the additional cuts, cut3 and cut4, to construct a

Four Cut / Four Region graph that will be used in the explanation and proof of Lemma

2.

Figure 27: Returning to the previously designed partition graph.

From Fig. 27, we continue by taking into consideration the count of the edges around the hole and the locations of the edges which are already a part of cut1 and cut2. We will need to find the edges of the entire hole which will create a pair of cuts that are perpendicular to the partitioning line created by cut1 and cut2.

Figure 28: The second pair of cuts will be perpendicular to the first pair of cuts.

This is done by counting the number of edges between cut1 and cut2 on one side of the 23

hole (Edgecut1+1 to Edgecut2 1) and then separately again on the other side (Edgecut2+1 −

to Edgecut1 1). The edge used to create the cut between the original two cuts will be the − central edge (if the edge count is odd) or a choice out of two central edges (if the edge

count is even) on each side of the hole.

Figure 29: All cuts will be an equal distance apart from those adjacent to them.

If the edge count between cut1 and cut2 is even then for whichever central edge is chosen (A or B) the alternate edge (B or A) must be chosen to the other side.

Figure 30: When the (A) edge is chosen on one side the (B) edge must be chosen on the alternate side of the hole.

The cuts that were just created, cut3 and cut4, can be applied to an individual graph

where they are the only two cuts present. This will create a Two Part / Two Cut graph

that will resemble a vertical transformation of Fig. 27, as seen in Fig. 31.

When the two additional cuts, cut3 and cut4, are extended to their respective termi-

nating external nodes within the same graph where cut1 and cut2 are present the result

is a graph with four cuts and four parts. These four parts will now be referred to as 24

Figure 31: A second two partition graph by cut3, cut4, and the hole. regions.

This Four Cut / Four Region model can also be considered the combination of two sub-graphs. This distinction is important as it allows one to visually understand the application of Lemma 1 on the graph twice when considering the creation of a shortest path.

Figure 32: Combining both two partition graphs results in a Four Cut / Four Region graph.

The graph structure containing four regions and four cuts will be used in Lemma 2.

Figure 33: The Four Cut / Four Region graph. 25

3.3 Lemma 2

Lemma 2: For any two nodes located within regions, the shortest path between them will not cross all four cuts.

With the Four Cut / Four Region graph we can now assert Lemma 2 and show that no two nodes will have an (x, y) shortest path that crosses all four cuts by explicitly − considering all possible cases.

Case A) x, y Ri This is the case in which both x and ∈ y are located in the same region.

Figure 34: Two nodes are found within the same region.

This case is covered by Lemma 1(A). The same principle applies, that no cut will be crossed, since the nodes are in the same area.

Case B) x Ri,y Ri+1 This is the case in which both x and ∈ ∈ y are located in adjacent regions.

Figure 35: Two nodes are found in adjacent regions.

This case is also covered by Lemma 1(A), consider x and y to be located in the upper 26 partition of the graph. Then there is no need for an (x, y) shortest path to cross into − the lower partition. The result is that the shortest path will only cross the cut dividing the upper partition; hence the shortest path only crosses one cut.

Case C) x Ri,y Ri+2 These are the cases in which both x ∈ ∈ and y are located in regions that are diametrically opposite each other with respect to the hole.

Figure 36: Two nodes are found in opposite regions of the graph.

If the nodes are in regions of the graph opposite to each other from the hole (two regions away), then an (x, y) shortest path will cross one cut into the region between − the regions where x and y separately reside and then cross a second cut into the region where the destination node is located.

This case can allow Lemma 1(B) to aid in the explanation. Assume m to be a point in the region known to be between the regions that x and y separately reside in. m is known to be closer to y than x and not in the same region as x or y. Now we can construct the proof using the method of adjacent parts in Lemma 1(B).

Figure 37: Using a Lemma 1(B) composite to solve Case C.

Combining the results of the two previous decomposed steps we are given a total of two cut crossings, for a pair of nodes which are located in regions of the graph opposite 27

to each other with respect to the hole.

Traveling from x to m will cause the path to cross one cut. The shortest path between x to m and m to y is optimal and crosses at most one cut (as shown by Lemma 1)

Figure 38: Application of Lemma 1(B) on the cut1 and cut2 partition graph.

To complete the path from x to y the path must resume from m to y by also using the adjacent parts principle from Lemma 1(B) which results in crossing one cut.

Figure 39: Application of Lemma 1(B) on the cut3 and cut4 partition graph.

Cumulatively the result of all cases prove Lemma 2, that no pair of nodes will have

a shortest path that crosses all four cuts. In fact for this construct, where there is a

centralized k-disc hole and four regions, the maximum cut crossing is two.

We will now establish the sub-graphs of G in unique creation and in purpose for the

validation of our theorem. Returning to the visual representation of the cellular network

with a hole that looks like: 28

Figure 40: Recalling the general graph with hole.

The graph G can be divided into sub-graphs which will collectively maintain all

(x, y) shortest paths in the original graph. Each cut will alter the original graph − and create a subgraph without a hole. There will be four sub-graphs needed for the

decomposition of G to guarantee that all (x, y) shortest paths from the original graph − will be preserved. We again introduce the naming scheme by this equation G = G cut i − i as the sub-graphs will begin to be referenced individually.Ideally the visual concept is shown as this design, Fig. 41, where Gi for i =1, ..., 4 will have no holes but cumulatively maintain all shortest paths found in the original graph G.

Figure 41: Decomposition of the original graph.

These sub-graphs (collectively) allow traversal through G without the complication 29 of the hole.

3.4 Create the Four Region / Four Cut graph

Here we will systematically create the Four Region / Four Cut graph and explain why it is needed.

1. We will create the first two sub-graphs with the same cut method explained earlier but instead of a graph with two cuts such as:

Figure 42: Two Cut / Two Partition graph.

We will create two sub-graphs where each graph has only one of the unique cuts.

Figure 43: Sub-graphs G1 and G2.

2. This does not collectively represent all node pairs however. To take into account the nodes that are comprised of the first two cuts another set of cuts will need to be made to evaluate the distances of paths beginning or terminating at any of the nodes located within those cuts. These additional cuts will leave the nodes from cut1 and cut2, 30

which must be present at the same time, in the same sub-graphs.

Problem

Figure 44: Two sub-graphs lack some node pairs.

This problem shows that there are situations where not all node pairs will be present

at once when only using two sub-graphs. The solution to avoid this situation during

the routing computation is the introduction of a third and fourth sub-graph with cuts

perpendicular to cut1 and cut2.

Solution

Figure 45: Using a third cut returns a path for the node pair.

Now the nodes of cut1 and cut2 are present together. Since the cut in the third graph will be perpendicular to cut1 and cut2 it may still sever some of the shortest paths between any x and y. Though this may happen, creating cut sets which are perpendicular to each other is still the best approach. This is because cuts made in a non-perpendicular order will sever the shortest path for node pairs with multiple cuts, thereby disturbing the conditions of the Lemmas. 31

Example: Consider these cuts

Figure 46: Selecting non-perpendicular cuts.

Here in Fig. 47, the problem is that these sub-graphs sever the shortest path, and cause the shortest path to unnecessarily cross two cuts, as in Fig. 48.

Figure 47: Both cuts sever the shortest path. Figure 48: Shortest path crossing two cuts.

This method does not allow for the symmetry used in Lemma 1 and Lemma 2. For

this reason we choose cuts in a perpendicular layout. To correct the severing of shortest

paths by cut3, another cut complimentary to cut3 , will be created. Cut4 will be created

as a compliment cut to cut3 in the same manner that cut2 was created to compliment

cut1.

3. We will now have four sub-graphs:

Figure 49: This is the collection of the four sub-graphs. 32

Once again it can be seen that we can sum these sub-graphs together and visualize that the overlay product is the Four Cut / Four Region graph.

Figure 50: Sub-graph composite of Four Cut / Four Region graph.

Through Lemma 2 it has been shown that no two nodes have an (x, y) shortest path − that crosses all four cuts. Knowing this it then holds that all paths are maintainable and

that the sub-graph in which an (x, y) shortest path is maintained can be derived from − the cuts that are not crossed by the shortest path.

Example: x to y must cross cut2 and cut4

Figure 51: A shortest path placed into the Four Cut / Four Region graph.

Then we can assume a graph with cut1, G1, and a graph with cut3, G3, will maintain

the shortest path. 33

Figure 52: The shortest path does not cross cut1 or cut3.

Here we see that G1 and G3 do maintain the shortest path.

In this next section, sub-graphs will be referred to by name and complete graph ex- amples will have the structure of G:

Figure 53: Completely labeled Four Cut / Four Region graph. 34

3.5 Theorem 1

Theorem 1: For any x, y G i =1, 2, 3, 4 such that d (x, y)=d (x, y) ∈ ∃ G Gi

Here a method will be shown that handles all possible cases where x, y G ∈

Case A) x Ri, y Ri Rj These are the cases in which both x and y ∈ ∈ ∪ are located in regions.

Case A)(i) x, y R In this case we can use Lemma ∈ i 1(A) and for this example G1, G2, G3, and G4 are acceptable.

Figure 54: Two nodes are found within the same re- gion.

Case A)(ii) x Ri, y Ri+1 In this case we can use Lemma ∈ ∈ 1(A) or 1(B) and for this exam- ple G1, G2, and G4 are accept- able.

Figure 55: Two nodes are found within adjacent re- gions. 35

Case A)(iii) x R , y R For this case Lemma 2(B) is ap- ∈ i ∈ i+2 plicable, indicating that Gi, i = 1, 3 or i =2, 4 are acceptable.

Figure 56: Two nodes are found within opposite re- gions.

Viewing this case after applying Lemma 2(B) twice one can see two sub-cases are produced. Based on the path taken only one sub-graph will be chosen from each sub-case.

Case A)(iii) sub-case 1: Here it can be seen that either G1 or G2 will maintain the shortest path (depending on the direction of the path)

Figure 57: Shortest path must cross one horizontal cut.

Case A)(iii) sub-case 2: Also dependent on the direction of the path we see that either G3 or G4 will be an acceptable choice.

Figure 58: Shortest path must cross one vertical cut. 36

Case B) x cuti, y Ri Ri+1 In these cases one of the nodes is presented ∈ ∈ ∪ in a cut while the other node is located in a region.

Case B)(i) x cut , y R R ∈ i ∈ i ∪ i+1

Figure 59: One node in a cut, the other within an opposite region.

If x cuti and y Ri 1 Ri+1 then we are in the conditions of Lemma 1(B) (under ∈ ∈ − ∪

consideration of cut3 and cut4) which then allows G1 and either G3 or G4 to be acceptable.

Case B)(ii) x cuti, y Ri 1 Ri+2 ∈ ∈ − ∪

Figure 60: One node in a cut, the other within an adjacent region.

If x cut and y R R then we are in conditions of Lemma 1(A) (under ∈ i ∈ i?1 ∪ i+2 conditions of cut3 and cut4) it is then seen that G1 and either G3 or G4 to be acceptable. 37

Case C) x cuti, y cuti cutj In these cases both nodes are located in a ∈ ∈ ∪ cut in the graph.

Case C)(i) x, y cut ∈ i

Figure 61: Two nodes within the same cut.

In this case we can apply Lemma 1(A) and in this example G1, G2, and G4 will be

acceptable choices.

Case C)(ii) x cut , y cut ∈ i ∈ i+1

Figure 62: Two nodes within adjacent cuts.

In this case we can apply Lemma 1(A) to preclude the suggestion of crossing unnec- essary cuts by instead traversing the edge of the cut that the node resides in. This means that the shortest path will not leave the cut in direction of the destination node which allows the shortest path to avoid crossing cut1 and cut4 making G1 and G4

acceptable choices. 38

Case C)(iii) x cut , y cut ∈ i ∈ i+2

Figure 63: Two nodes within opposite cuts.

In this case we are in the conditions of Lemma 1(B) (under the consideration of cut3 and cut4) which then allows either G3 or G4 to be acceptable choices.

Combining Theorem 1 of this paper with the previous work in [3], we are able to formalize corollaries to the theorems proposed by Chepoi, et al.

Corollary 1: Let G be a triangular system with n base stations and a k-disc hole.

There is an addressing scheme of G assigning twelve small digits to each base station, in

total O(n) number of operations, which will allow the nodes of G to be identified.

Corollary 2: Let G be a triangular system with at most n base stations and a k-disc

hole admits a distance labeling scheme with labels of size O(log2(n)) bits, with a constant

time distance decoder, while allowing this scheme to be constructible in time O(nlog(n)).

Corollary 3: Let G be a triangular system with at most n base stations and a k-disc hole admits a routing labeling scheme with labels of size O(log(n)) bits, with a constant

time routing decision, while allowing this scheme to be constructable in linear O(n) time. CHAPTER 4

Extension To Any Single Convex Hole

We will now expand the previously proposed method of graph decomposition from network graphs with a single k-disc hole to all network graphs with a single convex shaped hole. In this section we present a method for dealing with various forms of convex holes that will enable the application of the corollaries stated in the previous chapter. It will remain an open problem as to how network graphs containing an isometric shaped hole can be decomposed in a similar manner as we will show here for convex shape holes.

We will also offer as a point of interest a case where an isometric hole fails during this deconstruction method.

For clarification;

Convex holes are structures in which all the (x, y) shortest paths for all node pairs − are present within the hole (or sub-graph).

Isometric holes are structures where at least one of the (x, y) shortest paths for all − node pairs will be present in the hole.

Figure 64: Differences between convex and isometric shapes.

In image A of Fig. 64 the gray cells represent an isometric shape. If this shape were

39 40 to become convex it would need to contain all the (x, y) shortest paths for all node − pairs. In image B it can be seen that the distance of the (AXB) path is the same − length as the (AY B) path, therefore the (AXB) path will need to be added to form − − the convex shape. Similarly, the (CZD) path will also need to be added to complete − the convex shape seen in image C.

The properties of a convex shape lend themselves well to the decomposition method that we previously mentioned in Chapter 3, where as not all isometric shapes will conform to this method. Here we will offer one example that will show the incompatibility of isometric shapes.

Consider an isometric shaped hole in a cellular communications network such as the one in this picture.

Figure 65: An isometric shaped hole

By the decomposition steps introduced in Lemma 1 and Lemma 2 the resulting cuts will look like these.

The resulting cut formation in Fig. 67 creates a problem when applying the Lemmas.

Not all (x, y) shortest paths will avoid crossing all four cuts. − When considering the shortest path between the nodes S and D we can see that there are two shortest paths, one around each side of the hole. Between these two paths, the 41

Figure 66: Isometric shaped hole with two Figure 67: Isometric shaped hole with four cuts. cuts.

Figure 68: A shortest path crossing all four cuts. blue path is the shortest with the length of ten and crosses all cuts, while the red path has the length of eleven without crossing any cuts.

The Lemmas state that the shortest path will not cross all cuts. This allows there to be a sub-graph G = G cut that will maintain the (x, y) shortest path after graph i − i − decomposition to remove the hole. This example shows that another method will be required to decompose graphs with isometric holes and still preserve all (x, y) shortest − paths.

4.1 General forms of convex holes

In this section we will introduce and briefly describe the general convex shapes that are the minimal collection that make up the base group of shapes from which all convex 42

shapes can be derived. Because all other convex shapes can be viewed as subsets of these

structures it is important to understand the effects on the structure’s convexity when

expanding or reducing the number of hexagons in these shapes.

In the next section we will verify that these shapes are convex by constructing all of

them through an expansion method that guarantees the convexity of the shapes will be

preserved. Later, we will show that these shapes will adhere to the Lemmas, specifically

that cuts will be constructed in such a manner that no (x, y) shortest path will cross − all cuts in the graph.

(k-disc) This shape has been tested explicitly in the previous Lemmas.

Figure 69: K-disc structure hole

(rectangle) This shape will test if polygons created by connecting chains of equal length maintain convexity.

Figure 70: Rectangle structure hole 43

(square) This shape is an equilateral figure that could be seen as a convex sub-section of a rectangular figure.

Figure 71: Square structure hole

(pyramid) This shape is created with the expan- sion method (see below) in one direction from the chain and terminating at a sin- gle node.

Figure 72: Pyramid structure hole

(trapezoid) This figure is a sub-section of a pyra- mid, it could be created by the expan- sion method without terminating at a single node.

Figure 73: Trapezoid structure hole 44

4.2 Expansion Method

Here we will establish the naming convention for the expansion method that will be

used in the next two sections. In the expansion method we assume L to be a single line of

hexagons or a boundary line of an existing graph. L must be at least two hexagons long

to maintain the generality of placement for Le. There are three directions that L can

be positioned, Lateral, Inclined Backwards, and Inclined Forwards, one for each of the

three separate directional planes on the dual graph. In Fig. 74, L will be the emboldened

black line and the expansion chain Le will be the red line.

Figure 74: Understanding the orientation of expansion hexagons.

The expansion line Le will always have one less hexagon than line L with each hexagon

of Le incident to two hexagons in L, this allows expansion with line Le to produce a shape

which will always remain convex. The images in Fig. 74 represent the orientation of the

terminal hexagons +e and e+ in relation to Le. These images serve to standardize notation

so that the + symbol will specifically state where the terminal hexagon will be located in

regard to Le. Though these images show expansion in the upward right direction, it is

important to see that the orientation of + will still hold if the hexagons were expanding downward left.

We will now describe the four ways of which expansion can occur and define the 45

specific naming associated with them. In the following figures L is represented as the

1 emboldened black chain of hexagons, while L− refers the chain of hexagons the shape that are preceding L.

This is the basic method of expansion, Le. This ex- pansion line has one less hexagon than L and each of the hexagons in Le are connected to two hexagons in L, this allows the expansion to maintain the convexity of the shape after expansion.

Figure 75: Basic convex expansion.

This is the product of Le plus a left terminal hexagon. The left terminal hexagon will not cancel the convexity property.

Figure 76: Convex expansion with left ter- minal hexagon.

This is the product of Le plus the right termi- nal hexagon, which will not cancel the con- vexity property.

Figure 77: Convex expansion with right ter- minal hexagon. 46

This is the result of the Le plus the left and right terminal hexagons so long that they do not cancel the convexity property.

Figure 78: Convex expansion with left and right terminal hexagons.

The following are descriptions of all the possible cases in which L must be considered during an expansion process. Each case will explain which expansion lines are valid as well as show why the other expansion lines would compromise the shape’s convexity.

Case A Given a boundary line L there are four ways in which the shape can be expanded while still maintaining the convex property.

Figure 79: Single line graph

Figure 80: The results of all expansions on a single line graph.

These are the resulting shapes from adding all forms of the expansion line. As can be seen in Fig. 80, all of these expansion lines will maintain convexity and are valid. 47

Case B If the shape is increasing in size, i.e. L has a 1 larger node count then L− , then all expan- sion choices are acceptable for expansion.

Figure 81: Increasing line graph

Figure 82: The results of all expansions on an increasing line graph.

Similar to Case A, when the graph is increasing it is not necessary to take the length or

1 hexagon orientation of L− into account when considering valid expansion lines. There- fore, all possible expansion lines will maintain the convexity of the shape. 48

Case C If the shape is decreasing in size, i.e. L has 1 a smaller node count then L− , then less choices will be available for expansion.

Figure 83: Decreasing line graph

Figure 84: The results of all expansions on a decreasing line graph.

In this case the shape is decreasing in size and we will therefore have to take into

1 consideration the length and alignment of L− with L when considering valid expansion lines. In Fig. 84, the arrows in some of the expansion results indicate where the new shape fails to maintain convexity, this shows the only valid expansion option is Le. 49

Case D If the shape has the structure in which L is the same size (has the same node count) as 1 L− , then there are two possible expansion methods available.

Figure 85: Constant line graph

Figure 86: The results of all expansions on a decreasing line graph.

In this case we are still able to use Le but can only use one of the expansion lines in which a single terminal hexagon has been added. Here the second valid expansion line is

e+ 1 L . This is because structure of L− needed to be considered to maintain convexity. If a shape is maintaining the same length as the previous line then the structure will need

1 +e to be considered. If L− has the expansion structure of L in relation to L then the

e+ 1 e+ valid expansion line will be L . Alternately if L− has the structure of L then the valid expansion line would need to be L+e 50

Here is a brief summary of the expansion method that we just described. Given a chain of hexagons L of at least two hexagons in length, an expansion line can be added to

L that will still maintain convexity in the resulting shape if the expansion line is chosen under these conditions. These restrictions to the expansion method are based on the manner in which the shape expands.

i) If the shape is a singular line of hexagons then all expansion lines will be valid, that is Le, L+e, Le+, and L+e+.

1 ii) If the shape is increasing, i.e. L− (the hexagon chain before L) is smaller in length

than L, then all expansion lines will be valid, namely Le, L+e, Le+, and L+e+.

1 iii) If the shape is decreasing, i.e. L− (the hexagon chain before L) is larger in length

than L, then the only valid expansion line that retains convexity will be Le.

1 iv) If the shape is maintaining size, i.e. L− is the same length as L, the expansion line Le will be valid. One of the expansion lines containing one terminal hexagon, L+e

e+ 1 or L will also be valid and will be determined by the structure of L− . That is simply

1 +e if expanding backwards L− has the structure of L then the new expansion line will be

e+ 1 e+ +e L , or if L− has the structure of L then the new expansion line will be L . 51

4.3 Creating convex shapes with the Expansion Method

We will iteratively use the expansion method that we just defined we will construct the five general convex shapes described earlier. This exercise will serve to both confirm the convexity of the shapes as well as offer a practical view of the expansion method. It is important to note that we can apply the expansion method to any boundary chain of a current structure. This will be most noticeable in Fig. 90 as the shape is expanded in both directions from the initial node chain.

All shapes will be started with the black chain, then expanded with the red chain, then the blue chain, followed by the pink chain, and ending with the yellow chain.

Figure 87: Expansion legend.

i) Expanded by the L+e+ chain. ii) Expanded by the Le chain.

Figure 88: K-disc structure.

i) Expanded by the Le+ chain.

Figure 89: Rectangle structure. 52

a) The lower section i) Expanded by the Le chain. ii) Expanded by the Le chain.

b) The upper section i) Expanded by the Le chain. ii) Expanded by the Le chain. Figure 90: Square structure.

i) Expanded by the Le chain. ii) Expanded by the Le chain. iii) Expanded by the Le chain.

Figure 91: Pyramid structure.

i) Expanded by the Le chain. ii) Expanded by the Le chain.

Figure 92: Trapezoid structure. 53

Additionally, we will continue with some examples of other convex shapes that can be created using the same expansion method. This exercise will serve to show the robustness of the expansion method as well as the diversity of the resulting shapes.

a) The upper section i) Expanded by the L+e chain.

b) The lower section i) Expanded by the Le chain.

Figure 93: Random convex structure 1.

i) Expanded by the L+e+ chain. ii) Expanded by the Le+ chain. iii) Expanded by the Le+ chain. iv) Expanded by the Le chain.

Figure 94: Random convex structure 2.

i) Expanded by the L+e+ chain. ii) Expanded by the L+e+ chain. iii) Expanded by the Le chain.

Figure 95: Random convex structure 3. 54

4.4 Applying Theorem 1 to a convex shape hole

Here we will validate Theorem 1 by applying all four cuts to a graph with a general convex shaped hole to show the resulting cut orientation. The resulting Four Cut / Four

Region graphs will conform to Theorem 1 if the cuts are constructed so that no (x, y) − shortest path will cross all four cuts.

The k-disc hole has already been shown to conform to the Lemmas and Theorem explicitly in Chapter 3; we will continue by validating the other convex shapes.

Figure 96: Two cut graph for a rectangle. Figure 97: Four cut graph for a rectangle.

Figure 98: Two cut graph for a square. Figure 99: Four cut graph for a square. 55

Figure 101: Four cut graph for a four-degree Figure 100: Two cut graph for a four-degree pyramid. pyramid.

Figure 102: Two cut graph for a trapezoid. Figure 103: Four cut graph for a trapezoid.

The four-degree pyramid structure produced significantly different cuts that were non-symmetric when the Lemmas were applied. The following are alternate pyramid structures ranging from a two-degree pyramid to a six-degree pyramid to validate that the Lemmas will work on all forms of the pyramid structures.

Figure 104: Two cut graph for a two-degree Figure 105: Four cut graph for a two-degree pyramid. pyramid. 56

Figure 106: Two cut graph for a three-degree Figure 107: Four cut graph for a three- pyramid. degree pyramid.

Figure 108: Two cut graph for a five-degree Figure 109: Four cut graph for a five-degree pyramid. pyramid.

Figure 110: Two cut graph for a six-degree Figure 111: Four cut graph for a six-degree pyramid. pyramid. CHAPTER 5

Possible Extension To Graphs With A Few Convex Holes

In this section we will look at the open problem of decomposing cellular communi- cation networks which have multiple convex holes. Though this will be left as an open problem, for future consideration, we will offer some possible decomposition methods to handle multiple holes.

Here we will discuss three decomposition methods to remove the holes; when cuts do not intersect another hole, when cuts do purposely intersect another hole, and when holes are chained together by cuts with an additional cut leading to an external hexagon of the graph.

The goal of each method we will present is to reduce a network graph with multiple holes down to a collection of sub-graphs that do not contain any holes. This will allow the network to perform the distance computation from [3] on the embedded trees of each sub-graph and derive the (x, y) shortest path. Each method will be demonstrated on − a two hole graph, with the chaining method also testing a three and four hole graph.

Then, the computation time will be determined, and we will evaluate the retention of

all (x, y) shortest paths that are present in the original graph. If any problems were − discovered during the evaluation of the decomposition method they will be mentioned and if possible remedial suggestions will be offered.

57 58

5.1 Case 1 - Cuts do not intersect another hole

The first method of decomposition that will be presented is performed by creating a sequence of perpendicular cuts from the graph holes that avoid intersecting any other holes in the graph. In this method we will choose one of the holes and create four cuts in the same manner as in the previously proposed lemmas of Chapter 3. These cuts will be created taking care that none of them will intersect another hole in the graph. Then four cuts will be created from the other hole(s) in the same manner as the first hole. However if a cut from any subsequent hole intersects with a cut created from a previous hole, then the cut from the previous hole will act as an artificial boundary and terminate any new cut that attempts to intersect that chain of hexagons.

To begin, we start with a general two hole graph such as in the figure below. The sizes of the holes will need to be taken into consideration. If the holes are of the same size then either of them can be used to create the first set of four cuts, however there is a caveat when these holes are not of similar size.

Figure 112: A general two hole graph.

If the graph contains holes that are different sizes then the hole with the largest diameter should be chosen as the hole from which the initial cuts will be made. The 59

cuts should not originate from the smaller hole because the smaller hole will have smaller

angles between the cuts. If a larger hole is close enough to the smaller hole then there is

a possibility that the radius of the larger hole will be bigger than the angle between the

cuts of the smaller hole. If this is the situation then a cut from the first (smaller) hole

may intersect the second (larger) hole, as seen in Fig. 113.

Figure 113: Case for choosing the larger hole.

Choosing the larger hole allows for a greater chance to create cuts that will not intersect with the remaining hole or holes in the graph. This is because the smallest angles between the cuts of the larger hole will still have a greater chance of being wide enough to allow the radius of the smaller hole to lay between its cuts. Initiating the cuts from the largest hole reduces the chance for the cuts to intersect another hole and offers a greater possibility of automating the cut creation process without error.

Continuing this method we will choose a hole and create four perpendicular cuts in the same manner as described by Lemmas 1 and 2 in Chapter 3. Each of these cuts will be used to create a unique sub-graph that will contain only one cut from the first hole, as the pictures in Fig. 114 show. 60

Figure 114: Four sub-graphs created from a unique cut from the chosen hole.

We will then take each of the sub-graphs in Fig. 114 and create four perpendicular cuts from the second hole. Each of the sub-graphs in Fig. 114 will then have four variations. It will maintain its unique cut from the first hole but the second cut will be one of the four cuts created by the second hole using the Lemmas 1 and 2. This process will be performed for all the sub-graphs in Fig. 114 until all two cut combinations (one cut from each hole) are represented in the collection of sub-graphs. This process will result in the creation of sixteen sub-graphs in total. All sub-graphs are presented in Fig.

115.

This method allows the original graph with two holes to be decomposed into sixteen sub-graphs that do not contain any holes. The resulting collection of sub-graphs, by

Lemmas 1 and 2, will collectively maintain all the (x, y) shortest paths that are found − in the original graph. The algorithm from [3] can then be applied to this collection of sub- graph to find the distance between the two nodes. Then as with the graph decomposition in Chapter 3, the optimal (x, y) shortest path for the original network graph will be − determined by comparing the distances from all sixteen subgraphs. 61

Figure 115: Sixteen sub-graphs created by combinations of perpendicular cuts for each hole. 62

A drawback to this method is that when more holes are introduced to the network graph the computation time of this method increases dramatically because it requires more sub-graphs to maintain all of the (x, y) shortest paths through the decomposition − process. As shown in Chapter 3, decomposition of a cellular communication graph with

one hole will require four sub-graphs and the example above has illustrated that a cellular

communication graph with two holes requires sixteen sub-graphs for decomposition.

These examples show that this method of decomposing graphs with multiple holes, by

not intersecting other holes in the graph, will require 4h sub-graphs (where h is the num-

ber of holes in the graph) to maintain all (x, y) shortest paths from the original cellular − communication graph and accurately find the optimal routing path. It is the number

of sub-graphs required that cause the computation of this process to be in exponential

time, which may overtax the capabilities of some mobile devices.

5.2 Case 2 - Cuts do intersect the second hole

Similar to the preceding case, we will be relying on the previously postulated Lemmas

to create the sequence of cuts for each hole found in the network graph. In this method

however we will create cuts that will purposefully intersect another one of the holes in

the graph. This case will not only serve as an alternate method to the first case that we

proposed, when we create cuts that do not intersect the other holes. This method will

also handle situations when the first method can not be completed because a cut is not

able to avoid intersecting another hole in the graph. 63

As with the previously suggested method for decomposing graphs with multiple holes we will demonstrate this method using the familiar two hole graph.

Figure 116: Again a general two hole graph.

To connect the holes a cut created from a chain of hexagons between the holes will be

required. This will open up the two sections of absent hexagons that comprise the holes.

These cuts can be any minimal chain of hexagons that start with one of the hexagons on

the perimeter of initial hole and ends with one of the hexagons located on the perimeter

of the other hole. These cuts need not be a straight line, but since the cut will need to

be a minimal length path between hexagons on the hole perimeters, changing directions

on the triangular plane will already be at a minimum.

Before we begin decomposing the graphs with multiple holes it is important to consider

a caveat when connecting the holes. This caveat, which will be explained in the following

two paragraphs, is a requirement of the cut creation to connect the holes in a manner

which will enable the method to work consistently in an unattended algorithmic method.

In this example we will create sets of sub-graphs with different cuts to connect the hole,

this is to show all the possible sub-graph configurations of this method and will assist in

the analysis of this decomposition process. 64

Consider the two pictures in Fig. 117, [A] where the larger hole is being connected to the smaller hole and [B] where the smaller hole is being connected to the larger hole.

It should be noted that no cut that connects the two holes should extend beyond the smallest convex shape that would include both holes. In this case all the red colored cuts of picture [A] in Fig. 117 complete the smallest convex shape that include the two holes, though we will see not all the red cuts are useful.

The cuts projected in [A] will not always connect to the smaller hole. In the case of picture [A] the cuts will have to be tested to see if they will terminate at a hexagon on the perimeter of the other hole in the graph. If the cuts do not terminate at the perimeter of the other hole then an unnecessary number of sub-graphs will be created, as we will explain in Fig. 120. If the cuts are projected from the smaller hole to the larger hole as in picture [B], then as seen in the picture, less cuts will be created and only the cuts that connect the two holes. The cut creation process demonstrated in picture [B] will reduce the number of cuts that need to be considered and therefore the number of sub-graphs that will later be used in the (x.y) shortest path computation. −

Figure 117: Reasoning for connecting the smaller hole to the larger hole. 65

The two holes in the graph need to be connected so they are joined together by a single cut, effectively creating one larger hole. To remove this larger hole we will need one more cut to extend to the boundary of the graph. If both holes had two cuts extending toward a hexagon on the boundary of the graph then the sub-graph would have a solid partition consisting of three cuts and two holes as in Fig. 118. To avoid severing the graph into two partitions we will only create one cut from the first chosen hole which will be connect to the second hole.

It is this reason that we directly find one connection cut between the holes and do not create four perpendicular cuts for the first hole. Creating a single cut from the first hole is acceptable because we are only interested in the perpendicular cuts that intersect the other hole in the graph and we can not create a second cut from the first hole as it would create a partition.

Figure 118: Explanation for why only two cuts are needed.

The graph in Fig. 119 has each unique possible cut represented with a different color.

These cuts show all the possible ways in which the two holes from Fig. 116 can be successfully connected to each other. Each one of these cuts from the right hand hole will be used to create a unique sub-graph. Unlike the first method we described in this chapter the construction of cuts for the remaining holes will be slightly different. 66

Figure 119: Various methods for connecting two holes of the same size.

Taking the separate cuts from Fig. 119 we can create four separate sub-graphs with a unique cut in each one. These sub-graphs equivalently replace the initial perpendicular cuts from the first hole that formed the basic set of sub-graphs from Fig. 114. We will explain why all possible connection cuts were used to create the collection of sub-graphs shortly.

It should be noted that it is only coincidence that there are four cuts in Fig. 119, and therefore four sub-graphs in Fig. 120, which happen to be the same number of perpendicular cuts that are derived from the Lemmas. If the holes were smaller or larger there would be a different number of cuts and equally a different number of sub-graphs.

This is an important point because unlike using perpendicular cuts we cannot assume that there will be no more than four sub-graphs as in the previous method. This fluctuation will be addressed later when considering the computation time.

Figure 120: Method for connecting two holes of the same size. 67

When constructing the remaining sub-graphs for this method we will have to handle the cut creation slightly differently. As stated earlier the first hole (on the right hand side) will only have one cut extending from it. This cut will also count as one of the perpendicular cuts from the second hole, in fact it will be considered cut1. When applying

the Lemmas, cut2 will be half the diameter of the hole away from cut1. Both cut3 and

cut4 will be perpendicular to these two initial cuts as seen in Fig. 121.

Figure 121: Constructing the remaining perpendicular cuts.

The remaining sub-graphs will be derived from each of the four primary sub-graphs

from Fig. 120 by finding the remaining three cuts for the second hole in the same manner

that the cuts were found in Fig. 121. Each of the additional three cuts from the second

hole will separately be paired with the primary sub-graph created by the respective cut1 that created the unique sub-graph. For this method to run in an algorithmic manner we will be using the Lemmas to create the cuts for the 2nd through nth.

If there are more than two holes in the graph however, there is no guarantee that a single set of perpendicular cuts will have one cut that intersects another cut in the graph.

Fig. 122 shows that it cannot be expected that a set of perpendicular cuts will always intersect another hole in the graph. Since the position of the perpendicular cuts vary 68 based on the location where the connection cut from the first hole enters the second hole, we can see that having more sub-graphs constructed from different connection cuts will offer a greater chance that sequences of perpendicular cuts will connect all the holes.

Figure 122: Example of how a set of perpendicular cuts can miss another hole.

Figure 123: Method for connecting two holes of the same size. 69

When the network graph has more than two holes, the process of connecting all the holes would be extended so that the 1st hole through the (n 1) hole will be connected − with one shortest path cut between them. The nth hole will then have the three remaining perpendicular cuts extending to the boundary of the graph.

There are two drawbacks to this method that stand out. First, the number of sub- graphs created by this method is not uniform as was the case in the previous method.

Unlike the previous method where it could be seen that the number of required sub- graphs were 4h, this decomposition method has a variability based on the size of the holes. As shown earlier with Fig. 117 the number of potential cuts connecting the holes can change based on the hole’s size. The number of cuts connecting the holes could be as little as 1 or as many as C, C not being known but could possibly be given a maximal threshold to keep computation time down. It would be prudent to assume the worst case

h 1 situation when determining the computational time, C − + 3.

One other issue that seems to arise from this decomposition method is that the passage between the holes will always be severed in every sub-graph since we are always creating a cut that is going to connect the holes. This immediately suggests that the collection of sub-graphs in Fig. 123 will not maintain all (x, y) shortest paths present in the original − network graph. 70

5.3 Case 3 - Chaining holes

Here we will propose one final method of decomposition for graphs with multiple

holes. In this section we will take a different approach to removing the holes with an

alternate cut creation method. Instead of using the Lemmas from Chapter 3 to create

the cuts we will be connecting the holes by the shortest path hexagon chain between

them. This process is referred to as a chaining because holes will be chained together

with a single cut that is the shortest chain of hexagons between the boundaries of the

holes.

In this method an initial hole is chosen and a cut is made from that hole to the

boundary of the graph. A second cut, requiring the smallest number of hexagons, is

created to chain the initial hole to the next isolated hole closest to it. The process

continues as more cuts are created between the remaining isolated holes and the nearest

hole to them that is already part of the chain. This process concludes when there are no

more isolated holes remaining in the graph.

The collection of sub-graphs will be comprised of all valid chaining sequences and

a minimal number of sub-graphs constructed from the permutations of an h number of

partition cuts, h being the number of holes in the graph. Creating a set of partition cuts will be described later. These additional sub-graphs created with partition cuts are necessary so that the collection will maintain all (x, y) shortest paths with the minimum − number of sub-graphs. The sub-graphs constructed by valid chaining will have all the

holes in a chain, where each hole is connected to the two holes closest to it, unless it

is a terminal hole in the chain. Only one of the holes in the chaining sub-graphs will 71

have a cut that extends to the boundary of the graph. The sub-graphs constructed

through a permutation of h cuts will use the cuts that make up the graph’s partitions.

These partition cuts serve as a uniform collection of cuts that can be used in various

combinations to remove the holes from the graph. In the partition cut permutation sub-

graphs more than one hole can have a cut extending to the boundary of the graph so

long as these boundary cuts do not help to form a complete partition line.

In this section we will show how this method can be applied to graphs with two, three,

and four holes. For each n hole graph we will offer a collection of sub-graphs and test − the cut creation method to verify the retention of all (x, y) shortest paths found in the − original graph.

5.3.1 A two hole graph

The first example that we will show is the decomposition of a two hole graph such as the one that we have seen in the two previously described methods.

Figure 124: A general two hole graph.

To create the sub-graphs found in Fig. 125 we will first describe a different approach

to cut creation for a network graph. Using Lemma 1 from Chapter 3 we know that a

shortest path will not cross more than one cut in a two partition graph. Let us consider 72 all the unique ways to interpret a two hole graph as a two partition graph using both holes as part of the solid partition line.

Figure 125: Considering a two hole graph as a two partition graph.

Using Fig. 125, we can see what cuts would need to be used in the process of creating the sub-graphs to verify the properties of the Lemmas and Theorem of Chapter 3.

Overlaying all of the images in Fig. 125 we get the result of Fig. 126. This demonstrates that the cuts will not intersect. It should be noted that in the case of the pair of cuts

(cut4, cut6) and (cut5, cut7) it was attempted to maintain cuts that were perpendicular to the lateral cuts while having an optimally short distance to the boundary of the graph.

Figure 126: All cuts that comprise the partitions of the two hole graph.

To construct the collection of sub-graphs for decomposition and removal of the holes in the network graph we will need to use a combination of cuts from Fig. 126.

Unlike the first two methods that we have described we will not be using the Lemmas 73 as a foundation for the decomposition process. Instead we will be creating a collection of sub-graphs that will only contain two cuts. The number of cuts will always be equal to the number of holes in the graph. Because there are only two holes in the graph there will be less chaining formations available to produce the sub-graphs. Instead the remaining sub-graphs will be the optimally least path restrictive sub-graphs from the set of cut combinations (seven cuts choose two cuts).

Figure 127: The collection of various decomposed sub-graphs.

To test whether the seven sub-graphs in Fig. 127 will maintain all the (x, y) shortest − paths found in the original graph we will take Fig. 126 and label the sub-partitions as

Regions. We will then check each pair of Regions to see how many graphs will offer a 74 path between the given Regions that will maintain Lemma 1(a), that no (x, y) shortest − paths will cross any partition line of graphs found in Fig. 125 more than once.

Figure 128: Composite graph labeling all regions.

R1 R2 R3 R4 R5

G1,G2,G4 ———— ———— ———— ———— R2 G5,G6 ———— ———— ———— ———— G1,G2,G5 G1,G2,G3 ———— ———— ———— R3 G6 G5,G6 ———— ———— ———— G2,G3,G4 G2,G3,G4 G1,G2,G3 ———— ———— R4 G6,G7 G5,G6 G5,G6,G7 ———— ———— G2,G3,G4 G3,G4,G5 G1,G3,G6 G1,G2,G3 ———— R5 G5,G6,G7 G6,G7 G5,G6,G7 G5,G7 ———— G1,G2,G4 G1,G3,G4 G1,G3,G4 G1,G2,G5 G1,G2,G4 R6 G5,G6,G7 G5,G6,G7 G6,G7 G7 G5,G7 Table 1: Region Table for a two hole graph.

The Region Tables take into account all potential shortest paths under Lemma 1. An example, checking R >R we check R >R >R as well as R >R >R. 1− 5 1− 2− 5 1− 4− 5 As indicated by Table 1, there are a number of graphs that will offer a path between the

Regions that would not violate Lemma 1(a). 75

As a final check to determine whether these sub-graphs will successfully decompose the original graph we need to check that all nodes in the cuts are present together in at least some of the sub-graphs. Table 2 shows that there are a variety of sub-graphs in which any pair of nodes from different cuts can be found together, allowing the (x, y) − shortest path between them to be computed.

Figure 129: Composite graph labeling all cuts.

cut1 cut2 cut3 cut4 cut5 cut6

cut2 G3,G4,G6,G7 —————– ———— —————– —————– —————– cut3 G3,G4,G6,G7 G3,G4,G6,G7 ———— —————– —————– —————– cut4 G2,G4,G5,G6 G4,G5,G6 G1,G4,G6 —————– —————– —————– cut5 G2,G4,G5,G6 G3,G5,G6 G1,G3,G6 G1,G2,G5,G6 —————– —————– cut6 G2,G3,G6 G3,G5,G7 G1,G3,G7 G1,G2,G5 G1,G2,G3,G5 —————– cut7 G2,G4,G7 G4,G5,G7 G1,G4,G7 G1,G2,G4,G5 G1,G2,G5 G1,G2,G5,G7 Table 2: Cut Table for a two hole graph. 76

5.3.2 A three hole graph

In this next example we will use a graph that has three holes

Figure 130: A general three hole graph.

To begin, we will consider all two partition structures that can be found in this graph.

This will help establish the cuts that will be required for the decomposition of the network graph.

Figure 131: Considering a three hole graph as a two partition graph.

Here in Fig. 132 we see the cuts of a three hole graph that make up all the possible ways to view the original graph as a two partition graph. Using the information about these cuts we will be able to determine whether the decomposition of a three hole graph will maintain Lemma 1(a).

In Fig. 133 we see the collection of sub-graphs, most have been able to be created from the chaining method with only the last sub-graph being constructed using the partition cuts. 77

Figure 132: All cuts that comprise the partitions of the three hole graph.

Figure 133: The collection of various decomposed sub-graphs. 78

Figure 134: Composite graph labeling all regions.

R1 R2 R3

G4,G5,G6,G7 —————– —————– R2 G8,G9,G10 —————– —————– G2,G3,G4,G5 G1,G3,G4,G5 —————– R3 G7,G8,G9,G10 G6,G7,G8,G10 —————– G1,G2,G3,G7 G1,G2,G3,G4 G1,G2,G3,G4 R4 G8,G9,G10 G5,G6,G10 G6,G8,G9,G10 Table 3: Region Table for a three hole graph.

Checking that paths between all pairs of Regions exist under Lemma 1(a) is trivial because all of the Regions are adjacent to each other. However, since the shapes of the Regions for the three hole graph are somewhat irregular we will check all possible directions an (x, y) shortest path can take through the graph. Testing all possible paths − will ensure that the shortest path will always be evaluated. 79

Figure 135: Remembering the composite graph labeling all cuts.

cut1 cut2 cut3 cut4 cut5

cut2 G4,G5,G6 ———— ——– —– —– cut3 G7,G8,G9 G1,G2,G3 ——– —– —– cut4 G5,G8 G2,G5 G2,G8 —– —– cut5 G4,G7 G1,G4 G1,G7 G10 —– cut6 G6,G9 G3,G6 G3,G9 G10 G10 Table 4: Cut Table for a three hole graph.

In Fig. 133, the sub-graph G10 was added so that any pair of nodes found in cut4, cut5, or cut6 will be present together. It should be explained that though the collection of sub-graphs might not appear to contain any (x, y) shortest path between nodes found − within cut1, cut2, or cut3, the shortest path is indeed present. This is because regardless of which node pair is chosen, the nodes are found together on one of the partition lines.

By Lemma 1(a), the (x, y) shortest path is found by not crossing a cut but instead − traveling along the partition. Therefore, the shortest path is guaranteed to be found in any graph, regardless of whether both cuts are present. 80

5.3.3 A four hole graph

The final example for the chaining method will be a four hole graph.

Figure 136: A general four hole graph.

In Fig. 137 we have four examples of the original graph with some slightly different partition designs as well as the cuts that will be required to construct these partition.

Figure 137: Considering a four hole graph as a two partition graph.

It is not necessary to consider a partition scheme that is diagonally bisecting the graph

(a partition including the upper left hole to the lower right hole). We are looking for a minimal number of total cuts that will create significantly unique two partition graphs.

These partition cuts will be used to create the least amount of sub-graphs required to demonstrate that the expectations of Lemma 1 will be satisfied. The partition examples in Fig. 138 validate this claim. 81

Figure 138: Consideration of diagonal partitions.

Picture [A] of Fig. 138 shows that the partition scheme will allow a path beginning at node X to traverse three quarters of the graph while remaining under the conditions of Lemma 1. In picture [B] however, the path can only traverse half of the graph under the conditions of Lemma 1. Computationally, the inclusion of the partition scheme in picture [B] would be redundant as it does not offer any paths that cannot be evaluated with one of the partition schemes presented in Fig. 137. Therefore, all partition cuts needed to determine whether decomposition of a four hole graph will maintain all (x, y) − shortest paths found in the original graph are presented in Fig. 139.

Figure 139: All cuts that comprise the partitions of the four hole graph. 82

Figure 140: The collection of various decomposed sub-graphs. 83

Figure 141: Composite graph labeling all regions.

R1 R2 R3 R4

G5,G6,G7,G8,G9,G10 ————————— ——————— ——————— R2 G11,G12,G13,G14,G15 ————————— ——————— ——————— G16,G17 ————————— ——————— ——————— G1,G3,G5,G8,G9,G11 G2,G4,G5,G6,G8,G9 ——————— ——————— R3 G12,G13,G15,G16,G17 G10,G12,G13,G16,G17 ——————— ——————— ————————— ————————— ——————— ——————— G1,G2,G3,G4,G9,G10 G1,G2,G3,G4,G5,G6 G1,G2,G3,G6,G7 ——————— R4 G11,G12,G13,G14,G15 G7,G8,G9,G10,G11,G12 G9,G11,G13,G14 ——————— G16,G17 G13,G14,G15,G16,G17 G15,G17 ——————— G1,G2,G3,G4,G5,G6 G1,G2,G3,G4,G5,G6 G2,G3,G4,G6,G7 G1,G2,G3,G4,G5 R5 G7,G8,G9,G10,G11,G12 G7,G8,G9,G10,G11,G12 G8,G10,G12,G14 G6,G7,G8,G13 G13,G14,G15,G16,G17 G17 G15,G17 G14,G15,G16,G17

Table 5: Region Table for a four hole graph.

Similar to the three hole graph, checking that paths between all pairs of Regions exist under Lemma 1 is fairly simple because all the Regions are adjacent to each other with the exception of two specific pairs, (R1, R3) and (R2, R4). Like the three hole graph, the shapes of the Regions are also slightly irregular so all of the path directions were checked. These directions were clockwise and counter- clockwise around the perimeter as well as crossing through the central region. All of these paths were found to exist in the collection of sub-graphs of Fig. 140. 84

Figure 142: Composite graph labeling all cuts.

cut1 cut2 cut3 cut4 cut5 cut6 cut7

G9,G10,G11,G12 ——————– —————– ————– —– —– —– cut2 G13,G14,G15,G16 ——————– —————– ————– —– —– —– G5,G6,G7,G8 G1,G2,G3,G4 —————– ————– —– —– —– cut3 G13,G14,G15,G16 G13,G14,G15,G16 —————– ————– —– —– —– G5,G6,G7,G8 G1,G2,G3,G4 G1,G2,G3,G4 ————– —– —– —– cut4 G9,G10,G11,G12 G9,G10,G11,G12 G5,G6,G7,G8 ————– —– —– —– cut5 G8,G12,G16 G4,G12,G16 G4,G8,G16 G4,G8,G12 —– —– —– cut6 G5,G9,G13 G1,G9,G13 G1,G5,G13 G1,G5,G9 G17 —– —– cut7 G7,G11,G15 G3,G11,G15 G3,G7,G15 G3,G7,G11 G17 G17 —– cut8 G6,G10,G14 G2,G10,G14 G2,G6,G14 G2,G6,G10 G17 G17 G17 Table 6: Cut Table for a four hole graph. 85

This case is also similar to the three hole graph when considering node pairs. It seems that there is a problem using the chaining method for any graph with more than two holes. It can be seen that node pairs found in different internal cuts never appear naturally together in the sub-graphs using chaining. This is because maintaining a unique chain for each sub-graph requires all but one internal cut to be present in the sub-graphs at one time. This issue can be resolved by adding one additional sub-graph to the collection which removes the holes in the graph by using the external cuts (cut1, cut2, cut3, and cut4) from Fig.139.

The chaining method shows that it has a lower computation time. The examples in this section show that a limited number of sub-graphs were required to maintain all (x, y) shortest paths. The drawback of this method is that at present it seems − like a more idealized approach given that not all chaining sub-graphs will preserve all

(x, y) shortest paths without including the cut permutation graphs. Unlike the first − two methods described in this section, the chaining method does not rely on the Lemmas of Chapter 3. This would make a uniform approach more difficult and prevent the formulation of this method into an algorithm. As such this example only serves as an alternate view of sub-graph construction rather than a practical method. CHAPTER 6

Conclusion

Presented in the preceding paper is the formulation of a theorem designed to handle shortest path routing in a triangular cellular network with a convex hole. Previous work in this area has brought forward a reliable method for addressing and routing in triangular cellular networks which is resource efficient enough for mobile devices to perform the computation autonomously. This method which was introduced by Chepoi, et al. in [3] uses embedded trees to compute distances in triangular cellular network graphs that do not contain any holes.

The decomposition method offered in this paper removes the hole in the graph by creating a set of four sub-graphs which will cumulatively retain all the (x, y) shortest − paths that are present in the original graph. The algorithm in [3] is then able to be applied to the set of these sub-groups that do not have any holes. The distances calculated from each of the four sub-graphs are then compared and the (x, y) shortest path with the − smallest numerical distance will be used for routing within the original network graph.

Building offof the previous work from others in this area, this paper was able to offer a viable solution to the dilemma of computing routing distances when a hole was present in the network graph. The decomposition theorem was originally created and verified with a hole that had a k-disc shape. After the theorem was proven to work on this basic structure, other shapes were tested. One type of hole structure that was tested with the

86 87 decomposition theorem were isometric shapes. Isometric shapes were not as restricted as the k-disc shape since they did not require the internal structure of the hole to maintain all shortest paths between internal nodes.

The inclusion of the isometric shapes to the list of hole structures compatible with the decomposition theorem presented in this paper would have enabled this method to handle a larger variety of holes, if not all possible shapes a hole could take. Some of the test cases for the isometric shapes met with success and conformed to the same predicted outcome as the k-disc structure. There were, however, a few examples that violated the

Lemmas from which the theorem was derived. Following the violation of the Lemmas by isometric shaped holes other convex shaped holes were tested and found to adhere to the requirements of the Lemmas. Though the theorem is able to remove single convex shaped holes from a triangular network graph, it still can not be used universally as a solution to decompose a graph with a single hole of any shape. This fact alone suggests that the theorem being presented is only part of the entire solution.

Perhaps completing this problem of decomposing any shaped hole requires altering this decomposition theorem in a manner that will enable it to handle isometric shapes. It is also possible that a helper method could be applied to graphs with isometric holes that will allow the decomposition theorem to correctly remove the hole in the graph. This helper method could work in a similar manner as the decomposition theorem itself; to allow the routing algorithm proposed in [3] to work with any network graph containing holes.

Some of the final work in this paper involved theorizing the extension of the graph decomposition theorem to handle cellular communication network graphs that contain 88 more than one convex hole. Some of the methods that were introduced on this topic toward the end of the paper where more rigidly structured than others. These structured methods made use the same Lemmas as the decomposition theorem to help reduce the number of holes in the graph. Utilizing the Lemmas that have been proposed in this paper can offer an advantage as they have already been shown to work. These Lemmas may only require an additional helper method to convert particular graph structures, graphs with isometric holes, into a structure usable by a previously defined theorem or method presented in this area of research. Theorems and methods that use these formulaic processes will most likely lead to the solution as they will not only have been rigorously tested to work on numerous cases but because the systematic process of computation will allow for their use in more modular and autonomous applications. CHAPTER 7

References

[1] Bar-Noy, A., Kessler I., and Sidi, M., (1994). Mobile Users: To update or not to update, Wireless Networks, 1(2), pp. 175-185.

[2] Chepoi, V., Dragan, F., and Vaxes, Y., (2004). Addressing, Distances and Routing in Triangular Systems with Applications in Cellular and Sensor Networks, In Proceedings of the 18th International Parallel and Distributed Processing Symposium (IPDPS 2004),

(April 26- 30, 2004), (Santa Fe, New Mexico, USA, IEEE, 2004), pp. 216b.

[3] Chepoi, V., Dragan, F., and Vaxes, Y., (2006). Addressing, distances and routing in triangular systems with applications in cellular networks, Wireless Networks, 12(6),

pp. 671-679.

[4] Chepoi, V., Dragan, F., and Vaxes, Y., (2002). Center and diameter problems

in plane triangulations and quadrangulations, In Proceedings of the 13th Annual ACM-

SIAM Symposium on Discrete Algorithms (SODA 2002), (January 6- 8, 2002), (San

Francisco, CA, USA. ACM/SIAM, 2002), pp.346-355.

[5] Chepoi, V., Dragan, F., and Vaxes, Y., (2005). Distance-based location update and routing in irregular cellular networks,In Proceedings of the 1st ACIS International

89 90

Workshop on Self-Assembling Wireless Networks (SAWN 2005), (May 23- 25, 2005),

(Townson University, Maryland, USA, IEEE, 2005), pp. 380- 387.

[6] Gavoille, C., Peleg, D., Perennes, S., and Raz, R., (2001) Distance labeling in

graphs, In Proceedings of the 12th Annual ACM-SIAM Symposium on Discrete Algo-

rithms (SODA 2001), (January 7- 9, 2001), (Washington, DC, USA, ACM-SIAM, 2001),

pp. 210219.

[7] Guangbin F., and Jingyuan Z., (2001). Virtual Cellular Networks for Non-

uniformly Distributed Base Stations, International Conference on Parallel Processing

(ICPP ’01), (September 3- 7, 2001), (Valencia, Spain, ICPP, 2001), pp. 339- 345.

[8] Li, J., Kameda, H., and Li K., (2000). Optimal dynamic location update for PCS networks, IEEE/ACM Transactions on Networking, 8(3), pp. 319- 327.

[9] Nocetti, F. G., Stojmenovic, I., and Zhang, J. (2002). Addressing and routing in hexagonal network with application for tracking mobile users and connection rerouting in cellular networks, IEEE Transactions on Parallel and Distributed Systems, 13(9), pp.

963- 971.

[10] Peleg, D., (2005). Informative Labeling Schemes for Graphs, Theoretical Com-

puter Science, 340(3), pp. 577- 593. 91

[11] Rappaport, T., Wireless Communications - Principles and Practice, IEEE Press,

Piscataway, NJ, 1996.