Interpretive Structural Modeling (ISM) is a technique to establish the interrelationships between elements of interest in a specific domain through experts’ knowledge of the context of the elements. Every discipline is expanding its frontier and multiple disciplinary approaches have become essential to solve complex problems. This leads to the study of a large number of constructs of interests simultaneously. These constructs may have been identified in theory or practice. Warfield in the 1970’s developed a technique to establish an interrelationship model between variables known as interpretive structural modeling (ISM). The holistic picture of important constructs in the structured form derived from ISM technique helps the practitioners to solve the problem effectively. This technique is widely used due to its simplistic procedure and profound value addition in problem solving in different domains.
This section explains the functions and features of VBA to develop SmartISM, an end-to-end graphical software to automate processes of ISM and MICMAC.
Firstly, the SSIM matrix defined by DMs is entered in Excel, and serves as the basic input for other steps of ISM. For n variables, the size of SSIM will be n by n. DMs will compare n(n + 1)/2 or nC2 unique pairs of variables and assign one of the relationships using symbols V, A, X, or O, as explained earlier. Thereafter, eight VBA macros will derive matrices of RM, FRM, CM, and RCM; level partitioning; and draw diagrams of digraph, final model, and MICMAC. RM is a binary form of SSIM using conversion rules for V, A, X, and O as explained earlier and keeping 1s at the diagonal positions of the matrix. RM also contains the driving and dependence powers for each variable.
The second function FRM requires calculation of transitive relations among variables. For manual calculation, RM can be visualized as a digraph with variables representing nodes and 1s in the RM representing the directed edges. By tracing different paths, transitive relations can be identified. For a large number of variables the process would be tedious and leads to errors, whereas a simple Warshall algorithm [67] for transitive closure can be used to automate it. This algorithm results in generalized transitivity if applied in-place, otherwise it will give second-order or two-hop transitivity. Transitive relations are marked with 1* in FRM. Moreover, the 1s and 1*s are counted in rows and columns to calculate the driving and dependence powers respectively for each variable.
The next step is to calculate the ranks of the variables through level partitioning. A new matrix LP is defined with five columns namely elements (Mi), reachability set R(Mi), antecedent set A(Mi), intersection set R(Mi)∩A(Mi) and level, and n rows. For a specific variable Mi in FRM, non-zero cells in the row comprise its reachability set and their corresponding identifiers are kept in the LP row of the same variable Mi. Similarly, non-zero cells in the column comprise its antecedent set and their corresponding identifiers are kept in the LP row of the same variable Mi. The intersection sets are calculated for all variables and variables having the same reachability and intersection sets are given first rank. In the next iteration, identifiers of all the ranked variables are removed from reachability, antecedent, and intersection sets. Again, variables having the same reachability and intersection sets are given the second rank and iteration continues until all the variables are ranked. The iteration results may be copied in one Microsoft Excel Sheet.
Once the variables are ranked, a digraph can be developed easily by positioning the variables as per their ranks with the help of CM. CM is row and column wise sorted FRM as per variables’ ranks or levels. Directed edges can be drawn between variables as per non-zero cells in the CM. Two shape objects Oval and Connector are needed to automate the drawing of digraph. Positing of ovals needs to be carefully assigned, as there can be multiple ovals in one level. The simplest way to identify the needed objects in drawing is to auto record a macro and draw a sample. Afterwards, the macro can be manually edited and static names of the objects can be made dynamic for easy handling in the loop structures of VBA.
The final model represents variable names in the rectangular boxes in place of their identifiers in ovals and tries to remove maximum possible transitive links from the digraph. Transitive reduction is a technique to reduce the number of transitive links. Transitive reduction is complicated, specifically for the directed cyclic graphs, and the algorithm may even distort the structure of the digraph. Therefore, an algorithm was designed to develop a reduced conical matrix (RCM) that removes maximum links without changing the structure of digraph and reachability of elements. The main logic is to remove incoming links from second lower-level variables from the CM and results in RCM. RCM was used to draw automated final ISM model using Rectangle and Connector shape objects, as in the following pseudo code.
Lastly, a macro was written to draw a MICMAC diagram. The basic input for this diagram was the dependence and driving powers of variables from FRM. This was the longest macro as it required many shape objects such as Line, Connector, Rectangle, Oval, and Textbox. However, it didn’t require any special algorithm to be used. Nevertheless, logic to initiate, aggregate, and draw different objects based on number of variables, and dependence and driving powers in a specified space, required careful arrangement.
For the details of the functions the pseudo codes have been provided in the paper and also for demonstration of SmartISM a video has been attached.
This entry is adapted from the peer-reviewed paper 10.3390/su13168801