# Introduction FAI
> AI is a crossroad between computer science and engineering
Many definitions of an 'intelligent software':
| | |
|:--:|:--|
| Systems that 'think' as humans | Systems that think rationally |
| Systems that act as human | Systems that act rationally |
Note that in the 3rd and 4th definitions you are saying nothing about the internal structure. This is a crucial step in AI.
> It is intelligent not because you are reasoning in a specific way, but because it's acting in a specific way
## Agent
Agent as unifying paradigm. Agent is an entity that through sensors has perceptions of the enviroment and can perform actions.
The goal of the AI is to design agents. Agent function f() is a function that turns perceptions into actions.
### Agent architecture
4 types of agent:
- **Simple Reflex Agent** :
they're basically if/then conditions. They have a set of rules
- **Reflex Agent with State** :
a simpe reflex agent with a state model. The man difference is that all the rules/conditions are applied to something more complex
- **Goal-Based Agent** :
it's defined a state of the world the agent should reach. We will mostly discuss about this agent
- **Utility-Based agent** :
it's like a goal based agent where every possible state has attached with an 'utility value'
Note that all these types could also learn. There isn't a single approach to build out agents.
## Environment
- Complete/partially observable
- Static/dynamic (dynamic when the enviroment maybe is in a different state since the last time the agent saw it)
- Discrete/continuos
- Single agent/multiagent
- Deterministic/stochastic/indeterministic