# How can these 7 AI problem characteristics help me decide on an approach to a problem?

If this list1 can be used to classify problems in AI ...

• Decomposable to smaller or easier problems
• Solution steps can be ignored or undone
• Predictable problem universe
• Good solutions are obvious
• Uses internally consistent knowledge base
• Requires lots of knowledge or uses knowledge to constrain solutions
• Requires periodic interaction between human and computer

... is there a generally accepted relationship between placement of a problem along these dimensions and suitable algorithms/approaches to its solution?

References

The List

This list originates from Bruce Maxim, Professor of Engineering, Computer and Information Science at the University of Michigan. In his lecture Spring 1998 notes for CIS 4791, the following list was called,

"Good Problems For Artificial Intelligence."

  Decomposable to easier problems
Solution steps can be ignored or undone
Predictable Problem Universe
Good Solutions are obvious
Internally consistent knowledge base (KB)
Requires lots of knowledge or uses knowledge to constrain solutions
Interactive


It has since evolved into this.

  Decomposable to smaller or easier problems
Solution steps can be ignored or undone
Predictable problem universe
Good solutions are obvious
Uses internally consistent knowledge base
Requires lots of knowledge or uses knowledge to constrain solutions
Requires periodic interaction between human and computer


What it is

His list was never intended to be a list of AI problem categories as an initial branch point for solution approaches or a, "heuristic technique designed to speed up the process of finding a satisfactory solution."

Maxim never added this list into any of his academic publications, and there are reasons why.

The list is heterogeneous. It contains methods, global characteristics, challenges, and conceptual approaches mixed into one list as if they were like elements. This is not a shortcoming for a list of, "Good problems for AI," but as a formal statement of AI problem characteristics or categories, it lacks the necessary rigor. Maxim certainly did not represent it as a, "7 AI problem characteristics," list.

It is certainly not a, "7 AI problem characteristics," list.

Are There Any Category or Characteristics Lists?

There is no good category list for AI problems because if one created one, it would be easy to think of one of the millions of problems that human brains have solved that don't fit into any of the categories or sit on the boundaries of two or more categories.

It is conceivable to develop a problem characteristics list, and it may be inspired by Maxim's Good Problems for AI list. It is also conceivable to develop an initial approaches list. Then one might draw arrows from the characteristics in the first list to the best prospects for approaches in the second list. That would make for a good article for publication if dealt with comprehensively and rigorously.

An Initial High Level Characteristics to Approaches List

Here is a list of questions that an experienced AI architect may ask to elucidate high level system requirements prior to selecting an approaches.

• Is the task essentially static in that once it operates it is likely to require no significant adjustments? If this is the case, then AI may be most useful in the design, fabrication, and configuration of the system (potentially including the training of its parameters).
• If not, is the task essentially variable in a way that control theory developed in the early 20th century can adapt to the variance? If so, then AI may also be similarly useful in procurement.
• If not, then the system may possess sufficient nonlinear and temporal complexity that intelligence may be required. Then the question becomes whether the phenomenon is controllable at all. If so, then AI techniques must be employed in real time after deployment.

Effective Approach to Architecture

If one frames the design, fabrication, and configuration steps in isolation, the same process can be followed to determine what role AI might play, and this can be done recursively as one decomposes the overall productization of ideas down to things like the design of an A-to-D converter, or the convolution kernel size to use in a particular stage of computer vision.

As with other control system design, with AI, determine your available inputs and your desired output and apply basic engineering concepts. Thinking that engineering discipline has changed because of expert systems or artificial nets is a mistake, at least for now.

Nothing has significantly changed in control system engineering because AI and control system engineering share a common origin. We just have additional components from which we can select and additional theory to employ in design, construction, and quality control.

Rank, Dimensionality, and Topology

Regarding the rank and dimensions of signals, tensors, and messages within an AI systems, Cartesian dimensionality is not always the correct concept to characterize the discrete qualities of internals as we approach simulations of various mental qualities of the human brain. Topology is often the key area of mathematics that most correctly models the kinds of variety we see in human intelligence we wish to develop artificially in systems.

More interestingly, topology may be the key to developing new types of intelligence for which neither computers nor human brains are well equipt.

References

http://groups.umd.umich.edu/cis/course.des/cis479/lectures/htm.zip

The 7 AI problem characteristics is a heuristic technique designed to speed up the process of finding a satisfactory solution to problems in artificial intelligence.

In computer science, artificial intelligence and mathematical optimization, a heuristic is a technique designed for solving a problem more quickly, or for finding an approximate solution when you have failed to find an exact solution using classic methods.

The 7 AI problem technique ranks alternative steps based on available information to help one decide on the most appropriate approach to follow in solving problems i.e. missionaries and cannibals, Tower of Hanoi, Traveling salesman e.t.c.

Regarding whether there is a generally accepted relationship between the placement of a problem and suitable algorithms. The answer is that indeed there is a generally accepted relationship. For example imagine trying to solve a game of chess and a game of sudoku.

If a step is wrong in sudoku, we can backtrack and attempt a different approach. However if we are playing a game of chess and realize a mistake after a couple of moves. We cannot simply ignore the mistake and backtrack.(2nd Characteristic)

If the problem universe is predictable, we can make a plan to generate a sequence of operations that is guaranteed to lead to a solution. However in the case of problems with uncertain outcomes, we have to follow a process of plan revision as the plan is carried out while providing the necessary feedback. (3rd Characteristic)

Below is an example of the 7 AI problem characteristics being applied to solve a water jug problem.

• 1. What formally qualifies as requiring human interaction? As I'd've thought that the water jug problem doesn't require human interaction; to me the reason you gave seems like just a precondition for doing the problem in a real life (as opposed to simulated) setting. 2. If a given solution is composed of multiple steps, and you could therefore break down the search into a search from the solution to the start combined with a search from the start to the solution, is the problem not decomposable? Again, my quabble is with what formally qualifies. 3. Why is the solution not a state? ... – god of llamas Apr 15 '18 at 17:19
• ... The state of the solved bucket is the solution so to me it would seem like the solution is finding a path to the state, with the path in service to the state rather than vice versa; if the state was merely in service to the path that is the solution then I'd think the solution was the path rather than the state. – god of llamas Apr 15 '18 at 17:24
• Additionally, your answer doesn't seem to fully answer the question posed: "Is there a generally accepted relationship between placement of a problem along these dimensions and suitable algorithms/approaches to its solution?" – god of llamas Apr 15 '18 at 17:29