Research Article

A Method to Extract Causality for Safety Events in Chemical Accidents from Fault Trees and Accident Reports

Algorithm 1

The CEFTAR algorithm.
Input: the set of fault trees (FTS) and accident reports (ARS).
Output: the set of event pairs with causality (ECS).
(1)Construct the set of events (ES) and event pairs (EPS).
(2)ECS = EPS = ES = Φ;
(3)Achieve word segmentation for ARS by the tool “Jieba” and build the corpus CA;
(4)For each word w in CA, train a vector for w by “Word2vec”;
(5)For each ft FTS
(6) For each neft.E
(7)  {Identify the event e in the node ne;
(8)  ES = ES ∪ {e}; }
(9)For ∀ei and ej ES, build event pair <ei, ej> and EPS = EPS ∪ {<ei, ej>};
(10)For each <ei, ej> EPS
(11)  If ft.G, s.t.: eiI()ejO() or ejI()eiO() then ECS = ECS ∪ {<ei, ej>};
(12)  Else { construct ISFeij and use ve represent the vector of ISFeij
(13)    compute Seij;
(14)    For each Sep sentence in Seij
(15)    Build the vector sp for Sep, Sp = Σαithit;
(16)    Generate the vector vs. for Seij;  = ΣαiSi;
(17)    y = argmax(softmax(( + )));
(18)    if (y = = 1) then ECS = ECS∪{<ei, ej>}; }
(19)Return (ECS)
(20)}