function 113
5.2
A mathematical description of the problem
and the objective function
In this chapter, we provide (section 5.2.2) a brief mathematical description of the road network partitioning problem. As this clearly is an optimization problem, we also describe (section 5.2.3 on the following page) the objective function(s) which qualifies a solution in terms of its effectiveness as a valid partitioning. In section 5.2.1, we describe the representation of a road network as a graph.
5.2.1
The road network graph
In order to represent the road network graphs, we adopt a directed graph repre- sentation similar to the representation of the application graphs in the previous sections. The road network of a city can be represented [Holden and Risebro, 1995] by a directed graph G(V, E) whereV denotes the vertex set andE denotes the edge set. The total number of vertices (intersections) in the graph is given by
|V|. Every edge eij ∈ E in the graph represents a unidirectional road in the city
that connects intersection vi to intersection vj. Every vertex vi ∈ V denotes an
intersection of two or more roads. A weight3 w(e
ij) is associated with the edgeeij
that is representative of the traffic that flows through that road.
5.2.2
Partitioning a graph
For the sake of completeness of the graph definition, we also assign weights to the intersections as the sum of the weights of the connecting roads. We denote this by
w(vi) which is defined as :
w(vi) =
X
∀j∈neighbours(i)
w(eij) (5.1)
3The edge weights are generated by generating a random number of car trips from sources to
random destinations and the cumulative number of cars plying through each street is observed.
5.2. A mathematical description of the problem and the objective
function 114
whereneighbours(vi) represents the set of all nodes inV that receive an outgoing
edge from vi. Recall our discussion of the solution space of the DAG partitioning
problem from section3.5.1 on page 72. As a reminder, we highlight the key points of the discussion here. Consider a two dimensional space, where one axis represents the intersection and the other represents the partition ID.
This two dimensional space is a permutation matrix wherein, each point rep- resents an {intersection, partition} pair. We define a state to be a collection of
|V| points in this two dimensional space such that each intersection is mapped to exactly one partition. The solution space of the problem of partitioning a graph has a solution space as a collection of such possible states. The total number of points in this solution space is the set of all possible states in this discrete space given by p|V|, wherep is the number of required partitions.
We define a partitioning scheme based on the representation of the solution space. The definition of the scheme λG ∈ΛG (where ΛG is the set of all possible
partitioning schemes of the given graph G onto p partitions) on the given road networkG is a set ofstates that maps every node vi from the road network graph
to exactly one partition,
λG(vi)∈ {P0, . . . , Pp−1},∀vi ∈V (5.2)
wherePi denotes theith partition. For all the following discussions we denote the
weight of the ith partition (P
i) as w(Pi). Please note that we will use the terms
node, vertex and intersection interchangeably.
5.2.3
Defining the objective function
To effectively perform a distributed road network simulation, one must fully under- stand the effects of dividing the workload (the road network graph to be simulated) into the required number of partitions. We define three heuristics [Hendrickson and Leland, 1995] that are widely accepted in the community, to measure the ef- fectiveness of a partitioning scheme.
5.2. A mathematical description of the problem and the objective
function 115
One of the primary objectives of road network partitioning for distributed simulation is to minimise the execution time of the simulation. This is the case with any task-partitioning algorithm, where the slowest partition dictates the makespan as the execution time is determined by it. To this end, we aim to minimise the weight of the Heaviest Partition(λmax
G ), by minimizing the following equation,
λmaxG =max(w(Pi)),∀Pi ∈ {P0, . . . , Pp−1} (5.3)
The execution time of a distributed simulation also depends on the amount of Inter-Partition Communication(λcomm
G ). In order to reduce this inter-partition
communication, we minimise the following metric,
λcommG = X
i∈{v0,...,v|V|−1}
X
j∈{v0,...,v|V|−1}
w(eij) (5.4)
where w(eij) is the weight of the edge connecting the vertices vi and vj.
The final metric that we examine is the Evenness (λσG) of the partitions. Consider a scenario in which the underlying parallel computer architecture consists of homogeneous execution units with a powerful communication backbone. In this scenario, a vertex of the road network graph takes equally long to simulate on any machine in the underlying parallel computer architecture. The Evenness metric plays a very important role here as it defines how varied each machine is loaded.
λµG = P Pi∈{P0,...,Pp−1} w(Pi) p (5.5) λσG= r P Pi∈{P0,...,Pp−1} (w(Pi)−λµG)2 p (5.6)
In the following sections, we present an overview of the methods that are compared under the purview of road network partitioning.