Seven Key Dimensions to Help You Understand Artificial Intelligence EnvironmentsJesus RodriguezBlockedUnblockFollowFollowingJun 14Every artificial intelligence(AI) problem is a new universe of complexities and unique challenges.
Very often, the most challenging aspects of solving an AI problem is not about finding a solution but understanding the problem itself.
As paradoxically as that sounds, even the most experienced AI experts have been guilty of rushing into proposing deep learning algorithms and exoteric optimization techniques without fully understanding the problem at hand.
When we think about an AI problem, we tend to link our reasoning to two main aspects: datasets and models.
However, that reasoning is ignoring what can be considered the most challenging aspect of an AI problem: the environment.
When designing artificial intelligence(AI) solutions, we spend a lot of time focusing on aspects such as the structure of learning algorithms [ex: supervised, unsupervised, semi-supervised], the architecture of a neural network [ex: convolutional, recurrent…] or the characteristics of the data [ex: labeled, unlabeled…].
However, little attention is often provided to the nature of the environment on which the AI solution operates.
As it turns out, the characteristics of the environment are the number one element that can make or break an AI model.
There are several aspects that distinguish AI environments.
The shape and frequency of the data, the nature of the problem , the volume of knowledge available at any given time are some of the elements that differentiate one type of AI environment from another.
Deep diving into those characteristics will guide the strategies of AI experts in areas such as algorithm selections, neural network architectures, optimization techniques and many other relevant aspects of the lifecycle of AI applications.
Understanding an AI environment is an incredibly complex task but there are several key dimensions that provide clarity on that reasoning.
Seven Key Dimensions to Classify an AI EnvironmentOne of the most effective methodologies for understanding an AI environment is to classify it across a series of well-known dimensions that are often only segmented in two or three classifications.
Among the different characteristics that can be used to classify an AI environment, there are seven key exclusive dynamics that provide a rapid understanding of the challenges and capabilities needed by AI agents.
1-Single Agent vs.
Multi-AgentOne of the most obvious dimensions to classify and AI environment is based on the number of agents involved.
The vast majority of AI models today focus on environments involving a single agent but there is an increasing expansion in multi-agent settings.
The introduction of multiple agents in an AI problem raises challenges such as collaborative or competitive dynamics which are not present in single-agent environments.
IncompleteComplete AI environments are those on which, at any given time, the agents have enough information to complete a branch of the problem.
Chess is a classic example of a complete AI environment.
Poker, on the other hand, is an incomplete environments as AI strategies can only anticipate many moves in advance and, instead, they focus on finding a good ‘equilibrium” at any given time.
Most of the famous Nash equilibrium principles are particularly relevant in incomplete AI environments.
2-Fully Observable vs.
Partially ObservableA fully observable AI environment has access to all required information to complete target task.
Image recognition operates in fully observable domains.
Partially observable environments such as the ones encountered in self-driving vehicle scenarios deal with partial information in order to solve AI problems.
Partially observable environments often rely on statistic techniques to extrapolate knowledge of the environment.
CollaborativeCompetitive AI environments face AI agents against each other in order to optimize a specific outcome.
Games such as GO or Chess are examples of competitive AI environments.
Collaborative AI environments rely on the cooperation between multiple AI agents.
Self-driving vehicles or cooperating to avoid collisions or smart home sensors interactions are examples of collaborative AI environments.
Many multi-agent environments such as video games include both collaborative and competitive dynamics which makes them particularly challenging from an AI perspective.
Dynamicstatic AI environments rely on data-knowledge sources that don’t change frequently over time.
Speech analysis is a problem that operates on static AI environments.
Contrasting with that model, dynamic AI environments such as the vision AI systems in drones deal with data sources that change quite frequently.
Dynamic AI environments often need to enable faster and more regular training of AI agents.
ContinuousDiscrete AI environments are those on which a finite [although arbitrarily large] set of possibilities can drive the final outcome of the task.
Chess is also classified as a discrete AI problem.
Continuous AI environments rely on unknown and rapidly changing data sources.
Multi-player video games are a classic example of continuous AI environments.
StochasticDeterministic AI environments are those on which the outcome can be determined base on a specific state.
By determinism, we specifically refer to AI environments that ignore uncertainty.
Most real world AI environments are not deterministic.
Instead, they can be classified as stochastic.
Self-driving vehicles are a one of the most extreme examples of stochastic AI environments but simpler settings can be found in simulation environments or even speech analysis models.
Understanding an AI environment is one of the most challenging steps on any AI problem.
Luckily, the friction points across the seven dimensions explored in this article often yield a robust classification of an AI environment and facilitate the selection of models and architectures.
While there have been notorious advancements in AI architectures and optimization techniques, the analysis of environments remains a highly subjective aspect of the AI lifecycle.