Lecture 9: Network Flows ( Weighted Graphs) Flashcards

1
Q

What are several algortithms to analyse a directed graph?

A
  1. maximal flow
  2. minimal cut-sets
  3. independent paths
  4. optimal marriages
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Explain the difference between indeg(v) and outdeg(v)

A

indeg(v) is the number of edges in D with v as the head

outdeg(v) is the number of edges in D with v as the tail

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

D = (V,E) explain what V and E are

&

given an edge (A,B) what is A and B.

A

V = finite non-empty set of vertices V

E = finite set of E ordered pairs

A = tail

B = head

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Are; Circuits, Cycles, Paths and Trails similar to that of undirected graphs?

A

Yes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is an Euclerian circuit?

A

A Eulerian circuit is a directed circuit that contains each edge in the graph exactly once.

indeg(V) = outdeg(V)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a DAG and what is its purpose?

What is total ordering and a partial ordering? How is it relevant to a DAG?

A

Directed Acyclic Graph

  • Used for solving scheduling problems

A DAG defines a partial order between its vertices only!

Total orderings are the number of partial orders.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Explain the Maximum flow algoritihm.

A
  • Goal is to maximise the flow through all edges;
  • In a real world problem: Maximizing the flow of material through a transportation network (pipeline, communication system, road system, etc)

Two distinguished vertices:

  • The source (vertex 1)
  • The sink (vertex n)
  • Each edge (i, j) has a capacity, ui, j
  • Each edge (i, j) has a flow, xi, j
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Minimal cut set

A
  • Purpose: find the cut(s) with the smallest capacity
  • Solving the maximal flow also solves the minimal cut set.
  • Different cuts have different capacities
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Explain the flow value lemma

A

Given any flow and any s-t cut that partitions the graph into sets of vertices A and B, the total flow crossing the cut equals the flow from A to B minus the flow from B to A

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How to recognise optimal flows?

A

If the value of the network’s flow equals the capacity of an s-t cut then the flow is maximal and the cut is minimal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a ford fulkerson algorithm?

A

It is a backtracking algorithm. Allows flows to be taken away from edges.

note:

The residual capacity of an edge e is c(e) − f(e), i.e., how much extra capacity it has above its current flow

c(e) potential capacity

f(e) actual flow

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an augumenting path?

A

This is a basis of the ford fulkerson algorithm.

Is a path from souce to sink on an undirected graph.

  • It ignores the direction of the edges.
  • Must have a positive residual capacity on all forward edges in the path
  • Must have a positive flow on all reverse edges in the path
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Explain the Ford fulkerson Algorithm

A

The algorithm then works as follows:

  1. Start with zero flow on all edges
  2. Find an augmenting path
  3. Calculate the bottleneck value b along the path
  4. For each edge e in the path:
    1. If it is a forward-facing edge then add the bottleneck value to its flow, i.e., f(e) = f(e) + b b.
    2. If it is a backward-facing edge then subtract the bottleneck value from its flow, i.e., f(e) = f(e) − b
  5. Repeat steps 2 to 4 until there are no more augmenting paths
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How to find a minimum cut-set.

A

Starting from the source s, find all vertices that can be reached from s by following paths on the undirected graph composed of:

  • Forward edges with positive residual capacities,
  • Backward edges with positive flows

These vertices form set A in the partition; the remainder are set B

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a bipartite graph?

&

What does the term matching mean?

&

what does the term maximum matching mean?

A

a graph that contains vertices that are partitioned into two disjointed groups. E.g. male/females.

matching:

is a subset of the edges, such that the two ends of each edge belongs to different partitions and no edges share a vertex.

maximum matching:

the total number of these matching edges.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is a directed Cycle?

A

a cycle is a circuit with no repeated vertices.

e.g

1 - 2 - 3 -5 -1

17
Q

What is a directed path?

A

a path is a trail with no repeated vertices.

e.g

1 - 2 - 3 - 5 - 4

18
Q

What is a directed Circuit?

A

a circuit is a trail that starts and ends at the same vertex and which may visit the same vertex more than once.

e.g

1 - 6 - 5 - 1 - 4 - 3 - 1

19
Q

What is a trail?

A

a sequence of not necessarily distinct verices

e.g

1 - 2 - 3 - 6 - 5 - 4 - 3 - 1 - 6