Case-by-Case Problem Solving Pei Wang Temple University Philadelphia, USA
Algorithmic Problem Solving Use a computer to solve a problem: Problem is a class, solution is an algorithm e.g., “sorting” to “quicksort” Problem is an instance, solution is a result e.g., “sort [3, 2, 4, 1]” to “[1, 2, 3, 4]” The former is done by human, the latter is done by computer following the algorithm
No algorithm for it? What if the computer has no algorithm for a problem instance? Use a general-purpose algorithm e.g., state-space search Find an algorithm first e.g., machine learning
Solving it without algorithm?! How about to directly solve the problem instance without following an algorithm? “Nonsense! How can a computer run without algorithms?” “But this process can still be carried out by algorithms not defined for this problem. An algorithm for problem P is not an algorithm for problem Q, right?”
Case-by-case problem solving NARS represents a problem (instance) as an inference task, to be processed by a set of general-purpose inference rules Rule selection is knowledge-driven, rather than algorithm-guided Knowledge selection is context-sensitive Inference process is resource-restricted
Scopes of input-output Each operation in NARS is controlled by certain algorithm, with fixed input-output mapping (see code)code The lifelong experience of the system fully determines its lifelong behaviors (see examples)examples However, there is no function that maps “problem” to “solution”
Properties of CPS CPS and APS are suitable for different (knowledge/resources) situations In CPS, the following notions are different: Problem Solution Solvable problems Resource cost of a problem Scaling up …