English
Classical AI is the study of how to make computers intelligent by explicitly representing knowledge and programming reasoning. Rather than learning patterns from large datasets, classical AI programs contain hand-crafted rules about the world: if a patient has these symptoms, suspect this diagnosis; if the chess board looks like this, these moves are promising; if the goal is to reach this destination, break it into sub-goals. This approach is called “symbolic” because the programs operate on symbols — logical formulas, graph nodes, natural language words — rather than the numerical weights that neural networks tune during training.
This approach established the problems that every subsequent AI paradigm has had to address: how to search efficiently through exponentially large spaces of possibilities, how to represent what a system knows about the world, how to reason automatically from incomplete information, how to plan sequences of actions toward a goal. These problems did not vanish when deep learning became dominant; they became harder to discuss clearly, because the vocabulary for them had been developed by a field that was being rapidly eclipsed.
Classical AI also connects more directly to the rest of computer science than machine learning does. Its foundations are in logic (§3.1), formal methods (§3.6), and algorithm design (§2.6). The SAT solvers that power hardware verification and software analysis today are classical AI systems. Planning algorithms run logistics networks and autonomous robots. Knowledge graphs structure what search engines know about the world. The field is not historical; it is embedded in infrastructure, often invisibly.
Prerequisites: Logic (§3.1) — inference rules, resolution, Prolog. Algorithms (§2.6) — graph search, A, complexity. Discrete mathematics (§2.2) — propositional and predicate logic.*
From the Founding Optimism to the Knowledge Representation Crisis
In the summer of 1956, John McCarthy, Marvin Minsky, Claude Shannon, and about a dozen other researchers gathered at Dartmouth College for what McCarthy had proposed calling “a study of artificial intelligence.” The proposal stated its central assumption plainly: every aspect of learning or any other feature of intelligence could in principle be so precisely described that a machine could simulate it. This was not positioned as a distant hope. It was a working hypothesis expected to yield significant results in a single summer.
The confidence was not irrational. Newell and Simon had already produced the Logic Theorist, a program that proved 38 of the 52 theorems in Whitehead and Russell’s Principia Mathematica — one of its proofs shorter than the version in the book. They followed it with the General Problem Solver, which decomposed goals into sub-goals and found operations that reduced the gap between the current situation and the desired outcome — a strategy they called means-ends analysis. Newell and Simon believed they had captured the fundamental structure of human problem-solving, and they said so publicly. In 1958, they predicted that within ten years a computer would be world chess champion.
Through the 1960s, researchers built systems that performed impressively in narrow domains. Programs played checkers at a competitive amateur level. Programs solved calculus problems. Programs proved geometry theorems. The sharpest demonstration of both the power and the limits of this era came in 1970 from MIT graduate student Terry Winograd. His program SHRDLU could understand natural language about a simulated world of colored blocks — you could instruct it, ask it questions, and it would trace its own reasoning. SHRDLU appeared to understand English about its domain as well as a human would. It worked because Winograd had encoded a complete model of the blocks world. When someone tried to extend it to a slightly more complex domain, the system failed entirely, because its knowledge was woven through the code, specific to exactly the world Winograd had programmed. This pattern — brilliant performance inside a carefully defined box, collapse outside it — would define the field’s central difficulty for the next thirty years.
By the early 1970s, the gap between confident predictions and actual results was publicly visible. Machine translation, which had received substantial US government funding since the 1950s, was the most visible failure. The 1966 ALPAC report concluded bluntly that machine translation was twice as expensive, half as fast, and no better in quality than human translation. Federal funding ended. In 1973, the Lighthill Report in the UK evaluated AI research with similar bluntness, identifying the “combinatorial explosion” as the core problem: AI programs could handle simple cases, but as problems became more complex, the number of cases grew exponentially — faster than any computer could handle. The first AI winter had arrived.
The lesson drawn was that the systems had not failed because formal reasoning was wrong — they had failed because they did not contain enough knowledge. The new strategy: build systems containing large amounts of knowledge about a specific domain, encoded by human experts. MYCIN, developed at Stanford beginning in 1974, was a system for diagnosing bacterial infections containing about 600 rules. In a controlled study at Stanford Medical Center, MYCIN achieved 65% accuracy on confirmed cases; the specialists averaged 42.5%. MYCIN outperformed expert physicians at bacterial infection diagnosis. It was never deployed in hospitals — no institution would accept liability if a computer’s recommendation turned out to be wrong — but it demonstrated the central promise of expert systems.
Where expert systems did get deployed was in industry. Digital Equipment Corporation’s XCON, launched in 1980, configured orders for VAX computer systems, processing 80,000 orders per year by 1986 at 97% accuracy and saving DEC an estimated $40 million annually. The expert systems market reached $1 billion by 1988.
XCON’s success concealed a structural problem that became impossible to ignore by the late 1980s. Building an expert system was expensive in a way that did not improve with practice. XCON took five person-years to build and required continuous maintenance. When DEC introduced new hardware, the rules had to be manually updated. There was no way to learn from experience: every new rule had to be identified from a human expert and manually encoded. The deeper problem was that expert systems could not generalize — XCON was superb at configuring VAX systems and worthless at anything else, because its knowledge was organized around VAX-specific rules rather than transferable principles.
Douglas Lenat’s CYC project, launched in 1984, confronted this directly. Lenat’s argument: expert systems failed because they lacked commonsense background knowledge. When a patient says “I cut my hand while cooking,” MYCIN’s rules said nothing about kitchens, knives, or bleeding. CYC’s goal was to encode all of human commonsense — the millions of obvious facts about objects, causation, time, space, and physical behavior that any adult knows without thinking. Lenat estimated 200 person-years. Forty years later, the project continues. The lesson, painfully accumulated, is that commonsense knowledge is not merely large; it is embedded in embodied experience in ways that resist formal encoding at any practical scale.
By the late 1980s, Lisp machines were being obsoleted by cheaper workstations. DARPA’s Strategic Computing Initiative was cancelled. The second AI winter had arrived.
Probability changed what “knowing” meant. Expert systems had handled uncertainty through ad hoc certainty factors that did not combine correctly — two partially confident conclusions about the same hypothesis did not yield a well-calibrated combined probability. Judea Pearl’s 1988 book Probabilistic Reasoning in Intelligent Systems showed that uncertain knowledge could be represented as a Bayesian network: a directed graph in which nodes represent variables and edges encode probabilistic dependencies. Given observations, the network could compute the probability of each possible explanation using Bayes’ theorem — a mathematically principled procedure for updating beliefs given evidence. Bayesian networks became the foundation for speech recognition, spam filtering, medical diagnosis systems that actually deployed, and sensor fusion in robotics. Pearl received the Turing Award in 2011.
While expert systems were visibly failing, a quieter strand of classical AI was achieving something remarkable. The satisfiability problem — given a set of logical constraints, does any assignment of variable values satisfy all of them simultaneously? — had been proven NP-complete in 1971. This seemed to make practical SAT solving hopeless. What actually happened was a series of algorithmic improvements that made realistic instances tractable. Conflict-Driven Clause Learning, developed in the 1990s, extended the basic DPLL algorithm with the ability to learn from failed search paths and use that knowledge to prune later searches. Modern CDCL solvers routinely handle industrial instances with millions of variables in seconds. Microsoft’s Z3 solver, released in 2008, became standard infrastructure for hardware verification, software analysis, and security research. Engineers use it routinely without knowing they are using a classical AI system. This is the field’s most successful deployment — invisible precisely because it is so thoroughly embedded in infrastructure.
DeepMind’s AlphaGo, which defeated world champion Lee Sedol 4–1 in March 2016, ended the framing of neural networks versus symbolic AI as a contest. AlphaGo was neither pure classical AI nor pure neural network; it was explicitly hybrid: deep convolutional neural networks evaluated positions and suggested candidate moves, while Monte Carlo Tree Search provided systematic planning, using the neural networks to guide which branches to explore. The neural component handled what resisted formal encoding — position evaluation. The symbolic component handled what required systematic reasoning — determining which lines of play to consider. Neither alone was sufficient. AlphaGo’s architecture is a template the field is still working through. The reasoning models from OpenAI and Anthropic that spend extended time generating chains of thought before answering implement a version of this idea for language tasks — something like search over reasoning steps, guided by a learned model. Whether this constitutes genuine reasoning in any deep sense, and what capabilities it does and does not confer, are open questions that the classical AI tradition, with its long experience of systems that appear to reason without understanding, is especially well-positioned to illuminate.
Search, Knowledge, Reasoning, and Planning
Search Is Not Enumeration
Search through a space of possibilities is the foundational operation in classical AI, and its difficulty is the combinatorial explosion: the number of possible states grows exponentially with problem depth. A chess program examining every possible sequence of moves ten turns deep must consider on the order of 35¹⁰ positions — roughly 2.7 quadrillion. No hardware can do this.
The field’s response was informed search: rather than examining every possibility, use a heuristic — an estimate of how close a state is to the goal — to prioritize which possibilities to explore first. A* search, developed by Hart, Nilsson, and Raphael in 1968, finds the shortest path in a graph while examining the minimum number of nodes, provided the heuristic never overestimates the true cost (the admissibility requirement). Pattern databases compute admissible heuristics automatically by solving simplified versions of a problem and storing the results. Monte Carlo Tree Search adds statistical sampling: rather than evaluating a position analytically, simulate random games from it and use the win rate to estimate value. MCTS enabled AlphaGo; it also powers the strongest game-playing systems across dozens of games.
Adversarial search, for settings where an opponent actively works against you, uses minimax: at each step, assume the opponent makes their best move, and choose accordingly. Alpha-beta pruning eliminates branches that cannot possibly affect the result, reducing the effective search depth dramatically — the technique that made Deep Blue competitive at chess before neural evaluation functions existed.
Knowledge Representation: The Problem of Encoding What You Know
For a system to reason about the world, it must represent relevant facts. First-order logic provides a formal language: objects, properties, relations, quantifiers, logical connectives. Description logics formalize taxonomic knowledge — categories, subcategories, and the relationships between them. OWL (Web Ontology Language), developed for the Semantic Web, allows encoding hierarchical knowledge at web scale. Knowledge graphs — the technology behind Google’s Knowledge Panel and Wikidata — are structured representations of entities and their relationships, queryable through SPARQL.
The fundamental difficulty is completeness. The frame problem (McCarthy and Hayes, 1969) crystallizes a specific version: when an action is performed, how do you represent what does not change? If you flip a light switch, the furniture stays where it is, the temperature doesn’t change, the contents of memory aren’t altered — but you cannot enumerate every fact that persists, because there are infinitely many. Any formal system that tried would spend all its time on the trivial and never get to the important. This is not a problem that more knowledge solves; it is structural. Large language models exhibit commonsense capabilities and also systematic commonsense failures — confabulation, failure on physical reasoning tasks, sensitivity to surface rephrasing — that appear structurally related to what classical AI encountered at scale.
Automated Reasoning and Planning
Resolution theorem proving (Robinson, 1965) showed that first-order logic is refutation complete: to prove a theorem, assume its negation and show that the assumption leads to contradiction. The resolution rule does this systematically, combining pairs of clauses to derive new clauses until a contradiction is found. Prolog implemented logic programming: Horn clauses as both knowledge and program, Prolog’s interpreter as the inference engine. You write what is true; the interpreter figures out how to derive answers to queries.
SAT and SMT solvers are the contemporary industrial form of automated reasoning. SAT asks whether a propositional formula has a satisfying assignment; SMT extends this to richer theories (linear arithmetic, arrays, bit-vectors). When a software engineer uses a symbolic execution tool to check that a function never accesses memory out of bounds, or a hardware designer verifies that a circuit correctly implements a specification, they are using automated reasoning that traces directly to this tradition.
Planning asks: given a description of the current state, a set of available actions with preconditions and effects, and a goal, find a sequence of actions that achieves the goal. STRIPS (Fikes and Nilsson, 1971) formalized this for robotic planning. PDDL (Planning Domain Definition Language) is its contemporary standardized form, used in the International Planning Competition, which has driven progress in automated planning since 1998. Planning systems run in logistics, autonomous vehicles, game AI, and robotic manipulation — any domain where a sequence of actions must achieve a goal under constraints.
What Studying This Changes
Classical AI changes what practitioners can see in AI systems, in AI research, and in AI history.
The first change is fluency with search as a foundational operation. Every shortest-path algorithm is search. Every planning system is search. Every SAT solver is search over assignments. Every branch in AlphaGo’s game tree is search. The practitioner who has internalized A*, minimax, MCTS, and constraint propagation can recognize when a problem is a search problem, choose the right strategy, and understand why certain engineering choices — heuristic design, pruning strategies, parallelization — matter in ways that practitioners trained only on neural networks cannot.
The second change is vocabulary for talking about intelligence. State space, goal condition, heuristic, knowledge base, inference rule, plan, constraint, ontology — these concepts were clarified through decades of classical AI work and provide the vocabulary for every serious contemporary discussion of AI, including discussions of its limitations and risks. The AI safety literature, mechanistic interpretability research, and debates about LLM capabilities all make use of this vocabulary. Without it, reading the research literature seriously is not possible.
The third change is history as calibration. Classical AI has undergone two major cycles of optimism, deployment, and failure. Each cycle exhibited the same structure: impressive performance in a bounded domain, confident extrapolation to broader settings, encounter with a structural limitation that no technical refinement could eliminate, funding withdrawal, reappraisal. The current deep learning era has the same structure in its early stages. Practitioners who have studied this history approach contemporary AI claims with better-calibrated expectations: impressive benchmark results are real; the structural limitations may not yet be visible; confident predictions of imminent general intelligence have been wrong before.
Resources
Books and Texts
Russell and Norvig’s Artificial Intelligence: A Modern Approach (4th ed., 2020) is the standard comprehensive text. It has been revised four times, and the current edition engages seriously with contemporary deep learning and large language models while maintaining authoritative coverage of search, planning, knowledge representation, and probabilistic reasoning. For Parts I–IV — search, planning, knowledge, and reasoning — AIMA is both the right entry and the appropriate ongoing reference.
For heuristic search at depth, Pearl’s Heuristics: Intelligent Search Strategies for Computer Problem Solving (1984) develops the theory that AIMA summarizes. Korf’s papers on IDA* and pattern databases are the primary sources for the techniques that contemporary heuristic planners actually use.
For knowledge representation, Brachman and Levesque’s Knowledge Representation and Reasoning (2004) provides the formal foundations — description logics, frame systems, reasoning algorithms — at a level that AIMA does not reach. For contemporary knowledge graphs at scale, Hogan et al.’s survey “Knowledge Graphs” (ACM Computing Surveys, 2021, free) covers industrial deployment systematically.
For automated planning, Ghallab, Nau, and Traverso’s Automated Planning: Theory and Practice (2004) is the standard text; their Automated Planning and Acting (2016) provides contemporary updates.
For SAT and SMT solving, Kroening and Strichman’s Decision Procedures (2nd ed., 2016) develops the theory. The Handbook of Satisfiability (Biere et al., 2nd ed., 2021) is the comprehensive reference.
For the probabilistic extension, Pearl’s Probabilistic Reasoning in Intelligent Systems (1988) is the foundational text. His Causality (2nd ed., 2009) extends this to causal inference — essential for understanding where Bayesian AI came from and what it provided.
Dreyfus’s What Computers Can’t Do (revised ed., 1979) makes the case that formal symbol manipulation cannot capture embodied knowledge underlying human intelligence. The arguments force precision about what symbolic AI actually claims. Marcus and Davis’s Rebooting AI (2019) makes the contemporary case that deep learning’s systematic failures point back toward symbolic reasoning.
| Book | Role | Type |
|---|---|---|
| Russell & Norvig, Artificial Intelligence: A Modern Approach (4th ed.) | Canonical comprehensive text | Entry |
| Pearl, Heuristics: Intelligent Search Strategies | Heuristic search foundations | Depth |
| Brachman & Levesque, Knowledge Representation and Reasoning | KR formal foundations | Reference |
| Ghallab, Nau & Traverso, Automated Planning: Theory and Practice | Planning standard text | Depth |
| Ghallab, Nau & Traverso, Automated Planning and Acting | Planning contemporary update | Reference |
| Kroening & Strichman, Decision Procedures (2nd ed.) | SAT/SMT foundations | Reference |
| Biere et al., Handbook of Satisfiability (2nd ed.) | SAT comprehensive reference | Reference |
| Pearl, Probabilistic Reasoning in Intelligent Systems | Probabilistic AI foundations | Depth |
| Pearl, Causality (2nd ed.) | Causal reasoning | Depth |
| Dreyfus, What Computers Can’t Do | Philosophical critique | Auxiliary |
| Marcus & Davis, Rebooting AI | Contemporary symbolic AI case | Auxiliary |
| Minsky, The Society of Mind | Emergent intelligence perspective | Auxiliary |
Courses and Lectures
Stanford CS221 (Artificial Intelligence: Principles and Techniques), Berkeley CS188 (Introduction to Artificial Intelligence), and MIT 6.034 (Artificial Intelligence) — all freely available with lecture videos and assignments — provide structured pedagogy built on AIMA. CS221 emphasizes the probabilistic and optimization perspectives; CS188 is especially strong on search, games, and probabilistic inference; MIT 6.034 includes a broader treatment of knowledge representation. Working through any one of these provides the lecture context that AIMA alone does not.
| Course | Platform | Type |
|---|---|---|
| Stanford CS221 AI (free) | Stanford / YouTube | Entry |
| Berkeley CS188 AI (free) | Berkeley / YouTube | Entry |
| MIT 6.034 AI (free) | MIT OCW | Entry |
| CS50 AI with Python (free; edX verified certificate paid) | Harvard / edX | Practice |
Practice, Tools, and Current Sources
The Z3 theorem prover (free, z3prover.github.io) is the most direct engagement with automated reasoning. Working through Z3’s Python API tutorial — encoding simple constraint problems, satisfiability queries, and verification conditions — makes the gap between classical symbolic AI and contemporary software infrastructure concrete. Z3 is industrial infrastructure; it is also a classical AI system in the sense the first researchers meant.
Fast Downward (free, fast-downward.org) is the state-of-the-art open-source classical planner. Running it on International Planning Competition benchmarks provides direct engagement with what industrial-scale automated planning requires. Comparing Fast Downward’s performance on problems of increasing complexity shows the combinatorial explosion empirically.
The AlphaGo documentary (YouTube, 2017) and the AlphaGo and AlphaZero papers (Silver et al., free) are the most effective materials for understanding the neural-symbolic hybrid design. The documentary shows the human dimension; the papers explain the architecture. Together they make the hybrid design legible in a way that either alone does not.
Implementing A* search from scratch on the 15-puzzle using Manhattan distance heuristic, verifying the heuristic is admissible, and measuring how much worse uninformed search performs makes the value of heuristic quality concrete and memorably quantitative.
| Resource | Platform | Type |
|---|---|---|
| Z3 Python API (free) | pip install z3-solver | Practice |
| Fast Downward planner (free) | fast-downward.org | Practice |
| SWI-Prolog quickstart (free) | swi-prolog.org | Practice |
| planning.domains PDDL editor and solver (free) | planning.domains | Practice |
| Wikidata SPARQL tutorial (free) | wikidata.org | Auxiliary |
| Silver et al., AlphaGo and AlphaZero papers (free) | Hybrid symbolic-neural landmark papers | Depth |
| McCarthy & Hayes, “Some Philosophical Problems” (1969, free) | Frame problem and commonsense reasoning paper | Depth |
| AlphaGo documentary (free) | YouTube | Auxiliary |
Traps
| Trap | Why it misleads | Better response |
|---|---|---|
| Treating classical AI as purely historical | Mainstream ML curricula rarely cover classical AI, creating practitioners who lack vocabulary for application areas where symbolic methods remain essential — software verification, formal planning, knowledge graphs, constraint-based scheduling — and who cannot engage with the contemporary neuro-symbolic research literature. | Engage with contemporary deployment directly. Work through a Z3 tutorial. Run Fast Downward on a planning benchmark. Examine how Wikidata implements knowledge representation principles. Classical techniques are embedded in infrastructure, not in museums. |
| Dismissing the frame problem as solved | The frame problem and commonsense difficulty are frequently mentioned and immediately passed over as historical curiosities. They are not solved. LLMs exhibit commonsense capabilities and also systematic commonsense failures — confabulation, failure on physical reasoning tasks, sensitivity to surface rephrasing — that appear structurally related to what classical AI encountered at scale. | Read McCarthy and Hayes (1969) directly. Study the CYC project’s approach and why forty years of sustained effort did not produce scalable commonsense reasoning. Then look at contemporary LLM failures with the same lens. The resemblance calibrates what remains hard regardless of paradigm. |
| Missing the connection to the Theory Axis | Classical AI and Chapter 3 share foundations that neither community always acknowledges. First-order logic underlies both §3.1 and classical knowledge representation. Resolution theorem proving is both formal methods (§3.6) and classical AI automated reasoning. Prolog is logic programming. Treating them as separate domains misses the field’s most productive cross-axis connections. | After reading this section, revisit §3.1 and §3.6. Implement a small resolution theorem prover or work through a Prolog tutorial. The pieces assemble into a coherent picture of logic as both theoretical foundation and engineering tool. |
| The neural vs. symbolic false dichotomy | The historical framing of “symbolic AI vs. connectionist AI” produced a mental habit of treating the two as mutually exclusive alternatives. AlphaGo is both. Contemporary LLMs augmented with tools, code interpreters, and search are both. The productive question is not “which paradigm wins” but “which problems benefit from which approach, and how should they be combined.” | Study AlphaGo’s architecture in detail — not as an illustration of deep learning, but as an example of systematic hybrid design. The neural evaluation network and the MCTS planning component are doing qualitatively different things, and understanding why each is necessary is the core lesson. |
| Treating heuristic design as intuition | Heuristic search is sometimes presented as if choosing a heuristic is a matter of experience and feel. The discipline has formal structure: admissible heuristics never overestimate true costs; consistent heuristics guarantee A* optimality; pattern databases compute admissible heuristics automatically from problem structure. These are engineering constraints with mathematical content. | Study admissibility and consistency formally. Implement A* on the 15-puzzle using Manhattan distance, verify the heuristic is admissible, and measure how much worse uninformed search performs. The comparison makes the value of heuristic quality concrete and quantitative. |
中文
古典 AI 研究的是:如何通过显式表示知识、编写推理程序,让计算机表现出智能。它不是从大规模数据集中学习模式,而是在程序中放入人工手写的世界规则:如果病人有这些症状,就怀疑这种诊断;如果棋盘是这种局面,这些走法就比较有希望;如果目标是到达某个目的地,就把它拆成若干子目标。这种方法被称为“符号主义”(symbolic),因为程序操作的是符号——逻辑公式、图节点、自然语言词语——而不是神经网络在训练过程中调整的数值权重。
这种方法确立了后来所有 AI 范式都必须面对的问题:如何在指数级庞大的可能性空间中高效搜索,如何表示一个系统对世界的认识,如何从不完整信息中自动推理,如何规划一系列通向目标的行动。深度学习占据主导地位之后,这些问题并没有消失;只是它们变得更难被清楚讨论,因为用于描述这些问题的词汇,来自一个正在被迅速遮蔽的领域。
古典 AI 也比机器学习更直接地连接计算机科学的其他部分。它的基础在逻辑(§3.1)、形式化方法(§3.6)和算法设计(§2.6)中。今天支撑硬件验证和软件分析的 SAT 求解器,就是古典 AI 系统。规划算法运行着物流网络和自主机器人。知识图谱组织着搜索引擎对世界的理解。这个领域并不是历史遗物;它已经嵌入基础设施之中,只是常常不可见。
前置知识:逻辑(§3.1)——推理规则、归结、Prolog。算法(§2.6)——图搜索、A、复杂度。离散数学(§2.2)——命题逻辑和谓词逻辑。*
从创始时期的乐观到知识表示危机
1956 年夏天,John McCarthy、Marvin Minsky、Claude Shannon 和大约十几位研究者聚集在达特茅斯学院,参加 McCarthy 提议称为“人工智能研究”的会议。提案直截了当地写出了它的核心假设:学习的每一个方面,或者智能的任何其他特征,原则上都可以被精确描述到机器能够模拟的程度。这并不是一个遥远的希望,而是一个工作假设;研究者期待它能在一个夏天里产生重要成果。
这种信心并非不理性。Newell 和 Simon 已经做出了 Logic Theorist,这个程序证明了 Whitehead 和 Russell 的 Principia Mathematica 中 52 个定理里的 38 个,其中一个证明甚至比书中的版本更短。随后他们又做出了 General Problem Solver,它把目标拆成子目标,并寻找能缩小当前状态与目标状态之间差距的操作——他们称这种策略为“手段—目的分析”(means-ends analysis)。Newell 和 Simon 相信自己已经抓住了人类问题解决的基本结构,并且公开这样宣称。1958 年,他们预测十年内计算机将成为世界国际象棋冠军。
整个 1960 年代,研究者构建了一批能在狭窄领域中表现惊人的系统。程序可以以有竞争力的业余水平下跳棋。程序可以解微积分题。程序可以证明几何定理。这个时代最清楚地展示其力量和局限的,是 MIT 研究生 Terry Winograd 于 1970 年做出的程序 SHRDLU。它能够理解一个彩色积木模拟世界中的自然语言——你可以给它指令,向它提问,它还会追踪自己的推理过程。在自己的领域里,SHRDLU 看起来像人一样理解英语。它之所以能工作,是因为 Winograd 已经编码了一个完整的积木世界模型。可是,当有人试图把它扩展到一个稍微复杂一点的领域时,系统彻底失败了,因为它的知识和代码缠在一起,只适用于 Winograd 编写的那个精确世界。这个模式——在精心限定的盒子里表现出色,一旦越出盒子就崩溃——会定义此后三十年里这个领域的核心困难。
到 1970 年代初,自信预测与实际结果之间的差距已经公开可见。机器翻译是最显眼的失败案例。自 1950 年代以来,机器翻译一直获得美国政府的大量资助,但 1966 年的 ALPAC 报告直截了当地得出结论:机器翻译的成本是人工翻译的两倍,速度只有人工翻译的一半,质量却并不更好。联邦资助随之终止。1973 年,英国的 Lighthill Report 也以类似直率的方式评估了 AI 研究,并把“组合爆炸”(combinatorial explosion)确定为核心问题:AI 程序可以处理简单案例,但随着问题变复杂,案例数量会指数级增长,增长速度超过任何计算机所能承受的范围。第一次 AI 寒冬已经到来。
研究者从中得到的教训是:系统失败并不是因为形式推理本身错了,而是因为系统没有包含足够多的知识。新的策略是:构建包含大量特定领域知识的系统,由人类专家将这些知识编码进去。MYCIN 于 1974 年起在斯坦福开发,是一个用于诊断细菌感染的系统,包含大约 600 条规则。在斯坦福医学中心的一项对照研究中,MYCIN 对已确认病例达到 65% 的准确率;专科医生的平均准确率是 42.5%。MYCIN 在细菌感染诊断上超过了专家医生。它从未被部署到医院中——没有机构愿意在计算机建议出错时承担责任——但它展示了专家系统的核心前景。
专家系统真正被部署的地方是工业界。Digital Equipment Corporation 的 XCON 于 1980 年上线,用于配置 VAX 计算机系统订单。到 1986 年,它每年处理 80,000 份订单,准确率达到 97%,据估算每年为 DEC 节省 4,000 万美元。到 1988 年,专家系统市场规模达到 10 亿美元。
XCON 的成功掩盖了一个结构性问题,而这个问题到 1980 年代末已经无法忽视。构建专家系统非常昂贵,而且这种昂贵并不会随着经验积累而改善。XCON 花了五个人年才构建完成,并且需要持续维护。DEC 推出新硬件时,规则必须手动更新。系统无法从经验中学习:每一条新规则都必须由人类专家识别出来,再手动编码进去。更深层的问题是,专家系统无法泛化——XCON 非常擅长配置 VAX 系统,但对其他事情毫无用处,因为它的知识围绕 VAX 特定规则组织,而不是围绕可迁移的原则组织。
Douglas Lenat 于 1984 年启动的 CYC 项目,正面迎接了这个问题。Lenat 的论点是:专家系统失败,是因为它们缺少常识性背景知识。当病人说“我做饭时割伤了手”,MYCIN 的规则并不知道厨房、刀具或出血意味着什么。CYC 的目标是编码全部人类常识——关于物体、因果、时间、空间和物理行为的数百万条显而易见的事实,而这些事实任何成年人都无需思考就知道。Lenat 估计这需要 200 个人年。四十年后,这个项目仍在继续。痛苦积累出来的教训是:常识知识不只是规模巨大;它还嵌入具身经验之中,以至于在任何实际尺度上都难以被形式化编码。
到 1980 年代末,Lisp 机器正在被更便宜的工作站淘汰。DARPA 的 Strategic Computing Initiative 被取消。第二次 AI 寒冬到来了。
概率改变了“知道”意味着什么。专家系统用临时的置信因子处理不确定性,但这些因子无法正确组合——对同一个假设的两个部分置信结论,并不会自然产生一个校准良好的合成概率。Judea Pearl 1988 年的著作 Probabilistic Reasoning in Intelligent Systems 表明,不确定知识可以表示为贝叶斯网络:一种有向图,其中节点表示变量,边表示概率依赖。给定观测结果之后,网络可以使用贝叶斯定理计算每种可能解释的概率——这是一种在证据出现后更新信念的数学上有原则的过程。贝叶斯网络后来成为语音识别、垃圾邮件过滤、真正部署的医学诊断系统,以及机器人传感器融合的基础。Pearl 于 2011 年获得图灵奖。
当专家系统明显失败时,古典 AI 中另一条更安静的路线却取得了惊人成果。可满足性问题(satisfiability problem)问的是:给定一组逻辑约束,是否存在一种变量赋值,使所有约束同时得到满足?它在 1971 年已被证明是 NP 完全问题。这似乎意味着实际 SAT 求解没有希望。但真正发生的是,一系列算法改进使现实中的实例变得可处理。1990 年代发展出的 Conflict-Driven Clause Learning 扩展了基本的 DPLL 算法,使求解器能够从失败的搜索路径中学习,并用这些知识剪掉后续搜索中的分支。现代 CDCL 求解器经常能在数秒内处理含有数百万变量的工业实例。微软于 2008 年发布的 Z3 求解器,成为硬件验证、软件分析和安全研究中的标准基础设施。工程师每天都在使用它,却往往不知道自己正在使用一个古典 AI 系统。这是这个领域最成功的部署——它之所以不可见,正是因为它已经如此彻底地嵌入基础设施。
DeepMind 的 AlphaGo 于 2016 年 3 月以 4–1 战胜世界冠军李世石,终结了“神经网络对符号 AI”这种竞争式框架。AlphaGo 既不是纯古典 AI,也不是纯神经网络;它明确是一种混合系统:深度卷积神经网络评估局面并提出候选走法,而蒙特卡洛树搜索提供系统性规划,并用神经网络引导应当探索哪些分支。神经组件处理的是难以形式化编码的部分——局面评估。符号组件处理的是需要系统推理的部分——决定哪些棋路值得考虑。任何一方单独存在都不够。AlphaGo 的架构至今仍是这个领域仍在消化的模板。OpenAI 和 Anthropic 的推理模型在回答之前会花较长时间生成思维链,这也为语言任务实现了这种思路的某种版本——类似于在推理步骤上进行搜索,并由学习得到的模型来引导。它是否在深层意义上构成真正的推理,以及它带来和不带来哪些能力,仍是开放问题;而古典 AI 传统长期研究那些“看起来会推理但并不理解”的系统,特别适合帮助我们澄清这些问题。
搜索、知识、推理与规划
搜索不是枚举
在可能性空间中搜索,是古典 AI 的基础操作;它的困难就是组合爆炸:可能状态的数量会随着问题深度指数级增长。一个国际象棋程序如果要考察未来十步内每一种可能的走法序列,就必须考虑大约 35¹⁰ 个局面——约 2.7 千万亿个。没有任何硬件能完成这种任务。
这个领域的回应是启发式搜索(informed search):不要检查每一种可能,而是使用启发函数——一种估计某个状态离目标还有多近的方法——来优先探索更有希望的可能性。Hart、Nilsson 和 Raphael 于 1968 年提出的 A* 搜索,可以在图中找到最短路径,并且在启发函数永远不高估真实代价(即可采纳性要求,admissibility)的前提下,检查最少数量的节点。模式数据库(pattern databases)会通过求解问题的简化版本并存储结果,自动计算可采纳启发函数。蒙特卡洛树搜索加入了统计抽样:不是分析性地评估某个局面,而是从这个局面出发模拟随机对局,并用胜率估计价值。MCTS 使 AlphaGo 成为可能;它也支撑着几十种游戏中最强的博弈系统。
对抗性搜索用于对手会主动与你对抗的场景,它使用极小化极大算法(minimax):在每一步中,假设对手会做出最佳选择,然后据此选择自己的行动。Alpha-beta 剪枝会消除那些不可能影响结果的分支,大幅降低有效搜索深度——在神经评估函数出现之前,正是这项技术让 Deep Blue 在国际象棋中具备竞争力。
知识表示:编码你所知道之物的问题
要让一个系统对世界进行推理,它必须表示相关事实。一阶逻辑提供了一种形式语言:对象、属性、关系、量词、逻辑连接词。描述逻辑(description logics)形式化了分类知识——类别、子类别以及它们之间的关系。为语义网而开发的 OWL(Web Ontology Language)允许在网络规模上编码层级知识。知识图谱——Google Knowledge Panel 和 Wikidata 背后的技术——是对实体及其关系的结构化表示,并且可以通过 SPARQL 查询。
根本困难在于完备性。框架问题(frame problem,McCarthy 和 Hayes,1969)明确表达了其中一个具体版本:当一个动作发生时,如何表示没有变化的东西?如果你打开一个灯的开关,家具还在原地,温度没有改变,内存内容也没有被修改——但你不能枚举所有保持不变的事实,因为这样的事实有无限多个。任何试图这样做的形式系统都会把全部时间花在琐碎内容上,而永远处理不到重要问题。这不是靠更多知识就能解决的问题;它是结构性的。大语言模型表现出常识能力,也表现出系统性的常识失败——编造事实、在物理推理任务上失败、对表面改写高度敏感——这些现象似乎在结构上与古典 AI 在规模化时遇到的问题有关。
自动推理与规划
归结定理证明(resolution theorem proving,Robinson,1965)表明,一阶逻辑在反证意义上是完备的:要证明一个定理,可以先假设它的否定,然后证明这个假设会导向矛盾。归结规则系统性地完成这一过程,通过组合成对的子句推导出新子句,直到找到矛盾。Prolog 实现了逻辑编程:Horn 子句既是知识,也是程序;Prolog 的解释器就是推理引擎。你写下什么是真的;解释器负责找出如何从中推导出查询答案。
SAT 和 SMT 求解器是自动推理在当代工业中的形式。SAT 问的是一个命题公式是否存在满足赋值;SMT 把这个问题扩展到更丰富的理论中,例如线性算术、数组、位向量。当软件工程师使用符号执行工具检查某个函数永远不会越界访问内存,或者硬件设计者验证电路是否正确实现了规约时,他们使用的就是直接源自这一传统的自动推理。
规划问的是:给定当前状态的描述、一组带有前置条件和效果的可用动作,以及一个目标,如何找到一组能够达成目标的动作序列。Fikes 和 Nilsson 于 1971 年提出的 STRIPS 将这一点形式化,用于机器人规划。PDDL(Planning Domain Definition Language)是其当代标准化形式,被用于 International Planning Competition;自 1998 年以来,这项竞赛一直推动自动规划的发展。规划系统运行在物流、自主车辆、游戏 AI 和机器人操作中——也就是任何需要在约束条件下通过一系列动作达成目标的领域。
学习这一部分会改变什么
古典 AI 会改变实践者看待 AI 系统、AI 研究和 AI 历史的方式。
第一个变化,是能够熟练地把搜索看作一种基础操作。每个最短路径算法都是搜索。每个规划系统都是搜索。每个 SAT 求解器都是在赋值空间中搜索。AlphaGo 博弈树中的每一个分支都是搜索。一个真正内化了 A*、minimax、MCTS 和约束传播的实践者,能够识别什么时候一个问题本质上是搜索问题,选择正确策略,并理解为什么启发函数设计、剪枝策略、并行化这些工程选择如此重要——这正是只接受神经网络训练的实践者往往看不到的地方。
第二个变化,是获得讨论智能的词汇。状态空间、目标条件、启发函数、知识库、推理规则、计划、约束、本体——这些概念都是在数十年的古典 AI 工作中被澄清出来的,并且为今天任何严肃的 AI 讨论提供词汇,包括对其局限和风险的讨论。AI 安全文献、机制可解释性研究、关于 LLM 能力的争论,都在使用这些词汇。没有它们,就不可能真正严肃地阅读研究文献。
第三个变化,是把历史作为校准工具。古典 AI 经历过两次重要循环:乐观、部署、失败。每一次循环都展现出相同结构:在受限领域中表现惊人,自信地外推到更广泛场景,随后遇到某种技术细化无法消除的结构性限制,资金撤出,再评价。当前深度学习时代在早期阶段也具有相同结构。研究过这段历史的实践者,会以更校准的预期看待当代 AI 主张:出色的基准结果是真实的;结构性限制可能还没有显现;关于通用智能即将到来的自信预测,过去已经错过很多次。
资源
书籍与文本
Russell 和 Norvig 的 Artificial Intelligence: A Modern Approach(第 4 版,2020)是标准的综合教材。它已经修订四版,当前版本认真纳入了当代深度学习和大语言模型,同时仍权威覆盖搜索、规划、知识表示和概率推理。对于第一到第四部分——搜索、规划、知识和推理——AIMA 既是正确的入门书,也是合适的长期参考书。
对于深入学习启发式搜索,Pearl 的 Heuristics: Intelligent Search Strategies for Computer Problem Solving(1984)展开了 AIMA 所总结的理论。Korf 关于 IDA* 和模式数据库的论文,是当代启发式规划器实际使用技术的一手来源。
对于知识表示,Brachman 和 Levesque 的 Knowledge Representation and Reasoning(2004)提供了形式基础——描述逻辑、框架系统、推理算法——其深度超过 AIMA。对于当代大规模知识图谱,Hogan 等人的综述 “Knowledge Graphs”(ACM Computing Surveys,2021,免费)系统地介绍了工业部署。
对于自动规划,Ghallab、Nau 和 Traverso 的 Automated Planning: Theory and Practice(2004)是标准教材;他们的 Automated Planning and Acting(2016)提供了当代更新。
对于 SAT 和 SMT 求解,Kroening 和 Strichman 的 Decision Procedures(第 2 版,2016)展开了其理论。Handbook of Satisfiability(Biere 等,第 2 版,2021)是综合性参考书。
对于概率扩展,Pearl 的 Probabilistic Reasoning in Intelligent Systems(1988)是奠基文本。他的 Causality(第 2 版,2009)将其扩展到因果推断——这对于理解贝叶斯 AI 从何而来,以及它提供了什么至关重要。
Dreyfus 的 What Computers Can't Do(修订版,1979)提出了这样的批评:形式符号操作无法捕捉人类智能背后的具身知识。这些论证迫使我们精确说明符号 AI 到底主张什么。Marcus 和 Davis 的 Rebooting AI(2019)则提出当代版本的论点:深度学习的系统性失败,说明我们需要重新回到符号推理。
| 书籍 | 作用 | 类型 |
|---|---|---|
| Russell & Norvig, Artificial Intelligence: A Modern Approach (4th ed.) | 经典综合教材 | 入门 |
| Pearl, Heuristics: Intelligent Search Strategies | 启发式搜索基础 | 深入 |
| Brachman & Levesque, Knowledge Representation and Reasoning | 知识表示形式基础 | 参考 |
| Ghallab, Nau & Traverso, Automated Planning: Theory and Practice | 规划标准教材 | 深入 |
| Ghallab, Nau & Traverso, Automated Planning and Acting | 规划的当代更新 | 参考 |
| Kroening & Strichman, Decision Procedures (2nd ed.) | SAT/SMT 基础 | 参考 |
| Biere et al., Handbook of Satisfiability (2nd ed.) | SAT 综合参考 | 参考 |
| Pearl, Probabilistic Reasoning in Intelligent Systems | 概率 AI 基础 | 深入 |
| Pearl, Causality (2nd ed.) | 因果推断 | 深入 |
| Dreyfus, What Computers Can’t Do | 哲学批判 | 辅助 |
| Marcus & Davis, Rebooting AI | 当代符号 AI 论点 | 辅助 |
| Minsky, The Society of Mind | 涌现智能视角 | 辅助 |
课程与讲座
Stanford CS221(Artificial Intelligence: Principles and Techniques)、Berkeley CS188(Introduction to Artificial Intelligence)和 MIT 6.034(Artificial Intelligence)都免费提供讲课视频和作业,并提供建立在 AIMA 之上的结构化教学。CS221 强调概率和优化视角;CS188 在搜索、博弈和概率推理方面尤其强;MIT 6.034 对知识表示有更宽的处理。完整学习其中任何一门,都能提供 AIMA 单独阅读所缺少的讲座语境。
| 课程 | 平台 | 类型 |
|---|---|---|
| Stanford CS221 AI(免费) | Stanford / YouTube | 入门 |
| Berkeley CS188 AI(免费) | Berkeley / YouTube | 入门 |
| MIT 6.034 AI(免费) | MIT OCW | 入门 |
| CS50 AI with Python(免费;edX 认证证书付费) | Harvard / edX | 实践 |
实践、工具与当前资料
Z3 定理证明器(免费,z3prover.github.io)是进入自动推理的最直接方式。完成 Z3 的 Python API 教程——编码简单约束问题、可满足性查询和验证条件——可以让古典符号 AI 与当代软件基础设施之间的距离变得具体。Z3 是工业基础设施;从最早研究者的意义上说,它也是一个古典 AI 系统。
Fast Downward(免费,fast-downward.org)是最先进的开源古典规划器。用它运行 International Planning Competition 基准,可以直接接触工业规模自动规划的要求。比较 Fast Downward 在复杂度不断增加的问题上的表现,可以经验性地展示组合爆炸。
AlphaGo 纪录片(YouTube,2017)和 AlphaGo、AlphaZero 论文(Silver 等,免费)是理解神经—符号混合设计最有效的材料。纪录片展示人的维度;论文解释架构。两者合在一起,比单独任何一个都更能让这种混合设计变得清晰。
从零实现 15-puzzle 上的 A* 搜索,使用曼哈顿距离启发函数,验证该启发函数是可采纳的,并测量无信息搜索的表现差多少,可以让启发函数质量的价值变得具体且具有可记忆的数量感。
| 资源 | 平台 | 类型 |
|---|---|---|
| Z3 Python API(免费) | pip install z3-solver |
实践 |
| Fast Downward planner(免费) | fast-downward.org | 实践 |
| SWI-Prolog quickstart(免费) | swi-prolog.org | 实践 |
| planning.domains PDDL editor and solver(免费) | planning.domains | 实践 |
| Wikidata SPARQL tutorial(免费) | wikidata.org | 辅助 |
| Silver 等,AlphaGo 和 AlphaZero 论文(免费) | 神经—符号混合的里程碑论文 | 深入 |
| McCarthy & Hayes, “Some Philosophical Problems”(1969,免费) | 框架问题和常识推理论文 | 深入 |
| AlphaGo documentary(免费) | YouTube | 辅助 |
陷阱
| 陷阱 | 为什么会误导 | 更好的回应 |
|---|---|---|
| 把古典 AI 看成纯粹的历史 | 主流机器学习课程很少覆盖古典 AI,这会制造出一批缺少相关词汇的实践者。他们难以理解那些符号方法仍然不可或缺的应用领域——软件验证、形式化规划、知识图谱、基于约束的调度——也无法进入当代神经符号研究文献。 | 直接接触当代部署。完成一个 Z3 教程。用 Fast Downward 跑一个规划基准。考察 Wikidata 如何实现知识表示原则。古典技术嵌入在基础设施中,不在博物馆里。 |
| 以为框架问题已经解决 | 框架问题和常识困难经常被提起,然后立刻被当作历史趣闻跳过。它们并没有被解决。LLM 表现出常识能力,也表现出系统性的常识失败——编造事实、在物理推理任务上失败、对表面改写敏感——这些现象似乎在结构上与古典 AI 在规模化时遇到的问题有关。 | 直接阅读 McCarthy 和 Hayes(1969)。研究 CYC 项目的做法,以及为什么四十年的持续努力仍没有产生可扩展的常识推理。然后用同样的视角观察当代 LLM 失败。这种相似性可以校准:无论范式如何变化,哪些问题仍然困难。 |
| 忽略与理论轴的连接 | 古典 AI 和第三章共享基础,而两个社区并不总是承认这一点。一阶逻辑既支撑 §3.1,也支撑古典知识表示。归结定理证明既是形式化方法(§3.6),也是古典 AI 自动推理。Prolog 是逻辑编程。把它们看成彼此分离的领域,会错过这个学科最有生产力的跨轴连接。 | 读完本节后,回看 §3.1 和 §3.6。实现一个小型归结定理证明器,或完成一个 Prolog 教程。这些部分会组合成一幅连贯图景:逻辑既是理论基础,也是工程工具。 |
| 神经与符号的虚假二分 | “符号 AI vs. 连接主义 AI”的历史框架制造了一种思维习惯,好像两者是互斥选择。AlphaGo 同时包含二者。带有工具、代码解释器和搜索增强的当代 LLM 也同时包含二者。有生产力的问题不是“哪个范式会赢”,而是“哪些问题适合哪种方法,以及它们应该如何结合”。 | 详细研究 AlphaGo 的架构——不是把它当作深度学习的例子,而是把它当作系统性混合设计的例子。神经评估网络和 MCTS 规划组件在做性质完全不同的事情;理解为什么二者都必要,才是核心教训。 |
| 把启发函数设计当作直觉 | 启发式搜索有时被讲得好像选择启发函数只是经验和感觉问题。但这个学科有形式结构:可采纳启发函数永远不高估真实代价;一致启发函数保证 A* 最优性;模式数据库会从问题结构中自动计算可采纳启发函数。这些都是带有数学内容的工程约束。 | 形式化学习可采纳性和一致性。在 15-puzzle 上用曼哈顿距离实现 A*,验证启发函数可采纳,并测量无信息搜索差多少。这个比较会让启发函数质量的价值变得具体且可量化。 |