Competence Set Expansion Strategy and Application with General Connectivity Parameters

Each decision making problem can be satisfactorily solved by using the expanding technologies of the Competence Set Analysis, where the competence set consists of the decision maker’s ideas, knowledge, information, experience, skills and capacities, etc., directly or indirectly related to the decision making problem. This article proposes a heuristic method to find the optimal competence set expansion strategy with the connectivity parameters being general, that is, either symmetric or asymmetric. The optimality of the method is proven, and its applications in the personnel recruitment and training planning problems are discussed. Some conclusions and suggestions to be developed in a further work are included.


Introduction
Based on the decision maker's acquired competence set and the truly needed competence set to solve the decision making problems, the competence set expanding technology concentrates its study on the strategy of how and from where to start to expand the acquired competence set to the needed competence set to enable the decision maker or makers to confidently and successfully solve his, her or their decision making problems.Given the connectivity parameters m( , ) between the elements of the competence set (CS) on the habitual domains (HD), where CS HD, the problem of how to expand from one CS to another CS is studied analytically and mathematically by Yu and Zhang (1990) when m( , ) is symmetric, and Shi and Yu (1996) when m( , ) is asymmetric.Li and Yu (1994) did some research work by means of deduction graphs without cycles when there are intermediate elements and multilevels.Under risky and uncertainty cases, Feng (2001) discussed the competence expansion problems and given several expansion strategies.Very Recently, Yu and Larbani (2009) discussed application of the competence set expansion in the game theory and several new ideas are put forwards.But they all studied using mathematical programming algorithms, especially, the integer programming algorithms, so even a simple problem often needed to be solved by using some software package.Furthermore, even though all these papers theoretically deal with the general cases, practically all can be only used to find the expanding process from a given skill, instead of a given set of skills.
In the article, as far as the general connectivity parameters m( , ) ( maybe negative or positive) are concerned, based upon the digraphs, a heuristic method is given to find the optimal expansion strategy within a certain competence set or habitual domain.This heuristic method can also be used to optimally expand the acquired competence set to the needed competence set or habitual domain.The optimality and applications of the method are also discussed.This heuristic method differs from the methods developed in papers [1,2,3] in the following aspects: (1) It can deal with the case that there are cycles in the digraphs; (2) It can begin from any given acquired skills set; (3) It is a heuristic method rather than a analytical method; (4) The expansion process obtained may be not in the form of sequences which are the arrangements of the required skills; (5) It can handle the case that there are multivalues between the skills; (6) It is some kind of extension of the deduction graph method [3].

The Heuristic Method Development for Expansion Strategy
Suppose the discussed universal is some habitual domain HD which has a finite number ( say n ) of elements, that is, HD={ x 1 , x 2 , ... , x n }, then connectivity parameters m( , ) between the elements in HD can be represented by an n n matrix M=(m ij ) n n where m ij = m(x i ,x j ).Based upon the set HD and matrix M, a digraph can be constructed with the vertices corresponding to elements x 1 , x 2 , ... , x n , each arc representing the way a connectivity may be reached between any two elements in {x 1 , x 2 , ... , x n }, and each arc weight being the corresponding connectivity parameter between the two elements.Let the deducted digraph from the HD and M be denoted by DG(HD, M).Definition 1.An arborescence is defined as a directed tree (there is only one directed path between any pair of vertices or skills) in which no more than two arcs are directed into the same vertex.A branching is defined as a forest (a set of unconnected trees) in which each tree is an arborescence.A spanning arborescence of the digraph is an arborescence that is also a spanning tree.A spanning branching is any branching that includes every vertex in the digraph.
Definition 2. By an expansion strategy, we mean a spanning arborescence or spanning branching, that is, a directed spanning tree or a set of unconnected directed spanning trees in each of which no more than two arcs are directed into the same skill (vertex).
Definition 3. The connectivity of an arborescence (branching) is defined as the sum of the weights of the arcs in the corresponding arborescence (branching).A maximum arborescence (branching ) of a digraph is any arborescences (branching) of the digraph with the largest possible weight sum.Definition 4.An expansion strategy is optimal with respect to the sum operator among the connectivity parameters if it is a maximum spanning arborescence (if one exists).Definition 5.An expansion strategy from a specified skill (vertex) is a strategy with the root being the vertex, and is optimal with respect to the sum operator if it is a maximum spanning arborescence rooted at the vertex.Definition 6.An expansion strategy from a specified set of the skills (vertices) is a strategy with the root being within the set, and it is optimal with respect to the sum operator if it is a spanning arborescence rooted at some vertex in the set with the largest sum of the weights except the weights within the set.
From the above the definitions, we know that the concept of branching is more general than that of arborescences.Given the DG(HD,M), if we can find the maximum branching, then according to the following observations, we can easily find the maximum spanning arborescence ( optimal expansion strategy) by adding to each arc a large enough positive constant N.
Firstly, a spanning branching is a spanning arborescence if and only if it has exactly one less arc than vertices.No branching has more arcs than this.Secondly, an optimum branching contains no arc with negative weight, and indeed may be empty if all connectivity parameters are not positive, that is, all m ij 0. And it is worth noting that even if all parameters are positive and the digraph contains a spanning arborescence, an optimum branching need not be an arborescence.Thirdly, a spanning arborescence which is optimum relative to weights m ij is also optimum relative to weights m ij +k for any constant k, and m ij k for any positive constant k( if all m ij 's are not negative, since every spanning arborescence has the same number of arcs.Fourthly, if there is a spanning arborescence in some digraph DG(HD,M), then an optimum one, i.e., one which has a maximum total weight can be found as an optimum branching in the digraph DG (HD,M+h) where M+h means the matrix (m ij +h), and h m ij .This is because the constant h is larger than the difference in total weight (relative to weights m ij ) of any two branchings in the digraph, so an optimum branching in the digraph, relative to weights m ij =m ij +h will be a branching with a maximum number of arcs, and in particular, it will be a spanning arborescence if and only if the digraph contains a spanning arborescence.
The optimal expansion strategy from the specified skill, say x 0 , can be obtained using the above method by adjoining a new arc carrying arbitrary weight which is directed toward x 0 and from a new vertex having no other incident arcs, and letting the arcs directed toward x 0 have zero weights.
The optimal expansion strategy from the specified skills set, say Sk, can be found using the above method by setting the weights with the heads in the set be zero and adjoining a new arc carrying an arbitrary weight which is directed toward some x 0 Sk and from a new vertex having no other incident arcs.The selection of x 0 Sk can be arbitrary.If the optimum exists, then there must exist some x 0 Sk such that the corresponding spanning arborescence is rooted at the vertex x 0 .
There may be many optimal strategies.
We shall now proceed to describe the heuristic method to find the maximum branching.
The maximum branching method uses two buckets, the vertex bucket and the arc bucket.The vertex bucket contains only vertices that have been examined; the arc bucket contains arcs tentatively selected for the maximum branching.The arcs in the arc bucket form a branching.Initially both buckets are empty.
The method successively examines the vertices in any arbitrary order.The examination of a vertex consists entirely of selecting the arc with the greatest positive weight that is directed into the vertex under examination (if any).If the addition of this arc to the arcs already selected for the arc bucket maintains a branching, then this arc is added to the arc bucket.Otherwise, this arc would form a cycle with some arcs already in the arc bucket.If this happens, then a new, smaller digraph is generated by "shrinking" the arcs and vertices in this cycle into a single vertex.Some of the arc costs are judiciously altered in the new, smaller digraph.The vertex and arc buckets are redefined for the new digraph as containing only their previous contents that appear in the new digraph.The examination of each vertex continues as before.The process stops when all vertices have been examined.
Upon termination, the arc bucket contains a branching for the final digraph.The final digraph is expanded back to its predecessor by expanding out its "artificial" vertex into a cycle.All but one of the arcs in this cycle is added to the arc bucket.The arc that is not added to the arc bucket is carefully selected so that the contents of the arc bucket retain a branching.This process is repeated until the original digraph is regenerated.The arcs in the arc bucket upon termination turn out to be a maximum branching.Denote the original digraph for which the maximum branching is sought by G 0 , and denote each successive digraph generated from G 0 by G 1 , G 2 ,.....The vertex and arc buckets used for these digraphs will be denoted by V 0 , V 1 , ... and A 0 , A 1 , ..., respectively.We are now ready to state the method formally.
Step 1.If all vertices of G i are in bucket V i , go to step 3. Otherwise, select any vertex v in G i that is not in bucket V i .Place vertex v into bucket V i .Select an arc with the greatest positive weight that is directed into v.If no such arc exists, repeat step 1; otherwise, place arc into bucket A i .If the arcs in A i still form a branching repeat step 1; otherwise, go to step 2.
Step 2. Since the addition of arc to A i no longer causes A i to form a branching, arc forms a cycle with some of the arcs in A i .Call this cycle C i .Shrink all the arcs and vertices in C i into a single vertex called v i .Call this new digraph G i+1 .Thus, any arc in G i that was incident to exactly one vertex in C i will be incident to vertex v i in digraph G i+1 .The vertices of G i+1 are v i and all the vertices of G i not in C i .Let the weight of each arc in G i+1 be the same as its weight in G i except for the arcs in G i+1 that are directed into v i .For each arc (x,y) in G i that transforms into an arc (x,v i ) in G i+1 , let m(x,v i )=m(x,y)+m(r,s) -m(t,y) --------------transformation equation where (r,s) is the minimum weight arc in cycle C i , and where (t,y) is the unique arc in cycle C i whose head is vertex y.At this point, observe that m(r,s) 0, m(t,y) m(r,s) and m(t,y) m(x,y) since arc (t,y) was selected as the arc directed into vertex y.Let V i+1 contain all the vertices in G i+1 that are in V i , that is, V i+1 =G i+1 V i .Thus, v i V i+1 .Let A i+1 contain all the arcs in G i+1 that are in A i , i.e., A i+1 =G i+1 A i .Thus, A i+1 contains the arcs in A i that are not in C i .
Increase i by one, and return to step 1.
Step 3.This step is reached only when all vertices of G i are in V i and the arcs in A i form a branching for G i .If i=0, stop because the arcs in A 0 form a maximum branching for G 0 .If i 0, two cases are possible: (a) Vertex v i-1 is the root of some arborescence in branching A i .
(b) Vertex v i-1 is not the root of some arborescence in branching A i .
If (a) occurs, then consider the arcs in A i together with the arcs in cycle C i-1 .These arcs contain exactly one cycle in digraph G i-1 , namely C i-1 .Delete from this set of arcs the arc in C i-1 that has the smallest weight.The resulting set of arcs forms a branching for digraph G i-1 .Redefine A i-1 to be this set of arcs.
If (b) occurs, then there is a unique arc (x,v i-1 ) in A i that is directed into vertex v i-1 .This arc (x,v i-1 ) corresponds in digraph G i-1 to another arc, say arc (x,y), where vertex y is one of the vertices in cycle C i-1 that was shrunk to form vertex v i-1 .
Consider the set of arcs in A i together with the arcs in cycle C i-1 .This set of arcs contains exactly one cycle in G i-1 , namely C i-1 , and exactly two arcs directed into vertex y, namely arc (x,y) and an arc in cycle C i-1 .Delete the latter arc from this set of arcs.The remaining arcs in this set form a branching in digraph G i-1 .Redefine A i-1 to be this set of arcs.Having redefined A i-1 , decrease i by one unit and repeat step 3.
The above maximum branching method can also be used to find (1) a minimum branching, (2) a maximum spanning arborescence (if one exists), (3) a minimum spanning arborescence (if one exists), (4) a maximum spanning arborescence rooted at a specified vertex (if one exists), and (5) a minimum spanning arborescence rooted at a specified vertex ( if one exists), (6) a maximum spanning arborescence rooted at a specified vertices set (if one exists), (7) a minimum spanning arborescence rooted at a specified vertices set (if one exists).

Proof of the Optimality of the Method
Consider any digraph G t produced by the method and consider the branching A t produced by step 3 for digraph G t .First, it will be shown that if A t is a maximum branching for digraph G t , then branching A t-1 is a maximum branching for digraph G t-1 .
To prove this, some definitions are needed.Let G denote the subdigraph consisting of all arcs in G t-1 not directed into a vertex in cycle C t-1 .Let G denote the subdigraph consisting of all the arcs in G t-1 not in G .Thus, every arc of G t-1 is present in exactly one of these subdigraphs G and G .Let A t-1 denote the arcs in A t-1 that are in G ,and let A t-1 denote the arcs of A t-1 that are in G .Clearly, A t-1 and A t-1 are branchings in G and G , respectively.
If branching A t-1 is not a maximum branching for digraph G t-1 , then there exists some branching B with greater total weight.Let B denote the arcs in B that are in G , and let B denote the arcs of B that are in G .Since B is a maximum branching, it follows that either B weighs more than A t-1 or B weighs more than A t-1 .
Claim 1: A t-1 is a maximum-weight branching for G .
Claim 2: A t-1 weighs as much as B .
If both claims 1 and 2 are true, it follows that A t-1 must be a maximum branching for digraph G t-1 .Note that the branching A i produced by the method for the terminal digraph G i is a maximum branching since it contains a maximum positively weighted arc directed into each vertex in G i if such an arc exists.Since the method produces a maximum branching for the terminal digraph G i , then if both claims 1 and 2 are true, then the method must produce a maximum branching A i-1 for G i-1 .By repeating this reasoning, we can conclude that if claims 1 and 2 are true, then the branching A 0 produced by the method is a maximum branching for the original digraph G 0 .
Hence, it remains only to show that claims 1 and 2 are valid.
Proof of claim 1. Suppose that cycle C t-1 contains n vertices.There is one arc with positive weight directed into each of these n vertices in digraph G (otherwise, the method would not have formed cycle C t-1 ).Since there are only n vertices in G that have arcs directed into themselves, a maximum branching for G cannot contain more than n arcs.Moreover, no branching in G can have weight exceeding the weight of cycle C t-1 , which consists of the maximum positive-weight arc directed into each of the n vertices in cycle C t-1 .However, at least one of the arcs in C t-1 must be absent from any maximum branching for G since a branching cannot contain a cycle.Thus, at least one of these n vertices, say vertex y C t-1 , must either have no branching arc directed into it or else have an arc (x,y), x C t-1 , directed into it.
For each vertex z C t-1 , construct a branching B z in G as follows: (a) Include all arcs in cycle C t-1 except the arc in cycle C t-1 that is directed into vertex z.
(b) Include any maximum positive-weight arc (x, z), where x C t-1 .
Select the branching B z * with the greatest weight.From the transformation equation , branching B z * is the branching A t-1 generated by the method.
Consider any branching B 1 in G that is not of the form B z .If only one of the arcs of C t-1 is not in B 1 , it follows that B 1 cannot be a maximum branching for G since it is not of the form B z .If two or more arcs of C t-1 are not in B 1 , then either (1) each of these arcs is replaced by an arc of smaller weight directed into the same vertex or (2) no arc is directed into this vertex.In either case, this results in the decrease of the weight sum of arcs in the branching directed into the vertex.Hence, B 1 cannot be a maximum branching for G .Thus, A t-1 is a maximum branching for G , and we can assume, without loss of generality, that A t-1 is identical to B .This concludes the proof of claim 1.

Proof of Claim 2. Two cases are possible:
(a) Branching A t contains an arc (x, v t-1 ) directed into vertex v t-1 .
(b) Branching A t does not contain an arc directed into vertex v t-1 .
Case (a): By hypothesis, A t is a maximum branching for G t and contains an arc (x,v t-1 ) directed into v t-1 .From claim 1, B is identical to A t-1 and hence B contains an arc (x,y), where x C t-1 and y C t-1 .Since B is a branching in G t-1 , it follows that B cannot contain a path of arcs from a vertex in C t-1 to vertex x.Thus, B must be a maximum branching for G that does not contain a path of arcs from a vertex in C t-1 to vertex x.
Each arc in G corresponds to an arc with identical weight in G t .Moreover, each branching in G corresponds to a branching in G t with identical weight.Consequently, if A t-1 is not a maximum branching in G that contains no path of arcs from a vertex in C t-1 to a vertex x, then A t is not a maximum branching in G t that contains arc (x, v t-1 ), which is impossible.Hence, A t-1 has the same weight as B , which proves the claim for case (a).
Case (b): Each arc in G corresponds to an arc with identical weight in G t .By hypothesis A t is a maximum branching for G t .Since no arc in A t is directed into v t-1 , it follows that every arc in A t corresponds to an arc in A t-1 .Moreover, any branching in G corresponds to a branching in G t with the same weight.Hence, if A t-1 were not a maximum branching in G , then A t would not be a maximum branching in G t , which is a contradiction.Thus, A t-1 must be a maximum branching in G and have the same weight as B , which completes the proof of claim 2. #

Applications in Personnel Recruiting and Training Program
Consider an available position which needs several skills, say 4, x 1 , x 2 , x 3 , x 4 , the connectivity parameters among the skills are represented by the following matrix: Insert Table 1 here The Research Committee's task is (1) if there is no candidate who has all of the four skills, how to select one of the candidates; (2) if each candidate only has one skill ( whether different or same) and the number of the candidates is equal to or greater than that of the needed skills, how to select; (3) if the Committee prefers some candidate, how to expand his or her acquired skills so that he or she can be qualified for the position.
Suppose the only criterion to be considered is the connectivity parameters among the skills.Problem (1) is a compound problem for problems (2) and (3), so the basic problems are (2) and (3).Furthermore, problem (2) is a problem to find the optimal expansion strategy, problem (3) is a problem to find the optimal expansion strategy from some specified skill or skills set.m ij =4.1, so let h=5, and m ij =m ij +h.The adding results form the following matrix: Insert Table 2 here The process of finding the optimal expansion strategy is as follows.
The method will arbitrarily examine the skills or vertices in the subscript numerical order.The result of the examination of the first two skills is shown as follows: Insert Table 3 here After the skill x 3 has been examined, the arcs in bucket A 0 no longer form a branching since they contain a cycle (x 2 ,x 3 ), (x 3 ,x 2 ).At this point, the method shrinks this cycle into a vertex (or skill) v 0 .A new matrix or digraph resulting from this shrinking is following: Insert Table 4 here The result of the examination of the skills for the above matrix or digraph is following: Insert Table 5 here At this point, the method has generated a maximum branching for the above matrix consisting of arcs (x 4 ,v 0 ), (x 4 ,x 1 ).Using this branching, step 3 expands v 0 back into its original cycle and adds arcs (x 3 ,x 2 ), (x 2 ,x 3 ) to the arcs (x 4 ,v 0 ), (x 4 ,x 1 ) already in the branching.Next, arc (x 3 ,x 2 ) with the smaller weight is deleted from the branching so that only one branching arc, namely (x 2 ,x 3 ) is directed into x 3 .The resulting branching consists of arcs (x 4 ,x 2 ), (x 2 ,x 3 ), (x 4 ,x 1 ).The total weight of this branching equals 5.5+5.4+5.6=16.5, which is the maximum possible weight.
So, the committee should select the candidate who has the skill x 4 .If no candidate has the skill x 4 , the problem becomes problem (3).Now suppose the committee prefers the candidate who only has the skill x 2 , then how does the committee expand his or her skills so as to fit the position?By adding a "skill" x 0 , the following matrix is formed: Insert Table 6 here By adding the constant h=6, the following matrix is formed: Insert Table 7 here The following result is reached: Insert Table 8 here The shrinking process is performed because of the cycle (x 4 , x 1 ), (x 1 , x 4 ), and the corresponding result is as follows: Insert Table 9 here The next examination result is as follows: Insert Table 10 here The maximum branching is obtained which consists of the arcs (x 2 , v 0 ), (x 0 ,x 2 ) , (x 2 ,x 3 ).Eliminating the (x 1 ,x 4 ) from cycle (x 1 ,x 4 ) , (x 4 ,x 1 ) , finally, we get the optimal expansion strategy: (x 0 ,x 2 ) , (x 2 ,x 3 ), (x 2 ,x 4 ) , (x 4 ,x 1 ) with a maximum weight 7.0+6.4+6.4+6.6=26.4.So the optimal expansion strategy is x 2 x 3 , x 2 x 4 , x 4 x 1 .
Furthermore, suppose the candidate the committee preferred has the skills x 1 and x 2 , then how could the candidate expand his or her skills so as to fit the position?
Add a new vertex x 0 and arc (x 0 , x 1 ) to the original digraph, and form a new matrix as follows: Insert Table 11 here The examination result is as follows: Insert Table 12 here The optimal expansion strategy has been obtained: x 0 x 1 , x 2 x 3 , x 1 x 4 , i.e., x 2 x 3 , x 1 x 4 with the total weight 6.4+6.5=12.9.

Table 1 .
The skill matrix

Table 3 .
The first two skills examination result

Table 4 .
The new skill matrix after first shrinking process

Table 6 .
The skill matrix for new problem