Research Article
Set-Based Differential Evolution Algorithm Based on Guided Local Exploration for Automated Process Discovery
Algorithm 4
Pseudocode of the guided local exploration.
(1) | foreach ind in population do | (2) | selected ⟵ randomly select an activity from ind | (3) | mutationType ⟵ randomly select a direction for exploration | (4) | if rand < 1/3 do // randomly add an arc | (5) | if mutationType = “input” do | (6) | precursor ⟵ select a precursor of selected activity which is not in | (7) | arc ⟵ <precursor, selected> | (8) | else | (9) | successor ⟵select a successor of selected activity which is not in | (10) | arc ⟵ <selected, successor> | (11) | if add arc is allowed in taboo list do | (12) | Add arc into ind | (13) | else go to 5 | (14) | else if rand < 2/3 do // randomly delete an arc | (15) | if mutationType = “input” do | (16) | precursor ⟵ select an activity from | (17) | arc ⟵ <precursor, selected> | (18) | else | (19) | successor ⟵ select an activity from | (20) | arc ⟵ <selected, successor> | (21) | if delete arc is allowed in taboo list do | (22) | Delete arc from ind | (23) | else go to 15 | (24) | else // redistribute the node | (25) | if mutationType = “input” do | (26) | Redistribute | (27) | else | (28) | Redistribute |
|