  For an uncontrollable system, adding leaders and adjusting edge weights are
two methods to improve controllability. In this paper, controllability of
multi-agent systems under directed topologies is studied, especially on leader
selection problem and weight adjustment problem. For a given system, necessary
and sufficient algebraic conditions for controllability with fewest leaders are
proposed. From another perspective, when leaders are fixed, controllability
could be improved by adjusting edge weights, and therefore the system is
supposed to be structurally controllable, which holds if and only if the
communication topology contains a spanning tree. It is also proved that the
number of fewest edges needed to be assigned on new weights equals the rank
deficiency of controllability matrix. An algorithm on how to perform weight
adjustment is presented. Simulation examples are provided to illustrate the
theoretical results.
