AI studies "intelligent agents", entities capable of "perceiving" their environment and taking action to reach a specified goal. Intelligent agents (IAs) exhibit adaptive properties in order to be able to cope flexibly with complex and changing environments. IAs design incorporates machine learning from input data ("perceiving") to better assess and handle future inputs with none, or least possible, human intervention. IAs comprise software and computing hardware (where the software runs), but may also involve special hardware such as sensors and actuators as in Cyber-Physical Systems (CPS).
IAs are somewhat related to Autonomic Computing, which was initiated by IBM in 2001 as a way to develop self-managed software systems.
Our services in AI include machine learning, deep learning, data science and multi-agent systems, as introduced below.
Machine Learning (ML) is one of the major areas of AI, and Deep Learning (DL) a subarea which has achieved great success in computer vision and other domains since early 2010s thanks both to advances in hardware and software and to the availability of large data sets. Interest in AI worldwide (for the 3rd time since mid 1950s) is partly due to the recent success of DL.
Data Science (DS) is the business-oriented, software engineering aspect of AI. Through collecting, preparing and analysing historical data related to business processes, DS seeks to identify opportunities for improvement and to develop ML automated solutions. ML solutions either automate, optimise or innovate a process through automated prediction of the outcome of the process (as learned/inferred from historical data).
DS/ML may involve processing large data sets (as using more data in building an ML model usually increases prediction accuracy) with high performance, parallel computing frameworks such as MapReduce or Spark.
DS is multidisciplinary area. Maths & Statistics skills help to model, summarise and visualise datasets; Hacking (computer science) skills help to design and use algorithms to efficiently store, process, and visualise data; Expertise in a domain helps both to formulate the right questions and to put their answers in context.
Please see our experience in ML, DL and DS.
Implementation of DS projects in their entirety or partially:
Definition of business goals
Requirements engineering
Design and development of solution
Deployment and evaluation of solution
ML and DL specific solutions
Data Lakes design and deployment
On premise, cloud or hybrid solutions
High-performance Big Data solutions based on MapReduce or Spark frameworks
Classic ML algorithms:
Supervised: SVM, random forest, linear regression, k-nearest neighbor, naive Bayes, decision trees.
Unsupervised: k-means clustering, self-organizing map, multi-layer perceptron neural network (NN) , radial-basis functions NN.
Modern ML algorithms and neural networks: deep learning, convolutional NN, federated ML, recurrent NN, long short-term memory NN, deep belief NN, self learning NN, reinforcement learning.
Dimensionality reduction algorithms: PCA, SOM.
Deep learning frameworks: Tensorflow/Keras, Pytorch.
Mathematical background: Linear algebra, differential and integral calculus, statistical techniques and probability models.
Highly scalable messaging frameworks: ActiveMQ, RabbitMQ, Google Firebase.
Data and ML processing notebooks: Anaconda/Pandas, Google CoLab.
Hadoop and Spark high-performance, parallel computing frameworks.
Programming languages: C/C++/C#, Python, Java.
Data formats: json, xml, etc.
Database managers: MySQL and NoSQL.
Visualisation tools: Tableau.
Cloud services: Google Cloud Platform, Amazon Web Services, Microsoft Azure.
Hardware: Intel Movidius Neural Compute hardware for deep learning.
MAS are computational models for simulating the actions and interactions of intelligent agents with a view to assessing the behaviour of a system (of multiple agents) as a whole, a phenomenon known as emergent behaviour. MAS can solve problems that are difficult or impossible to solve by an individual agent or a single monolithic system. MAS have found many applications in industry, technology, the military, and scientific research.
Each agent in a MAS embodies/has a function that determines its overall behaviour. However, the behaviour of each agent is not predictable (and less so the behaviour of a MAS composed of multiple agents), because the function of each agent takes into account (as input data): (1) the location of the agent within the MAS and (2) the dynamic behaviour (status over time) of neighbour agents and the environment. Also, the closer an agent is to other agents, the stronger its influence on other agents will be and vice versa.
A MAS may involve different types of agents and thus different types of functions which may be as complex as to involve machine learning based on, for example, Deep Learning Neural Networks.
The principal goal of a MAS is predicting the emergent, collective (global) behaviour of all the agents comprising the MAS as a whole.
MAS are highly parallel systems, as the agent functions comprising a MAS can be run, each, on a different processor.
Economics and social sciences. MAS have been used in these areas since they facilitate representing complex behaviours. For example, the fluctuations of financial markets and other economic systems can be modelled and simulated through a MAS comprising different types of agents (functions) such as: currency exchanges, political news and other types of news, stocks types, hedge funds, etc.
In designing a MAS, it must be determined the type and level of influence an agent will have on other agent of its type and of other types. For example, how will variations in a stock price will affect hedge funds.
Business and technology:
analysis of traffic congestion, e.g., analysis of the impact of accidents to predict how traffic will behave.
social networks, e.g., analysis of people's response (spread of a post) to different types of news in politics (political campaigns), entertainment, health, economics.
organisational behaviour, e.g., how the use of methodologies affects performance and impact project progress or success.
Team work, e.g., how the number and background of team members affect performance.
supply chain optimisation and logistics, e.g., the change of suppliers affects business profits.
consumer behaviour including word of mouth, e.g., how customers' opinions on products/services affect product sales.
distributed computing, e.g., to predict failure of processing nodes, lack of workload balance.
workforce management, e.g., to evaluate different project management methodologies.
portfolio management, e.g., to evaluate different investment strategies as to number, variety and risk of stocks.
Biology, Society and Politics:
population dynamics, e.g., analysis of government policies as to birth control on demographics. Similarly for:
the growth and decline of ancient civilisations, evolution of ethnocentric behavior, forced displacement/migration, language choice dynamics,
vegetation ecology and landscape diversity
prediction of the spread of epidemics and the threat of biowarfare.
stochastic gene expression, e.g., to predict people's personality, proneness to different types of illness such as diabetes, cancer, etc.
cognitive modeling, e.g., to analyse the spread of knowledge
pharmacological systems in early stage and pre-clinical research to aid in drug development and gain insights into biological systems that would not be possible a priori.
Biomedical Applications:
3D breast tissue formation/morphogenesis, e.g, to help in the diagnosis of cancer development.
the effects of ionising radiation on mammary stem cell subpopulation dynamics, inflammation, and the human immune system.
analysis of biological systems at molecular-level.
Please see our experience in MAS.
Predictive/diagnostic modelling using MAS
Statistical testing of predictive/emergent behaviour
MASON framework with Java Language
FLAME framework with C Language
XML and JSON data model representations
High performance computing
Cloud computing and cloud data storage
Platforms: Linux, Windows, iOS, mobile and web