Skip to main content
. 2018 Mar 29;18(4):1016. doi: 10.3390/s18041016
Algorithm 7. Pseudocode of CCDGA*.
CCDGA*(SD, obs, k)
Inputs: SD, system description in the form of CNF
 obs, observations of observed variables
   k, the number of diagnosis want to obtain
Output: Ω, the diagnosis set consistent with SD and obs
conflicts = {}, consistencies = {}
do
  ω = A*_BEST_CANDIDATE(conflicts, consistencies, all_components)
  atom_true_clause = consistency variables or valid true clauses in the first consistency check
  conf_atom_clause = conflict variables or valid false clauses
  if(!CHECK_CONSISTENCY(SD, obs, ω))
    conflicts t = conflicts + MIN_CONFLICTS (conf_atom_clause)
    consistencies = MAX_CONSISTENCIES(atom_true_clause) in the first consistency check
  else
    add ω into Ω
while(size of Ω < k)
return Ω