Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2,...

13
MT365 Examination 2010 Solutions Part 1 Noel Eastham 2010 www.brighton.ac.uk/cmis/staff/jt40 Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) Q2. (a) (i) Two vertex disjoint s-t paths sabct, sfedt (ii) Four edge disjoint s-t paths sabct, sbt, sfedt, set. (b) κ(G) = 2 vertices b, e disconnect G λ(G) = 3 edges sa, ab, ae disconnect G Q3. (i) (ii) (iii)

Transcript of Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2,...

Page 1: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Examination 2010 Solutions Part 1

Noel Eastham 2010 www.brighton.ac.uk/cmis/staff/jt40

Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) Q2. (a) (i) Two vertex disjoint s−t paths sabct, sfedt (ii) Four edge disjoint s−t paths sabct, sbt, sfedt, set.

(b) κ(G) = 2 vertices b, e disconnect G

λ(G) = 3 edges sa, ab, ae disconnect G Q3. (i)

(ii) (iii)

Page 2: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 2 of 13

Q4. (a) (i) The tree is central ( Remove vertices 1, 3, 6, 7 then 4, 5 leaving just 2 ) (ii) Prüfer sequence (4, 2, 4, 2, 5) ( Remove 1, 3, 6, 4 & 2 leaving just 5 & 7 ) (b) Q5 (a) Potentials are S[0], C[4], A[5], D[6], B[8], E[11], F[13], T[14] (b) Shortest path is SCDET of length 14 Q6. (a)

r1c3r4c1 (bold above) is disconnected from r2c2r3c4r5c5 so the framework is not rigid. (b) (i) One additional bracing to make the framework rigid could be r1c2

(ii) Not a minimal bracing, r2c2r5c4r2 is a cycle; any one edge could be removed.

Q7 (a) (i) χ(G) = 2 (Since the graph is bipartite)

(ii) χ‘(G) = 3 (By König’s Theorem) (b) Using v – e + f = 2, 8 – 12 + f = 2, f = 6 Q8. (a)

(b) Optimum assignment of workers to jobs is A − x, B − y, C − w, D − z

Page 3: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 3 of 13

Q9. (a) Numbering the codewords as 0000000.... (1) 1010011.... (2) 0001111.... (3) 1011100.... (4) 0110101.... (5) 1100110.... (6) (2) + (3) = (4) (2) + (5) = (6) (3) + (5) = 0111010 (3) + (6) = 1101001 The two remaining codewords are 0111010 and 1101001

(b) The codeword (4) 1011100 differs in bit position 5 from both those found in (a) and so is independent of those found in (a) and they will together form the rows of a generator matrix for C.

(c) 1010011 is the codeword most likely to have been sent since it differs only in the final

bit from the received word.

Q10 (a)

(b) (i) When an image is reflected in the vertical line through the centre, interchange quadrants A and B and interchange quadrants C and D at every level.

(ii) Q11 (a) v1 + v3 − v4 = 0 v2 + v3 + v5 = 0 (b) i4 + i1 = 0 i3 − i1 − i2 = 0 i5 − i2 = 0

Page 4: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 4 of 13

Part 2 Q12. (a) Using Kruskal’s algorithm we select edges in the following order (1)

(2)

(3)

(4)

(5) Cannot select DE (16), AF (18) both form a cycle The minimum connector of length 67 is thus as follows (b) The two lower bounds obtained by temporarily removing vertex A then B are Lower Bound = 85

+ Lower Bound = 93

+ The better lower bound is the larger lower bound − 93 (c) Twice the length of the minimum connector is the length of a route which visits each town at least once and returns to its starting point. So 134 is an upper bound for the travelling salesman problem. (d) The values 11, 20, 9, 16, 30, 18 are the lengths of a route A − B − C − D − E − F − A which forms a Hamiltonian cycle the length of which, 104, is an improved upper bound for the TSP. (c) Based on the route in (d) we note that BD is 2 more than BC while CE is 3 less than DE so ABDCEFA is a solution of weight 104 – 1 = 103

B

F

A

11

18

A

F

B

11

14

Page 5: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 5 of 13

Q13. (a) G is not Eulerian because every vertex is of odd degree in fact of degree 3. (b) (i) If a Hamiltonian cycle includes rl, lp, and pj then it cannot include edge lc, nor edge pf. So if vertex c is to be included then we must include bc and cd in the cycle and similarly if vertex f is to be included we must include ef and fg in the cycle. (ii) If such a Hamiltonian cycle which includes the edges in red also includes the edge de then it could not include the edges en and dm. So for vertices n and m to be included we must have mj and mq included and nr and nk included. Then at k we must either include kb or qk while at q we must either choose gq or qk. If we choose qk (obviously in both cases) then we cannot form a Hamiltonian cycle since we have a cycle rlpjmqknr which excudes vertices a,b,c,d,e,f,g and h. If we choose kb and gq then we cannot form a Hamiltonian cycle either since we have a cycle rlpjmqgfedcbknr which excludes vertices a and h. So in both cases the inclusion of edge de precludes the existence of a Hamiltonian cycle so we must exclude edge de. Thus we must include edges en and dm. (iii) Suppose edge qk is not included. Then to include vertex q we must join m to q and q to g. Similarly if k is to be included then we must join n to k and k to b. But if we do this then we have a cycle mqgfenkbcdm which leaves out vertices r, l, p, j as well as h and a. Since we cannot then form a Hamiltonian cycle we must include edge qk. (iv) A Hamiltonian cycle is rlpjabcdmqknefghr (c) Using the Hamiltonian cycle found in (b), the edges in G but not in the cycle are lc, pf, de, bk, gq, ah, mj and nr. The edges lc, de can be drawn inside the cycle while edges pf and bk can be drawn outside the cycle but all the other edges cause a conflict so the Graph G is non-planar. (d) (i) The 4−cube Q4 has exactly the same vertices as G. Each vertex of Q4 is of degree 4, rather than of degree 3 in G. Since all the edges in G also occur in Q4, G is a subgraph of Q4. Since G is non-planar then Q4 must also be non-planar because Q4 contains the non-planar subgraph G. (ii) A Hamiltonian cycle in Q4 analogous to that in G is RLPJABCDMQKNEFGHR

Page 6: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 6 of 13

This essay is just one version of what could be produced; it is more detailed than would be expected and is included to provide an overview of the topic as well as an example. Q14. A binary tree is a rooted tree in which the number of edges arising from each vertex is at most two. The edges arising from a vertex are drawn below the vertex and can be called the left branch and right branch respectively. The height of a binary tree is the number of vertices in a path of maximum length starting at the root vertex. A balanced binary tree is one in which at each vertex there is a difference of at most one in the heights of the left and right subtrees arising at the vertex. Data can be stored at each of the vertices of a binary tree from the root at level 0 to the two vertices below it at level 1 and the possible four below that at level 2 etc. The subtree arising at each vertex is itself a binary tree so binary trees have a recursive structure. A binary tree can be constructed from a list by using a recursive divide and conquer procedure, the GROW−TREE algorithm. This picks the centre or bicentre of the list as the root vertex which then leaves a left list and a right list to each of which the same procedure can be recursively applied. Storing such a binary tree in memory can be achieved by placing each data item in the middle of three cells with the addresses of the roots of its left and right subtrees stored in the cells to left and right respectively. We can define operations Root(T), Left(T), Right(T), Maketree(T1, item, T2) and Isempty(T) to manipulate the data stored in a binary tree. These operations together with the data structure of a binary tree, form the binary tree data type. . Data is often stored in a binary tree so that the data can be searched and retrieved with ease. A binary search tree can be constructed from an ordered list by using the Grow-Tree algorithm. Each vertex v represents an item from an ordered list so that the items which come before v are placed below and to the left of v and those which come after v are placed below and to the right of v. To search a binary search tree for a particular item we compare with the root, if the item equals the root we are done. If the item is before (or less) than the root we search the left subtree while if the item is after (or greater) than the root we search the right subtree. The search process is again recursive. A binary search tree of height h has a time complexity function of O(h) and for a balanced binary search tree with n vertices the time complexity function is O(log2n). If a binary search tree is searched for a particular item which is not found within the tree then at the end of the search we are in a position to insert the item at a relevant position in the tree. This process does not necessarily produce the same tree as that which would be obtained by having an ordered list containing the item and growing the tree from scratch. The insertion of several items, in this way, into a binary search tree can quite quickly unbalance the tree and reduce its efficiency for the purpose of searching. If a reasonable number of items are inserted into a binary search tree then the tree should be reconstructed from an ordered list so that the balance of the tree is restored and it can be used for searching efficiently. There are two procedures which can be used for searching binary trees, the depth-first search (DFS) and the breadth-first search (BFS). The idea in a DFS is to go as deep as you can with the search before spreading out to other vertices. At each step we go down a level always to the left, when we can, otherwise we backtrack and go down to the right. Eventually all vertices are visited and we return to the root. We keep a record of the vertices visited in a stack. The idea in a BFS is to visit all vertices at a particular level before going to the next level down. Again we always go to the left at the start of a particular level and move to the right visiting all vertices adjacent to a particular vertex as we go. Again all vertices are eventually visited and we end at a leaf vertex furthest to the right. We keep a record of the vertices visited in a queue. Both these procedures can be applied to non-binary trees and connected graphs.

Page 7: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 7 of 13

Q15. (a) (i) The value of the flow in N1 from S to T1 is 9 (ii) SBDECFHT1 is a flow augmenting path in N1 because the forward arcs SB, BD,

DE, CF, FH and HT1 are all unsaturated, while the only reverse arc EC is carrying a non-zero flow of 2. The flow can be increased by 1, saturating DE

(iii) A flow augmenting path on which the flow can be increased by 3 units is

SBDCFHT1. A flow augmenting path on which the flow can be increased by 4 units is

SACFHT1. (iv) The value of the maximum flow in N1 from S to T1 (hence from S to H) is 17 The reason we have a maximum flow is because the value of the flow is equal to the capacity of the cut {AC, DC, DE} which is 6 + 3 + 8 = 17 which is hence a minimum cut by the maximum flow minimum cut theorem. (b) The network N2 with arc GT2 still has the same cut of capacity 17 as the network N1. So the maximum flow in N2 from S to T2 (and hence S to G) must have value 17 and is (c) If the capacity of arc AC in N is increased from 6 to 10 we can find increased flows to G and H as follows We can send the larger flow to H. The min-cut separating H from S has a capacity of

19 which is larger than the capacity of the min-cut separating G from S which is 18.

Page 8: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 8 of 13

Q16. (a) The bipartite graph of suitability is (b) The set of three applicants {A, B, D} is only qualified to do the two jobs {u, y} The marriage theorem requires every set of m applicants to be able to do m

jobs for all m ≤ the total number of applicants, so the condition has failed. (c) The new modified bipartite graph with the given initial matching in red can be labelled as follows There is an alternating path AzFvCw so there is a maximum matching

A ↔ z, B ↔ u, C ↔ w, D ↔ y, E ↔ x, F ↔ v,

(d) The total suitability score for this maximum matching is 2 + 4 + 4 + 4 + 2 + 3 = 19 (e) To get a total suitability score of 24 each of the 6 applicants must have a job with

a suitability score of 4 since this is the largest that occurs. But A has a maximum suitability score of 3 so it is impossible to achieve a total suitability score of 24.

In fact the maximum suitability score is 22 since D can only do job y leaving A with either job u or v both with suitability scores of 2.

(f) In the Hungarian algorithm we follow a procedure in which we minimise the total costs. In this case we have “suitabilities” which are the opposite of costs. Thus we must convert the “suitabilities” to costs by subtracting all entries in the table from some fixed score, say 4, and apply the Hungarian algorithm to the resulting table.

Page 9: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 9 of 13

This essay is just one version of what could be produced; it is more detailed than would be expected and is included to provide an overview of the topic as well as an example. Q17. Critical Path Analysis (CPA) is a branch of network analysis developed after the Second World War to help in the analysis, planning and completion of large scale industrial projects. It consists of a series of algorithms to construct a network to represent the project, to analyse the network and to schedule the project so it can be completed. The first step is to obtain an activity network to represent the project. There are two main ways in which this can be done. The first to be developed historically uses the arcs of the network to represent activities and the vertices to represent events. An event is a stage in the progress of the project corresponding to the start or finish of an activity. Program Evaluation and Review Technique (PERT) and Critical Path Method (CPM) both use this form of representation. It does, however, have the disadvantage that dummy activities are often needed to enable correct representation of precedence relationships and when two activities have the same start and finish events. The second method uses vertices to represent activities and arcs to connect the vertices according to the precedence relationships. This approach is easier to understand and to use to generate the activity network. Both methods use essentially the same algorithms but with a few minor modifications. An activity network can be produced from a set of precedence relationships by using the shadow vertex algorithm due to Fulkerson. Each activity is represented by a vertex and its shadow in a bipartite graph, the edges correspond to the precedence relationships and join vertex A to shadow vertex B if activity A must follow activity B. The algorithm produces a numbering of the activities so that the activity network can be constructed. Those vertices which are numbered together on each iteration are placed in successive columns in a diagram. They are then linked by arcs according to the precedence relationships which are given weights corresponding to the duration of the activity at the start of the arc. Having constructed the activity network we next find the critical or longest path. We perform two scans. The forward scan labels each vertex with its earliest start time ei (the length of the longest path from the start vertex to vertex i) and pi the number of the vertex on that longest path which precedes vertex i. The forward scan is completed by reaching the finish vertex n. The length of the critical path, the earliest completion time for the project, is en. The actual critical path is found by a backward scan using the labels pi. By finding the longest path back from the finish vertex to each vertex we can find the latest start time li for each activity. The float for an activity fi = li − ei is the longest time by which an activity can be delayed without delaying the project. For all activities on the critical path fi = 0, li = ei which is why the path is critical since any delay in the activities on this path will delay the project. The final step is to schedule the activities using a particular number of workers. It is important to realise that the length of the critical path is the least time required for a project if there is no limit on the resources or number of workers available. With a limit it may not be possible to complete the project in the critical time. An optimum schedule is one in which no worker is idle and the completion time is as close as possible to the total duration of all activities divided by the number of workers. The scheduling algorithm assigns workers to activities on the basis of some ranking, such as the value of li, and some factory rules. These rules state that no worker may be idle if there is an activity available to start, each activity must be completed by a single worker and the project must be completed as soon as possible. Despite efficient algorithms which are available for the design and analysis of activity networks there is no known efficient algorithm which will produce an optimum schedule, the only known method to solve such problems is the heuristic one described above.

Page 10: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 10 of 13

Q18. (a) A parity check matrix is an (n − k) × n matrix so n − k = 7 and n = 10.

Thus the length n = 10, the dimension k = 3 and the rate = k 3

n 10=

(b) The minimum distance of C is 5 so C can detect and correct 2 errors. (c) Given x1 = x2 = 0 we can use the parity check equations as follows Row 1 x7 = 0 Row 2 x8 = 0 Row 3 x6 + x9 = 0 If x6 = 0, x9 = 0 If x6 = 1, x9 = 1 Row 4 x10 = 0, Row 5 x3 + x6 = 0 If x6 = 0, x3 = 0 If x6 = 1, x3 = 1 Row 6 x4 + x6 = 0 If x6 = 0, x4 = 0 If x6 = 1, x4 = 1 Row 7 x5 + x6 = 0 If x6 = 0, x5 = 0 If x6 = 1, x5 = 1 Thus the two codewords are 0000000000 and 0011110010 (d) (i) (ii) (e) The error syndrome is the sum of the 4th and 8th columns of H Thus, since code C is a two error

correcting code we expect the bits in positions 4 and 8 to be in error. Thus we expect that

the codeword sent was 0100100111

3

4

5

6

7

8

9

10

0

01 0 0 0 0 0 1 0 0 0 0

x1 1 0 0 0 0 0 1 0 0 0

x1 1 0 0 0 1 0 0 1 0 0

x0 1 0 0 0 0 0 0 0 1 0

x0 0 1 0 0 1 0 0 0 0 0

x1 0 0 1 0 1 0 0 0 0 0

x0 1 0 0 1 1 0 0 0 0 0

x

x

=

1 0 0 1 0 0 0 0 0 0

1 1 0 0 1 0 0 0 0 0

1 1 1 0 0 1 0 0 0 0

H 0 1 0 0 0 0 1 0 0 0

0 0 1 0 0 0 0 1 0 0

1 0 1 0 0 0 0 0 1 0

0 1 1 0 0 0 0 0 0 1

′ =

1 2 6 7 8 9 10 3 4 5

1 2 6 7 8 9 10 3 4 5

1 0 0 1 1 1 0 0 1 0

G 0 1 0 0 1 1 1 0 0 1

0 0 1 0 0 1 0 1 1 1

′ =

1 0 0 1 0 0 1 1 1 0

G 0 1 0 0 1 0 0 1 1 1

0 0 1 1 1 1 0 0 1 0

=

1 2 3 4 5 6 7 8 9 10

1 0 0 0 0 0 1 0 0 0

1 1 0 0 0 0 0 1 0 0

1 1 0 0 0 1 0 0 1 0

H 0 1 0 0 0 0 0 0 0 1

0 0 1 0 0 1 0 0 0 0

1 0 0 1 0 1 0 0 0 0

0 1 0 0 1 1 0 0 0 0

=

0

11 0 0 0 0 0 1 0 0 0 0

01 1 0 0 0 0 0 1 0 0 1

11 1 0 0 0 1 0 0 1 0 0

10 1 0 0 0 0 0 0 0 1 0

00 0 1 0 0 1 0 0 0 0 0

01 0 0 1 0 1 0 0 0 0 1

00 1 0 0 1 1 0 0 0 0 0

1

1

=

Page 11: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 11 of 13

Q19 (a) (i) Number of varieties v = 8. Number of plots per block k = 4 (ii) The design D is not balanced since for example the concurrence of varieties 0 and 1 is once in block � whereas the concurrence of varieties 0 and 2 is twice in blocks � and �. (iii) The design D is resolvable the replicates are as above. (b) (i) For a BIBD which is resolvable and with v = 8 and k = 4 we require

b = r s, v = s k ∴ 8 = 4 s ∴ s = 2

(ii) Thus b = 2 r now λ (v − 1) = r (k − 1) ∴ 7 λ = 3 r

We must have r as a multiple of 7, the smallest value of r = 7 when λ = 3

∴ The smallest value of b is b = 2 × 7 = 14

(c) (i) The parameters of the BIBD ∆ in (b) are

b = 14, r = 7, v = 8, k = 4, λ = 3 as explained in (b)

(ii) The complement ∆ of ∆ has parameters

v v 8, b b 14, r b r 14 7 7, k v k 8 4 4= = = = = − = − = = − = − =

The complement ∆ is isomorphic to ∆ and so must also be resolvable.

The blocks are such that within each replicate when we form the complement the varieties swap between blocks so the replicates remain unchanged.

Both ∆ and ∆ are found from Construction 4 (Hbk P 45) with n = 1 and thus

p = 7, v = p + 1 = 8, b = 2p = 14, r = p = 7, k = (p + 1)/2 = 4, λ = (p − 1)/2 = 3.

0 1 2 3 4 5 6 7

2 3 4 5 6 7 0 1

3 4 5 6 7 0 1 2

5 6 7 0 1 2 3 4

� � � � � � � �

0 4 1 5 2 6 3 7

2 6 3 7 4 0 5 1

3 7 4 0 5 1 6 2

5 1 6 2 7 3 0 4

� � � � � � � �

Page 12: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 12 of 13

This essay is just one version of what could be produced; it is more detailed than would be expected and is included to provide an overview of the topic as well as an example.

Q20 A Kinematic system is a collection of rigid links and interconnections between them called joints such that the system overall allows movement in particular ways. It is the objective of a mobility formula to calculate the number of ways in which the system can move in terms of some combination of the numbers of links and joints. Conventionally, one of the links is chosen as fixed and the mobility of the kinematic system is defined as the number of independent ways in which the system can move relative to the fixed link. In general the links of the system have a certain number of degrees of freedom F and these are reduced by the way in which the joints between the links introduce constraints C on the system. Thus the general definition of the mobility M of a kinematic system is M = F − C. If M > 0 the system has mobility, while the system is rigid otherwise. If M = 0 the system is just rigid but it is over constrained if M < 0. The general formula for M is specialized in two alternative ways to produce two different mobility formulae for planar kinematic systems. In the first case, if we have a system consisting of n links with one fixed and the other n − 1 moving freely in a plane there are 3(n − 1) degrees of freedom. But if the system contains j binary revolute joints, each will introduce 2 constraints and there will be 2j constraints in total. Thus we obtain the first mobility criterion which applies to a system with n links and j binary revolute joints and for which M = 3(n − 1) − 2j In the second case we have a system where the joints can have any degree of multiplicity whatsoever and the links are specified in terms of their type. If we have nr r-ary links and the

maximum multiplicity of any link is s then the total number of links s

rr 0nn ==∑ . If there are jr r-

ary joints and the maximum multiplicity of any joint is t then the total number of joints t

rr 2jg ==∑ .

Now since each r-ary joint is equivalent to r − 1 binary revolute joints, if we expand the multiple joints we obtain the total number of binary revolute joints in the expanded system as

trr 2

(r 1)jj = −=∑ . Hence t

rr 2r jg j =+ =∑ . Now

s tr rr 0 r 2

r n r j= ==∑ ∑ on counting the total number of

connection points in two different ways, so s

rr 0r ng j =+ =∑ . Substituting into M = 3(n − 1) − 2j we

obtain s s

r rr 0 r 0n r nM 3 3 2( g)= == − − −∑ ∑ which on expanding and collecting terms gives the

second mobility criterion as

sr0 1 r 2

M 2g 3n n (2r 3) n 3== + + − − −∑

A special case of this more general mobility criterion applies to kinematic systems with only binary links and multiple joints, which can be represented by a direct graph, and for which M = 2g − n2 − 3. Systems represented by an interchange graph have only binary joints and so the first mobility criterion M = 3(n − 1) − 2j applies.

While the above formulae apply in general, circumstances arise in which they may fail. The first is when special geometry, such as the length of a link or the parallelism of links may cause either the loss of some mobility which would otherwise be present or an increase in mobility over what might be expected. Also the existence of over constrained subsystems sometimes causes a system to have mobility in part when the mobility formulae would indicate rigidity. Different mobility formulae to those given above can be derived for two dimensional systems involving non-revolute joints and for three dimensional systems.

Page 13: Q1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) (b) (c) · PDF fileQ1. (a) Degree Sequence (2, 2, 3, 3, 3, 5) ... in red also includes the edge de then it could not ... The value of the

MT365 Exam 2010 Solutions Page 13 of 13

Essay Outlines

Q14. Introduction −.definition of a binary tree, height and balance.

Storing Data in a binary tree – using the Grow -Tree algorithm. Binary Tree Data Type – storage in memory and the operations.

Binary Search Trees – time complexity functions. Insertions in a Binary Search Tree – the need for rebalancing

Conclusion – the depth-first search (DFS) and the breadth-first search (BFS)

Q17. Introduction − the origin of Critical Path Analysis.

The two methods of representation − activity as edge, activity as vertex.

Activity Network construction − Fulkerson’s algorithm.

Activity Network Analysis − Critical Path, earliest and latest times, floats.

Scheduling − resources available, optimum schedule, factory rules.

Conclusion – no efficient scheduling algorithm.

Q20. Introduction − Kinematic Systems, Links and Joints

Freedoms and Constraints M = F − C

The First Mobility Criterion

The Second Mobility Criterion

Special Cases for systems with direct graphs or interchange graphs.

Conclusion − situations in which the formulae may fail, other formulae.