An "agent" is anything that perceives and takes actions in the world. A rational agent has goals or
preferences and takes actions to make them happen.[d][32] In automated planning, the agent has a specific
goal.[33] In automated decision-making, the agent has preferences—there are some situations it would
prefer to be in, and some situations it is trying to avoid. The decision-making agent assigns a number to
each situation (called the "utility") that measures how much the agent prefers it. For each possible action,
it can calculate the "expected utility": the utility of all possible outcomes of the action, weighted by the
probability that the outcome will occur. It can then choose the action with the maximum expected
utility.[34]
In classical planning, the agent knows exactly what the effect of any action will be.[35] In most real-world
problems, however, the agent may not be certain about the situation they are in (it is "unknown" or
"unobservable") and it may not know for certain what will happen after each possible action (it is not
"deterministic"). It must choose an action by making a probabilistic guess and then reassess the situation
to see if the action worked.[36]
In some problems, the agent's preferences may be uncertain, especially if there are other agents or
humans involved. These can be learned (e.g., with inverse reinforcement learning), or the agent can seek
information to improve its preferences.[37] Information value theory can be used to weigh the value of
exploratory or experimental actions.[38] The space of possible future actions and situations is typically
intractably large, so the agents must take actions and evaluate situations while being uncertain of what the
outcome will be.
A Markov decision process has a transition model that describes the probability that a particular action
will change the state in a particular way and a reward function that supplies the utility of each state and
the cost of each action. A policy associates a decision with each possible state. The policy could be
calculated (e.g., by iteration), be heuristic, or it can be learned.[39]
Game theory describes the rational behavior of multiple interacting agents and is used in AI programs that
make decisions that involve other agents.[40]
Machine learning is the study of programs that can improve their performance on a given task
automatically.[41] It has been a part of AI from the beginning.[e]
There are several kinds of machine learning.
Unsupervised learning analyzes a stream of data and
finds patterns and makes predictions without any other
guidance.[44] Supervised learning requires labeling the
training data with the expected answers, and comes in
two main varieties: classification (where the program
must learn to predict what category the input belongs
in) and regression (where the program must deduce a numeric function based on numeric input).[45]
In reinforcement learning, the agent is rewarded for good responses and punished for bad ones. The agent
learns to choose responses that are classified as "good".[46] Transfer learning is when the knowledge
gained from one problem is applied to a new problem.[47] Deep learning is a type of machine learning
Learning