A modern approach to AI · Chapter 28

The Future of AI

The direction of AI depends not only on individual algorithms but on how capabilities are organized into complete systems and used in society.

Chapter guide

  1. 28.1 AI Components — Perception, knowledge, reasoning, learning, language, and action are capabilities that can be combined in different ways.
  2. 28.2 AI Architectures — An architecture coordinates components, memory, goals, and feedback into an agent that operates over time.

No single architecture fits every task. Reliability depends on component interfaces, uncertainty handling, and oversight as much as raw model performance.

Interactive: assemble an agent

Toggle modules and run a task through the resulting pipeline. Disabled modules visibly change what the agent can do.

Task: find a safe path to the charging station

Configure modules, then run the task.

Reading the architecture trace

A component provides a capability; an architecture organizes their interaction. In this toy pipeline, perception supplies observations, memory represents map information, a planner selects a path, and a safety check reviews the proposed action. “Run agent” visits enabled boxes in their fixed display order, highlighting each stage. For example, disabling Perception still lets the illustration visit the remaining modules, but it no longer demonstrates how the system obtains the station's location. Disabling Safety check explicitly ends without that review. The trace is an explanatory script, not a functional navigation or safety system.

The actual result of a component depends on its interface and data; merely enabling a checkbox does not implement sensing, memory retrieval, route search, or verification.

Complexity of the demo

Let M be the total number of modules and m the number enabled (m≤M). Building the pipeline visits all M boxes and uses O(M) time and O(M) DOM space. Starting a run rebuilds those boxes and gathers the enabled list in O(M), then its m timed stages take O(m) total processing; overall startup plus run is O(M+m)=O(M), with O(m) auxiliary space for that list and O(1) state per timer tick. This page has M=4, so setup and each complete run are O(1) for its fixed configuration. In a real agent, component runtimes and retained memory can dominate; this count only describes the UI trace.