{'fraction_non_alphanumeric': 0.030714285714285715, 'fraction_numerical': 0.0, 'mean_word_length': 5.6084905660377355, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Solving Optimal Satisfiability Problems Through Clause-Directed A*

Real-world applications, such as diagnosis and embedded control, are increasingly being framed as OpSAT problems problems of finding the best solution that satisfies a formula in propositional state logic. Previous methods, such as Conflict-directed A*, solve OpSAT problems through a weak coupling of A* search, used to generate optimal candidates, and a DPLL-based SAT solver, used to test feasibility. This paper achieves a substantial performance improvement by introducing a tightly coupled approach, Clause-directed A * (CIA *). ClA* simultaneously directs the search towards assignments that are feasible and optimal. First, satisfiability is generalized to state logic by unifying the DPLL satisfiability procedure with forward checking. Second, optimal assignments are found by using A* to guide variable splitting within DPLL. Third, search is directed towards feasible regions of the state space by treating all clauses as conflicts, and by selecting only assignments that entail more clauses. Finally, ClA* climbs towards the optimum by using a variable ordering heuristic that emulates gradient search. Empirical experiments on real-world and randomlygenerated instances demonstrate an order of magnitude increase in performance over Conflict-directed A*. Thesis Supervisor: Brian C. Williams Title: Associate Professor