if you happen to read about new technologies , you are most likely to hear words Artifical intelligence more often than any other words. AI itself is probably the most oustanding creation of human kind which is largely unexplored and growing exponentially if i can say.
AI is about unleashing one of the most amazing thing in the universe , Intelligence. the technology that can learn much faster than us, solve computationaly hard problem human like me or you can’t solve with same speed and accuracy.
What is AI anyway ?
If you think about AI, in a context of machine or technology you think about intelligent machine or intelligent softwares. let’s focus on the word intelligence.
We often tend to use word intelligence to describe things we don’t know how to explain or how it literaly works, if we can explain them we just say they are algorithm or formulas designed for a specific task . It’s only intelligence if we can’t explain then. This definition implies that anything we design is not intelligent because we would know how it works.
Like us human being we consider ourselves as intelligent because we don’t realy understand well how our brains works. Once we understand that we will not consider ourselves as intelligent anymore . or imagine yourself studying mathematics for the first time, you might wonder how your teacher can solve those simple mathematics problems , but when you grow up you realise that it was simple and you might not consider your primary math teacher as intelligent person if you are asked.
But that’s not how we should define intelligence, for AI to be productive the concept of intelligence should be defined in a concept of task , for example if my goal is to plan flights with a lowest possible cost and my system is able to do it with a decent of success, i consider my system as intelligence at flight planning . it just turns out that human are intelligent in doing a lot of different things .Intelligent systems tends apply concept and techniques like search, probabilistic planning and logic to achieve a certain goal.
to design an intelligence system one must understand the task or problem domain.
We refer to a system or AI program as the Agent, and the surroundings or anything that can influence or have an impact on our system’s behaviour the environment. You may only consider the software as the agent and the other hardware components would be external to the agent and that’s part of the environment. or you might consider whole system as the agent, it realy depend on context.
lets take an example of the agent and its environment. for example like a self driving car , we might consider a car as an agent and the surroundings as environment ,whether its something near our agent, agent position in the road, road width, distance from traffic light or may be our vehicle current speed. those are some properties that define our agent environment states.
An agent interact with the environment by sensing its properties and its known as perception.
we need state of the environment on every stage to be able to examine our agent, define the next move towards our goal state.
The process of which the agent decide what action to take based on perceived input is known as cognition.
as you can guess much of discussion about AI focus on cognition (reasoning and decision making ) just human like behaviours. like on self driving car example the agent can perceive the traffic light state and decide whether to stop or keep going.
Some agent directly associate their action with what is perceived or have very simple pre programed behaviours like an automated light that sense something and turn on the light automatically these are referred to as reactive or behaviour based agents.
On the other side some agent delibarate in the forms of non trivial processes such as game playing agent or flight planner . we can classify this agent depending on process they do like planning agents …, just keep in mind that it’s simple to accomplish complicated behaviour by layering simple reactive control.
Types of Learning in Artificial Intelligence
When someone asks you to describe different types of artificial intelligence systems, you might classify them based on their functionality or its evolvement .
Lets start from evolvement, there are three steps AI can deevelop or be evolved .
- Artificial Narrow Intelligence
- Artificial General Intelligence
- Artificial super intelligence
Artificial Narrow Intelligence: is a stage of AI which involves machine that can only perform predefined tasks, simple machine has no thinking capability at this stage. most of the current AI systems far into this stage i guess.
Artificial General Intelligence: At this stage machines have the ability to think and make decisions just like humans do, and we are not far off this stage currently.
Artificial super intelligence: at this stage the machine have the ability to outperform humans. we are kind of far off this stage but people described it in some movies,where machine have taken over the world. and we are better off this i think.
Based on the functionality of AI systems, AI can be classified into the following types:
- Reactive machines AI
- Limited memory AI
- Theory of Mind AI
- Self-aware AI
Reactive machines AI: The most basic types of AI systems have the ability neither to form memories nor to use past experiences to inform current decisions, its purely reactive . for example like a chess playing agent which observe oponent moves and its position to decide next best move.
Limited memory AI : AI can make informed and better decisions by looking into the past data from its memory. for example self driving cars can look into past decisions and their effect to decide which action to take in a certain scenario.
Theory of Mind AI: This kind of AI mainly focuses on emotional intelligence, this tipe of AI is not only the form representations about the world, but also about other agents or entities in the world.
Self-aware AI: This kind of AI is a bit far in view of current systems . However, in the future, it is possible to to build the systems that can form representations about themselves. yes, a machine that have consciousness.
To classify AI problems is using properties of the environments and components of the state that needs to be captured.
An environment can be fully observable when your agent can see the entire environment or partially observable like in serf driving car where you cant see the entire environment
like palying chess game task where the agent can see the entire board, its fully observable.
It can be deterministic where an agent know for sure the result of each action it take or stochastic where an agent is not sure of the result of ist actions .
for example Recognizing Handwritten Text task , the environment is stochastic becouse there are uncertainity about the result becouse there are number of possible solutions.
An environment can be discret where there is a finite number of actions you can take or continuous where the number of possible state is infinite .
like Playing Poker task , it is discret becouse there are finite number of actions an agent can take.
It can be benign where the agent t is the only one taking actions that intentionally affect its goal . or it could be adversarial where there are one or more agents that takes actions to defaeat its goal.
for example like playing chess task , it is adverserial becouse the agent is playing against another oponent who is taking actions to defeat the agent.
In all this, what’s AI?
An intelligence system is the one that takes action to maximize its chance to achieve the desired goal , that means it requires agent to behave optimally however it is hard to find optimal solution given the constraight the agent might face like for example a partialy observable environment , limited computational resources such as memories and processing speed .
intelligent Agent should not be expected to behave optimally but for the sake of quantifying our agent intelligence, we can come up with a level of performance or bound that we desire our agent to meet or exceed. for example we might want our flight planning agent to minimize the cost 30% or so . This known as bounded optimality .
to me AI is a branch of computer science concerned with building intelligent machine that perform intelligent tasks.