A hybrid system combines learned continuous components with discrete algorithmic components. Learning supplies perception and intuition; programs supply reasoning, search, memory, planning, or symbolic manipulation. Combining both can outperform either an end-to-end neural network or software without machine-learning elements. section 19.4.5 section 20.3
Hybrid designs commonly divide responsibilities between components:
- Deep-learning modules process data and provide pattern recognition, perception, intuition, or learned value and policy estimates. section 19.4.5 section 20.3
- Discrete programs handle structured operations such as search, reasoning, planning, memory, control flow, variables, recursion, and data structures. section 19.4.5 section 20.3
- The interface between them lets learned components update or guide an explicit model, while algorithmic components organize the resulting decisions. section 19.4.5
AlphaGo and autonomous driving
AlphaGo combines handcrafted Monte Carlo tree search with learned value and policy networks. A self-driving system can maintain a human-designed 3D world model while deep-learning perception modules continually update it from the vehicle’s surroundings. These divisions combine learned recognition with explicit algorithmic structure. section 19.4.5
Figure 19.15 A learned program relying on both geometric primitives (pattern recognition, intuition) and algorithmic primitives (reasoning, search, memory)
Use the figure to compare geometric primitives for pattern recognition and intuition with algorithmic primitives for reasoning, search, and memory. section 19.4.5




