Understanding Robotics and AI Integration
Understanding Robotics and AI Integration
We have read that robot is a programmable machine that can complete a task.
Correspondingly, the term robotics is the study focused on designing, developing and
programming physical robots which are able to interact with the physical world and automate
one or more tasks. Each robot has a different level of autonomy varying from human-
controlled bots that carry out tasks to fully-autonomous bots that perform tasks without any
external influences.
Many people think that AI and robotics are synonymous. But this is not true. Table
8.1 highlights the difference between an AI program and a robot system.
Moreover, from the Venn diagram as shown in Fig. 8.8, it is clear that there is one small area
where the two fields overlap and, in this area, we have artificially intelligent robots (AIRs).
These AIRs are the bridge between robotics and AI.
Although many AIRs (refer Fig. 8.9) are controlled by AI programs, they are not artificially
intelligent. For example, most industrial robots are programmed to carry out a repetitive
series of movements which do not require artificial intelligence. However, such non-
intelligent robots have limited functionality.
Case 1: A warehousing robot may use a path-finding algorithm to navigate around the
warehouse.
Case 2: A drone may use autonomous navigation to return to its owner when it is about to run
out of batteries.
Case 3: A self-driving car uses AI techniques to detect and avoid potential hazards on the
road.
A robot is a mechanical device which completes it tasks in the environment for which it is
designed. For example, the Mars 2020 Rover’s wheels are motorized and made of titanium
tubing to firmly grip the harsh terrain of the red planet.
1. Robots need electrical components that control and power the machinery. Usually,
they draw electric current using a battery.
2. Robots work on instructions written using computer programming. These
instructions tell the robot what to do, when to do and how to do it.
Mechanical bots come in a variety of designs, shapes and sizes to efficiently perform the task
they are designed to perform. For example, RoboBee is a 0.2-millimeter-long robot while
Vindskip is a 200-metre-long robotic shipping vessel. To classify them broadly into different
categories, robots can be divided based on their capabilities to perform a particular task.
Pre-Programmed Robots
They operate in a controlled environment where they perform simple, monotonous tasks. For
example, a mechanical arm on an automotive assembly line to weld a door on, to insert a
certain part into the engine, etc. (as shown in Fig. 8.10) is an example of such a robot that
performs its tasks faster and more efficiently than a human.
Humanoid Robots
They look like or mimic human behaviour and usually perform human-like activities (like
walking, carrying objects). These days, humanoids look like us. For example, Hanson
Robotics’ Sophia and Boston Dynamics’ Atlas.
Autonomous Robots
These machines operate independently of human operators and are usually designed to
perform tasks in open environments without any human supervision. Autonomous robots
perceive the world around them using sensors and then use decision-making capabilities to
take the optimal next step based on their data and mission. For example, Roomba vacuum
cleaner uses sensors to roam freely throughout a home. Other examples of autonomous robots
are lawn trimming bots, hospitality bots, autonomous drones and medical assistant bots.
We often call these robots, cobots. Cobot, or a simple collaborative robot, is a non-intelligent
robot. For example, a cobot can be programmed to pick up an object and place it elsewhere.
This is done by training a specialized computer vision program to identify different types of
objects generally by using an AI algorithm called Template Matching. Broadly, this is an
autonomous function as no human intervention is required once the cobot has been
programmed to do its task efficiently. Moreover, the task does not require any intelligence as
the cobot will always be picking the object in the same way until its instructions are not
changed.
Teleoperated Robots
These are semi-autonomous bots that use a wireless network to enable human control from a
safe distance (as shown in Fig. 8.11). They are usually deployed in extreme geographical
conditions, weather and circumstances. For example, drones used to detect landmines on a
battlefield, robots used to fix underwater pipe leaks during oil spill are examples of
teleoperated robots.
Augmenting Robots
Also known as VR robots, they are used to enhance or replace current human capabilities.
With their help, science fiction could become a reality very soon by making humans faster
and stronger. For example, robotic prosthetic limbs or exoskeletons are used to lift hefty
weights.
Independent Robots
They perform their work autonomously and independent of human operator control. So, they
need to be intensely programmed. Such robots are deployed to replace humans for
performing dangerous, mundane or otherwise impossible tasks ranging from bomb diffusion
and deep-sea travel to factory automation. Though independent robots eliminate certain jobs,
the also present new possibilities for growth.
Dependent Robots
These robots are non-autonomous robots as they interact with humans to perform their
actions. Humans guide robots to enhance and supplement their already existing actions. For
example, these days, advanced prosthetics (the branch of surgery concerned with the making
and fitting of artificial body parts. For example, a piece of flexible material applied to a
person’s face or body to change their appearance temporarily) are controlled by the human
mind.
In 2018, Johns Hopkins APL created a popular example of a dependent robot was created by
in 2018 for a patient (Johnny Matheny) whose arm was amputated above the elbow. A
modular prosthetic limb was fitted in Matheny that was controlled by electromyography, or
signals sent from his amputated limb that controls the prosthesis. Over time, he could
accurately move his arm and even play the piano. At this time, the signals sent from his
amputated limb became smaller and less variable.
Chatbots
Software robotics, also called bots, are computer programs that perform tasks autonomously.
For example, a chatbot is a computer program that simulates conversation both online and
over the phone and is often used in customer service scenarios. While simple chatbots answer
questions with an automated response, more complex digital assistants learn from user
information.
Types of Bots
Bots, or software robots only exist on the Internet and originate within a computer. Hence,
they cannot be called robots. We have learnt in the characteristics of a robot that a robot has a
physical form, such as a body or a chassis. Some popularly used bots are as follows:
Robots are created to perform a variety of tasks to present a solution for a wide range of
problems. For this, they need a set of specialized components that are discussed below.
Control System
Control system is a CPU that directs a robot’s task at high level. It performs all computations
to tell a robot how to utilize its specific components, like how our brain sends signals to other
parts of the body to complete a specific task. The tasks that a robot completes vary from an
invasive surgery to assembly line packing.
Sensors
Sensors are devices that detect the events or changes in the environment and send data to the
computer processor. For this, they are equipped with other electronic devices to provide
electrical signals that allows the robot to interact with the world. Basically, the electrical
signals act as a stimulus that are processed by the controller. Based on the stimulus received,
the controller instructs the robot to interact with the outside world. This helps the robot to
efficiently respond to real-time data. Popularly used sensors within a robot include video
cameras (as eyes), photoresistors (react to light) and microphones (as ears). All these sensors
allow the robot to capture information about its surroundings and process it to deduce the
most logical conclusion and give commands to other components.
Actuators
Actuators are the motor parts that facilitate a robot’s movement. We have read that a machine
is a robot if it has a movable frame or body and actuators are the components that cause
movement. Actuators are made up of motors that receive signals from the control system and
move in tandem to carry out the movement necessary to complete the assigned task. They are
made of metal or elastic.
Electric motors are the devices that convert electrical energy into mechanical energy and are
required for the rotational motion of the machines.
Actuators help in moving and controlling a robot by using energy that can be electrical,
hydraulic and air, etc. This means that actuators are usually operated using electricity
(electrical), compressed air (pneumatic actuators) or oil (hydraulic actuators). Actuators can
create linear as well as rotary motion.
Power Supply
Power supply is done to the robot by a battery. Just as we need food to do our work, robots
require power to operate. The main use of power supply is to convert electrical current to
power the load. Stationary robots used in a factory work on AC power while others operate
via an internal battery.
While a majority of robots work on lead-acid batteries as they are safe and have long shelf
life, others use compact and expensive silver-cadmium batteries. These batteries are chosen
depending on safety, weight, replaceability and lifecycle of the robot.
AI algorithms are used in Google searches, Amazon’s recommendation engine and GPS route
finders.
However, for future robotic development, pneumatic power from compressed gasses, solar
power, hydraulic power, flywheel energy storage, organic garbage through anaerobic
digestion and nuclear power are also being considered as potential sources of power.
End Effectors
End effectors are the physical, typically external components of a robot that facilitate it to
complete a task. For example, in factories, robots usually have interchangeable tools like
paint sprayers, gripping claws or even hands for undertaking tasks like deliveries, packing,
bomb diffusion, etc.
In this section, we will list AI technologies that are used in robotics. We have already studied
some of them. These technologies are discussed below.
The term ‘complex event process’ is popularly used in various industries including
healthcare, finance, security, marketing, detecting credit card fraud, stock marketing,
etc. For example, the deployment of an airbag in a car is a complex event that is based
on real-time data coming from multiple sensors.
5. Transfer Learning and AI: Transfer learning solves a problem with the help of an
already solved problem. So, the knowledge gained from solving one problem is
utilized to solve another problem that is related to the problem to be solved. For
example, the model used to recognize a square shape can also be used to identify a
circular shape.
Since transfer learning reuses the pre-trained model for a related problem, the actual
learning time for the new problem to be solved is relatively less and thus provides a
cheaper solution. In robotics, transfer learning trains one machine using other
machines.
6. Reinforcement Learning: Reinforcement learning focuses on learning based on
feedback. In this technique, an AI agent to learns and explores the environment,
performs actions and automatically learns from experience or feedback obtained for
each action. Reinforcement learning makes the agent learn to behave optimally
through hit-and-trail method while interacting with the environment. It is mainly used
to deduce decisions to achieve goals in an uncertain and potentially complex
environment.
In the context of robotics, robots explore the environment to learn how to work
optimally through hit and trial method. For every correct action, the robot gets a
reward and a punishment for an incorrect action. In this way, reinforcement learning
provides a framework to design and simulate sophisticated and hard-to-engineer
robotic behaviours.
In this section, we will read about mobile robots that are critical to robust mobility. For this
we must have some knowledge about the kinematics of locomotion, sensors for determining
the robot’s environmental context and techniques for localizing with respect to its map. Here,
we will talk about cognitive level of robots.
Cognition refers to the capability of a system to make purposeful decision and execute them
to achieve its highest-order goals. In the context of a mobile robot, cognition refers to robust
mobility. Robot navigation aims to make the robot reach its goal position efficiently and
reliably based on its knowledge about its environment, the goal position and values of the
sensor.
Although many different approaches have been proposed for navigating a robot, there are
strong similarities between all of them. The underlying difference exists in the manner in
which they decompose the problem into smaller sub-units. Given a map and a goal location,
path planning identifies a trajectory that will help the robot to reach the final destination.
Path planning is a strategic problem-solving competency (capability), as the robot must make
vital decisions to achieve its goals. The second competency is tactical extreme to avoid all
obstacles and collisions by modulating the trajectory of the robot. Given readings of real-time
sensor readings, several approaches are proposed to avoid obstacles. We will discover a few
of them.
While navigating, a robot plans and reacts. Without reacting, the planning effort(s) will be of
no use as the robot never be able to reach its goal. Correspondingly, without planning, the
robot will never reach its goal.
Suppose a robot R at time i in the initial belief state bi has a map Mi to reach position p while
satisfying certain some temporal constraints locg(R) = p; (g ≤ n) (like before timestep n).
Although the robot’s movements have to be physical, the robot can only sense its belief state,
not its physical location. We will, therefore, map the goal of reaching location p to reaching a
belief state bg. We need a plan q that specifies one or more trajectories from bi to bg.
However, the problem arises when either the robot’s position is not quite consistent with bi or
Mi is incorrect and/or incomplete. Furthermore, the real-world environment is dynamic. Even
if Mi is correct at time i, M may change over time as the robot must incorporate new
information gained during plan execution.
Over a period of time, the environment changes and the robot’s sensors gather new
information. In this scenario, reacting becomes more important. Reacting modulates the
robot’s behaviour to update the planned upon trajectory so that the robot still reaches its goal
position. Moreover, unanticipated new information also requires changes to the robot’s
strategic plans. Therefore, in the specified time limits, the plan should consider every new
piece of information in real time to produce a new plan to react to the new information
appropriately. This theoretical extreme, the point at which the concept of planning and
reacting merge, is called integrated planning and execution.
Trajectory Planning
Trajectory planning refers to moving from point A to point B while avoiding collisions over
time in a 2D or 3D space (refer Fig. 8.12). It is an important concept in designing
autonomous vehicles. Trajectory planning also known as motion planning is mistakenly
referred to as path planning. However, it is different from path planning as it is parametrized
by time. Besides path planning, trajectory planning also incorporates planning based on
velocity, time, and kinematics.
FIGURE 8.12 Trajectory planning
Configuration Space
The goal of path planning is to find a path from the initial position to the goal position in the
physical space that avoids all collisions with the obstacles. This problem becomes
particularly more difficult as k grows large. If we define the configuration space obstacle O
as the subspace of C, the free space in which the robot can move safely can be computed as,
F = C - O.
Figure 8.13 shows a picture of the physical space and a 2D configuration space for a planar
robot arm with two links. The robot’s goal is to move its end effector from position c1 to c2.
Free Space
Free space Cfree is the set of all configurations that are collision-free. The robot should be
programmed to use kinematics and collision detection from sensors to ensure if a given
configuration is a collision free or not.
Target Space
Target space is a linear subspace of free space and consists of space in which we want the
robot to explore. In global motion planning, target space is observable by the robot’s sensors.
But in local motion planning, some states in target space are not observable by robot’s
sensors. To solve a problem, robots assume several observable virtual target spaces (around
itself). The virtual target space is often referred to as sub-goal.
Degrees of Freedom
It specifies modes in which a mechanical device or system can move. This means that the
number of degrees of freedom is equal to the total number of independent displacements or
aspects of motion. For example, in a robotic arm, shoulder and wrist can move up or down,
left or right but elbow can move up or down. Wrist and shoulder can also be rotated (or
rolled).
Therefore, such a robot arm has five to seven degrees of freedom. And if the robot has two
arms, then total number of degrees of freedom is doubled.
Multi-legged mobile robots can have more than 20 degrees of freedom. For example, Project
Nao, which looks superficially like a large space-age doll, has 25 degrees of freedom.
Trajectory planning suffers from two main problems which are discussed below.
Holonomicity
This gives the relationship between the controllable degrees of freedom and total degrees of
freedom of the robot. A robot is said to be holonomic if the number of controllable degrees of
freedom is greater than or equal to the total degrees of freedom. Holonomic robots are easy to
work with as they facilitate many movements easier to make. Moreover, returning to a past
pose is much easier.
For example, if a self-driving car is designed as a non-holonomic robot, then it will have no
way to move laterally, thereby making its certain movements (like parallel parking) difficult.
In contrast to this, a holonomic vehicle would be one with mecanum wheels, such as the new
Segway RMP.
Dynamic Environments
In dynamic environments, like the real world, objects that may cause collision are not
stationary. This makes trajectory planning more difficult as objects are moving with respect
to time. Many-a-time, it may not be possible for a robot to move backward in time.
Moreover, many choices are completely irreversible due to terrain, such as moving off of a
cliff.
1. Artificial Potential Field: The algorithm places values over the map with the goal
having the lowest or highest value that either increases or decreases depending on the
distance from the goal (refer Fig. 8.14).
FIGURE 8.14 Artificial Potential Field
Obstacles defined can have an incredibly high or low value. The robot is programmed
to move to the lowest or (highest) potential value adjacent to it, which should lead it
to the goal. However, this algorithm often gets trapped in local minima.
Search algorithm like A is used to find a path to reach the goal position from the
starting position. Although a lower resolution grid having bigger pixels will make the
search procedure execute faster, it may however miss paths through narrow spaces of
Cfree. Moreover, as the resolution of the grid increases, memory usage also grows
exponentially. In such a scenario and especially in large areas, another path planning
algorithm may be necessary.
The challenge is to construct a set of roads that together helps the robot to move around
anywhere in its free space, while minimizing the number of total roads. In this section, we
will discuss two approaches for road mapping—visibility graph and Voronoi diagram. While
visibility graph finds paths that have minimum lengths by bringing the roads closer to the
obstacles, Voronoid diagram, on the other hand, keeps roads as far as possible from the
obstacles.
The visibility graph for a polygonal configuration space C includes all edges (including initial
and final positions) joining every pair of vertices that can see each other. The unobstructed
roads depicted as straight lines in the graph are the shortest distances between two vertices.
The job of the path planning algorithm is to find the shortest path from the initial position to
the goal position along the roads drawn in the visibility graph (see Fig. 8.16).
FIGURE 8.16 Visibility Graph
The visibility graph path planning algorithm is very simple and straight-forward. It can be
readily used when objects in the environment are described as polygons either in continuous
or in discrete space. However, there are two important limitations of this algorithm.
First, with increase in the number of obstacle polygons, the number of edges and vertices
increases. Therefore, this algorithm works well in sparse environments, but is very slow and
inefficient when used in densely populated environments.
Second, the solution paths found by visibility graph planning algorithm takes the robot as
close as possible to obstacles on the way to the goal.
Though this algorithm is optimal in terms of the length of the solution path, it does not keep
the robot away from obstacles. This compromises safety. A potential solution can be either to
grow the obstacle’s size significantly so that it becomes more than the robot’s radius, or
modify the solution path after path planning to distance the path from obstacles. However,
such fixes compromise the optimal-length results of the algorithm.
A Voronoi diagram maximizes the distance between the robot and obstacles in the map. For
each point in the free space, distance from that point to the nearest obstacle is calculated and
plotted as a height coming out of the page (refer to Fig. 8.17). As the robot moves away from
the obstacle, the height increases. Sharp ridges can be seen in the Voronoi diagram at points
that are equidistant from two or more obstacles. Edges are formed by these sharp ridge
points. When obstacles in the configuration space are polygons, the Voronoi diagram has
straight and parabolic segments as shown in Fig. 8.18.
FIGURE 8.17 Voronoi Diagram
FIGURE 8.18 Forming Edges and making graph from the given Vornoi Diagram
The path in the Voronoi diagram may not be optimal in terms of total path length. Another
limitation of this diagram is limited range localization sensors. Since the distance between the
robot and obstacle is maximized, any short-range sensor on the robot may not be able to
sense its surroundings. Hence, the chosen path may be quite poor from a localization point of
view.
However, the main reason of popularity of the Voronoi diagram method is its executability.
Given a planned path via Voronoi diagram planning, a robot with range sensors can follow a
Voronoi edge in the physical world using simple control rules that match those used to create
the Voronoi diagram. Voronoi Diagram can also be used to conduct automatic mapping of an
environment by finding and moving on unknown Voronoi edges and creating a consistent
Voronoi map of the environment.
The cell decomposition path planning aims to distinguish between geometric areas, or cells,
that are free and areas that are occupied by objects. The following must be kept in mind.
The most important concept in cell decomposition method is the placement of the boundaries
between cells. There are two methods which perform the task.
1. Exact cell decomposition: In this technique, the boundaries are placed as a function of
the structure of the environment in such a way that the decomposition is lossless.
2. Approximate cell decomposition: This approach performs decomposition as an
approximation of the actual map.
In Fig. 8.19, exact cell decomposition has been used. Here, the boundary of cells is based on
geometric criticality. So, the resulting cells are either completely free or completely occupied
resulting in a complete path. In this method, the robot’s ability to traverse from each free cell
to adjacent free cells is more important than the position of the robot within each cell of free
space.
Advantage
In environments that are extremely sparse, the number of cells will be small.
Disadvantages
1. The number of cells and computational efficiency of the overall path planning
algorithm depends upon the density and complexity of objects in the environment.
2. Due to complexities in implementation, the exact cell decomposition technique is less
frequently used in mobile robot applications.
FIGURE 8.19 Exact Cell Decomposition
Approximate cell decomposition is a popular technique for mobile robot path planning. It
uses grid-based environmental representations that are themselves fixed gridsize
decompositions. They are quite similar to an approximate cell decomposition of the
environment.
We can see that in Fig. 8.20, the cell size is not dependent on the particular objects in an
environment resulting in loss of narrow passageways due to the inexact nature of the
tessellation. However, this is rarely a problem as the cell size used is very small, usually 5 cm
on each side.
The main advantage of fixed-size cell decomposition is the low computational complexity of
path planning. In Fig. 8.20, we see that the free space is externally bounded by a rectangle
which is further decomposed into four identical rectangles. The rectangle is not decomposed
further only in two conditions.
If the two conditions are not satisfied, then the rectangle is recursively decomposed into four
rectangles until one of them is met. Note that the white cells lie outside the obstacles, the
black inside and the grey are part of both the regions.
This technique is an efficient and simple strategy for finding routes in fixed-size cell arrays.
The algorithm starts from the goal position marking for each cell its distance to the goal cell
until the initial robot position is reached. At this point, distance to the goal position and a
specific solution trajectory is known by linking together cells that are adjacent and closer to
the goal.
If the entire array is in memory, then each cell is visited only once to deduce the shortest path
from the initial position to the goal position. So, the search is linear. Therefore, the
complexity of this algorithm neither depends on the sparseness and density of the
environment, nor on the complexity of the objects’ shapes in the environment.
The Cye robot is an example of a commercially available robot that plans path in a 2D space
with 2 cm fixed-cell decomposition of the environment. Unlike exact cell decomposition
method, approximate cell decomposition method does not guarantee completeness but it is
mathematically less involving and easier to implement.
Robotics—an Application of AI
Robotics is a branch of engineering that involves the conception, design, manufacture and
operation of robots. It is an inter-disciplinary field that includes the study of electronics,
computer science, artificial intelligence, mechatronics, nanotechnology and bioengineering.
Science-fiction author Isaac Asimov, first used the term ‘robotics’ in the 1940s. According to
him, robots must ensure the following:
1. They have electrical components for providing power and control the machinery.
2. They have mechanical construction and their shape or design depends on the task they
are intended to accomplish.
3. They are programmed. Instructions fed to them helps them to determine what, when
and how it would do something.
These days, robots are being extensively designed as bots that explore the Earth’s harshest
conditions and assist in almost every facet of healthcare. Though the robotics industry is still
evolving, we already have robots that work in the deepest depths of our oceans to the highest
heights of outer space. They are being used to do everything that humans could not dream of
doing.
Humanoid robots look like humans and/or mimic human behaviour. They can perform
human-like activities (like running, jumping and carrying objects). Sophia and Atlas are two
popular examples of humanoid robots.
Autonomous robots operate without human operators. They are designed to perform tasks in
open environments that do not require human supervision. For example, the Roomba vacuum
cleaner uses sensors to roam freely throughout a home to clean it.
Teleoperated robots are mechanical bots controlled by humans. They are used in extreme
geographical conditions, weather, circumstances, etc. For example, human-controlled
submarines used to fix underwater pipe leaks during the BP oil spill or drones used to detect
landmines on a battlefield are examples of teleoperated robots.
Robots are also used for tasks varying from diffusing bombs to performing surgeries. VR
robots are also becoming popular these days.
Augmenting robots either enhance current human capabilities or replace the capabilities a
human may have lost. Robotic prosthetic limbs or exoskeletons used to lift hefty weights are
examples of such robots.
The manufacturing industry is amongst the first well-known users of robots. They use
robots and co-bots (bots that work alongside humans) to efficiently test and assemble
products, like cars and industrial machinery.
Logistics companies use robots in their warehouses to perform tasks like shipping,
handling goods and ensuring quality control. Robots are supposed to take items off the
shelves, transport them across the warehouse floor and package them. They are now also used
for last-mile delivery of packages for faster and efficient delivery.
Self-driving cars are a result of integrating data science with robotics. Automakers like
Tesla, Ford, Waymo, Volkswagen and BMW are all working to provide users an ultimate
experience of travel that will let them sit back, relax and enjoy the ride. Companies like Uber
and Lyft are also developing autonomous rideshare vehicles that will be operated without
humans.
The healthcare industry uses robots to perform complicated surgeries, deliver everything
from medicines to clean linens.
Space agencies like NASA use robots in different ways. Robotic arms on spacecraft can
move large objects in space. Robotic spacecraft can visit other worlds like the Moon or Mars.
For example, Mars rovers Spirit and Opportunity are robots. Cassini studies Saturn and its
Moons and rings. Robots like The Voyager and Pioneer spacecraft are now travelling beyond
our solar system. People on the Earth use computers to send messages to the spacecraft. The
robots have antennas that pick up the message commands and work as per the instructions
given to it.
Robotic airplanes can fly without a pilot aboard. NASA is also developing Robonaut to help
people in space. The upper body of Robonaut looks like a person. It has a chest, head and
arms. They can work outside a spacecraft and work like an astronaut on a spacewalk.
NASA is also working on robots that might help an astronaut in an emergency. For example,
when the astronaut is seriously hurt, a doctor on Earth could use the robotic arm to perform
surgery. This technology can help doctors on Earth, as well. Doctors can help people in
faraway places where there are no surgeons to perform complicated surgeries.
Robots are also used as scouts to check out new areas to be explored. They take photographs,
measure the terrain, look for dangers and find the best places to walk, drive or stop. This not
only helps scientists and engineers make better plans for exploring but also helps astronauts
to work more safely and quickly.
Note:
ASIMO is a humanoid that has the ability to recognise moving objects, postures,
gestures, understand its environment, and interact with humans.
Pepper is the world’s first robot capable of recognising human emotions. It is social,
can converse with people, give them directions and even dancing with them
Romeo helps with everyday tasks, assist when people have fallen over, make
conversations and play games.
Buddy is designed to entertain the family, help you with your everyday activities,
offer reminders, provides recipes in the kitchen, make video calls, keep an eye on
your home while not at home, connect all your smart home devices together and even
help your children learn.
Panasonic Egg uses NLP Robot to communicate with you. It’s an intelligent assistant
that can be controlled by your voice, play video footage via a built- in projector and
even engage in interactive games. This robot is Wi-Fi connected and promises
software updates in future to improve it further.
REEM is a full-size humanoid service robot that can act as a receptionist, provide
entertainment for guests, make presentations and give speeches in different languages
and help with a variety of different chores. REEM is able to self-navigate, interact
with people it encounters and keep on running for up to eight hours.
The term ‘drone’ generally means any unpiloted aircraft that operates using a combination of
technologies including computer vision, artificial intelligence, object avoidance tech and
others. Also known as ‘unmanned aerial vehicles’ (UAVs), these drones can be as large as an
aircraft or as small as the palm of your hand. With drones becoming readily accessible, they
are now increasingly being used for the most dangerous and high-paying jobs that are
discussed below.
FIGURE 1.11
Emergency Response
Drones outfitted with thermal imaging cameras are used by emergency response teams to
identify victims who are difficult to spot with the naked eye.
Surveillance
Drones outfitted with thermal imaging cameras can be used to monitor and combat forest
fires. Thermal cameras can measure and detect abnormal forest temperatures. This
information can then be used to identify areas that are more prone to forest fires or identify
fires just minutes after they begin (refer Fig. 1.13).
Conservation
Poaching and activities resulting in climate change have adversely affected wildlife
worldwide. In fact, according to the World Wildlife Fund, thousands of species are estimated
to extinct each year. To help combat this trend, conservationists are extensively using drones
for geospatial imagery to monitor and track animals to protect our biological ecosystem.
Disease Control
Many infectious diseases spread through animals. In such a scenario, drones can be used to
capture and test mosquitoes for infectious disease. This initiative can not only protect local
residents, but can also prevent epidemics before they begin.
Moreover, drones are also being used in remote areas to provide quick access to vital drugs,
medicines and medical equipment. All these initiatives have a profound impact on preventing
disease, increasing life expectancy and raising general standards of living.
Bomb Detection
Small sized drones fitted with effective cameras can easily penetrate into constricted spaces
to detect live bombs and save lives of thousands of people.
Air Strikes
Drones are used for conducting air strikes. Former US President Barack Obama had been
using drones regularly to attack militants in the tribal areas of Pakistan. While being
controlled by the defense personnel, drones can be made to fly around suspected areas to
fulfill military operations (as shown in Fig. 1.12). However, use of drones for military
operations has also raised numerous moral and ethical concerns as they lack accountability
and failure to fully grasp the consequences of actions.
Credit: Alex Yuzhakov / Shutterstock
Agriculture
Farmers in some advanced countries are extensively using drones to gather data, automate
redundant processes and improve efficiency to reduce costs and expand yields. Drones also
help farmers to predict their potential harvest.
Weather Forecasting
Scientists are using drones to collect data about temperature, humidity, wind speed and other
climatic parameters that could help them to accurately predict future changes to global
weather systems. Drones used as autonomous sailboats are used to collect oceanic and
atmospheric data from the ocean surface.
Maritime
Drones are used to inspect ships above the surface as well as hulls from below. Countries like
the Netherlands, Denmark, and Norway are already using drones to identify ships committing
emissions infractions.
Waste Management
Drones are being used to clean oceans, collect waste in ports and harbours and maintain
systems for wastewater management.
Energy
Drones are used by energy generating companies to set up new sites for the production of
energy. For this, the drones are made to survey areas and gather topographic detail that can be
used to help oil and gas companies identify new drill sites. Drones are also used to extract,
refine and transport oil and gas while ensuring compliance with regulations and standards.
Drones fitted with specialized thermal sensors can detect leaks faster than a human inspector.
Even companies generating solar energy can use drones to design configurations for new
arrays.
Mining
Mining activities require constant measurement and assessment of stockpiles of ore or rock or
minerals. Drones fitted with unique cameras can capture large amounts of data from the air,
thereby reducing the risks associated with having surveyors on the ground.
Drones are being using by the Indian government to deliver COVID vaccines even in the
remotest areas.
Construction Planning
Drones are used to improve construction planning, enhance project monitoring and site
management. Cameras fitted in these drones monitor buildings and gauge topography and
soil type throughout the construction lifecycle.
Urban Planning
Personal Transportation
China-based EHANG was started as an autonomous aerial vehicle (AAV) that operates with
four rotors (quadcopter) for vertical takeoff. The vehicle is used to help passengers reach
their destinations. Such a vehicle is especially very useful in an urban environment with
plenty of obstacles. Personal transportation drones require minimal inputs from the passenger
and aims to allow safe landings even in case of engine failure or a collision.
Big companies like Uber, Airbus, Boeing and Rolls-Royce are working on developing flying
drones (robotaxis) for ferrying passengers around.
Space
Drones are being used to be moved in the space. For example, NASA is using a drone-like
helicopter in its Mars 2020 mission to help look for signs of life on Mars. In this mission, the
helicopter will act as a scout for the rover, gathering data about the planet’s terrain and
surveying areas the rover cannot reach.
NASA is also using a nuclear-powered drone for exploring Titan, one of Saturn’s moons. The
drone will arrive on Titan by 2034, autonomously traverse the planet for about 2 years, taking
photos and sending data back for analysis.
Telecommunications
Internet
Drones are being used to provide Internet access in remote areas and over irregular
landforms. For example, Facebook has designed a solar-powered drone called Aquila, to
provide Internet access to rural parts of the world. However, in 2018, Facebook halted the use
of Aquila and used only third-party drones instead.
Outdoors
Drones are used outdoors to perform aerial landscape photography and extreme sports
footage and map the entire mountain face to help climbers and skiers to better understand the
terrain.
Live Entertainment
Drones are already being used by Disney for entertainment through synchronized lights
shows, floating projection screens and as drone puppeteers.
News companies are using drones to gather news, especially from areas that are difficult to
visit due to safety issues, high costs or physical barriers. For example, drones are used to get
aerial footage of the aftermath of hurricane, wildfires and assess flood-ridden areas in the
midwest.
Food Services
Drones are being used by online food ordering and delivery services for faster, cheaper
delivery. This helps restaurants downsize their physical locations and lower real estate
expenses.
No Code AI
Right from the first generation of computers, exhaustive efforts have been made to make
programming easier, faster, less technical so that it can become accessible to a much larger
audience.
No-code tools allow people to build applications and systems without having to write long
and complex program codes. Applications can now be designed using visual interfaces and
guided user actions. No-code tools are pre-integrated with other tools to exchange
information as needed. Given below are some applications that can be built entirely using
such tools.
When running this exercise, it made sense to group the tools by the technology they use.
Here’s a quick round of definitions:
Computer Vision
It allows machines to obtain information from digital images, videos, pdfs and other visual
data, and take actions based on their learnings.
NLP
This allows machines to understand and process language both spoken and written, for
example, text messages.
Predictive Analytics
This refers to predictive modelling based on structured (i.e., tabular data), for example,
predicting churn rate, forecasting and stock prices.
We also made a distinction between no-code tools and low-code tools. The no-code tools
follow basic criteria: they are end-to-end tools that are usable without coding knowledge. In
that sense, low-code tools are better suited if you have someone on your team who speaks
data. Figure 1.18 categorizes these tools based on their usage.
Businesses are steadily moving towards no-code platforms. Research shows that by 2024,
nearly 65% of application development will be done through either through low-code or no-
code platforms. And, no code AI will play a big role in this. Some advantages of these tools
are as follows.
2. It facilitates non-AI experts also to implement and test their ideas without any help of
AI experts
3. AI experts can create ML solutions in less time using minimum efforts.
4. It supports collaboration between AI experts and domain experts.
5. It has drag-and-drop or wizard-based interface to build applications.
6. It helps to solve problems with improved productivity and efficiency.
All in all, no code AI ensures that AI technology can be adopted by everyone and
everywhere.
No code AI (refer Fig. 1.19) will become more important as it solves the following problems.
We know that many problems can be solved fully or partially using AI technology. But to
solve them, we need AI experts. These experts are still less in number and charge a heavy fee.
So, here, domain experts can run their experiments and get AI solutions using No-code AI
platforms.
Steve Jobs said, ‘the line of code that’s the fastest to write, that never breaks, that doesn’t
need maintenance, is the line you never had to write.’
It is interesting to note that only 0.25% population of the world can do coding but anyone can
be taught to quickly and easily use no-code tools.
The use of no-code as well as low-code platforms is constantly on the rise. Today, the
growing demand for AI solutions in business applications has paved the way for low-code
and no-code AI tools. These tools give companies the flexibility and agility to create new
applications.00:00
Lower the difficulty level of application development processes, broader is the audience.
Low-code solutions not only enables fast delivery of applications with minimum effort but
also ensure least possible effort for the installation and configuration of environments,
training and implementation. Apart from other reasons, low-code AI is also preferred as it
provides built-in security and maintenance, saving costs and time. It also lowers development
risks at a high return on investment.
The key differences between traditional and low-code development are given in Table 1.4.
Though both low-code and no-code use building blocks to create applications, low-code
facilitates the integration of custom software in the form of such building blocks.
Low-code development is beneficial for different types of users to speed up their projects and
simplify the deployment process. Low-code AI platforms enable rapid development, testing
and scaling of apps. In this section, we will discuss who use these platforms and for what
purpose.
Low-code and no-code AI platforms make AI technologies more accessible to technical and
non-technical users. Businesses no longer need to hire a full-time AI developer. These
platforms have made it much easier for beginners to get started with AI technologies.
Researchers can use low-code platforms to quickly develop prototypes, speed up their
experiments and test each change without the need to invest in expensive infrastructure.
Moreover, they can easily compare different approaches and benchmark multiple versions.
A low-code AI platform for automating computer vision applications is a difficult task. Lot of
research is done in this area to overcome the challenges and technological problems. The
latest AI low-code platform, specifically designed for computer vision applications is, [Link].
[Link] is used to create custom computer vision and deep learning applications that process
video feeds of numerous cameras in real-time with deployed AI algorithms. Using fine-tuned,
pre-trained AI algorithms and pre-built modules in a visual editor, [Link] quickly creates a
custom AI vision solution. The platform continuously optimizes AI applications to achieve
progressively better results.
Pre-Built Integrations
The AI vision application may use visual input of cameras and some pre-trained AI models,
so these functionalities are available as ready to use building-blocks to the user. Pre-built
integrations of modules that ensures secure data storage and communication are available
with these platforms.
Application Manager
Developing an application with a low-code AI platform is just one portion of the software
development process. The application needs testing, deployment and maintenance on a
regular basis. For this, the platform offers tools to update code, remove bugs and improve its
functionality and performance.
Though no-code/low-code AI platforms sounds interesting to use, there are some concerns
which should be addressed before taking the final call in selecting a platform.
Security
Some platforms may not be able to design access protocols. In such a case, security may be
compromised and this is a serious concern for many companies where security is at the
utmost priority. Therefore, it is crucial to read, research and clearly understand the terms and
conditions to interpret where and how data will be used.
Lack of Customization
All users, technical or non-technical, must be able to use the low-code/no-code platforms. But
usually, it is used by an ML engineer who also need lot of training and consultations to guide
other team members to solve problems using AI.
Lack of Trust
According to Google Trends, the interest in no code ML is increasing but people interested in
traditional ML are far ahead. Support for libraries for ML and computer vision are much
more than low-code/no-code AI platforms.
Lock-In Strategy
Considerable amount of switching cost is involved while moving from one vendor to another.
Thus, most of the times, a user is entirely dependent on a particular software vendor.
Limitations on Personalization
Some no-code and low-code solutions do not allow users to change certain parameters.
Data Management
Even while using no-code solutions, businesses may have to rely on the expertise of data
scientists and data engineers for data processing tasks.
Scalability
As of now, creating scalable solutions for solving complex problems using a no-code
machine learning platform is far from reality.
Low-code AI solutions are having a deep impact on the overall market right now, and its use
is quickly expanding. For example, if you want to enhance your existing application, then
either you can use a coding language such as Python or a low-code/no-code (LCNC)
framework that has pre-designed and tested code blocks that can be instantly incorporated to
use its functionality.
The forecast about the use of low-code/no-code development platforms follow a strongly
positive curve. By the end of 2024, it is expected that more than 65% of applications will be
developed using the low-code/no-code development approach. Also, more than 75% of large
enterprises will be using at least four low-code/no-code development tools.
The demand for low-code/no-coding development platforms has increased tremendously and
the worldwide low-code development technologies market is estimated to be $65 billion
market cap by 2026. Businesses will benefit from low-code/no-code AI platforms in more
data-driven sectors, such as marketing, sales, and finance. AI can help in predicting churn
rates, analyzing reports, adding smart suggestions, automating invoicing and for lot more
applications.
ChatGPT is a language-generation software that can easily converse with people. For this, it
answers follow-up questions, rejects inappropriate queries and even admits its mistakes
(Source: OpenAI summary of the language model). To perform its task, ChatGPT has been
extensively trained on an enormous amount of text data.
Using NLP techniques, training data and crawling the web to study archived books and
Wikipedia, ChatGPT can recognize patterns to create text that mimics various writing styles.
Some features of this amazing tool are as follows.
We know that reinforcement learning learns by rewards and punishments received. In case of
ChatGPT, a question is asked from the software. Then, a number of answers are sampled
which are later manually ranked by humans. In fact, these ranks serve as training data for the
reward model. The output of the reward model is then improved by further training a fine-
tuned language model using reinforcement learning to react to queries. Therefore, human
feedback plays a crucial role in the success of deploying this software.
Once trained, ChatGPT can respond to follow-up inquiries, acknowledge its errors, refute
false assumptions and refuse unsuitable proposals.
Besides conversing, ChatGPT can respond to all types of writing, including theoretical
essays, mathematical solutions and stories.
The underlying technique of ChatGPT can also alter how people use search engines by
delivering answers to complex problems.
ChatGPT is a good debugging tool and can also fix the bug when you are asking a question.
ChatGPT is still in the research review stage. But still users can sign up and test it out for
free.
Did you know that as soon as Elon Musk learned that OpenAI was using Twitter’s database
to train ChatGPT, he immediately stopped it from doing so because OpenAI is no longer
open-sourced and non-profit, and it should eventually pay for this knowledge.
Chat GPT-3 be used to create more complex chatbots. Those chatbots can provide detailed
information or perform difficult tasks like book flights, order food, automate simple tasks
(like scheduling meetings, tracking appointments), notify about upcoming events, find local
businesses, give personalized recommendations and advice based on preferences. Imagine a
fitness freak person getting healthy recipes and exercise routines for a chatbot.
Most significantly, ChatGPT has demonstrated the ability to build complex Python code and
compose college-level essays. This has raised concerns that such technologies may eventually
replace human workers like journalists or programmers.
Limitations
1. Chatbot is not a new thing. Several companies including Microsoft have developed
them but did not get much success. We have read that in less than 24 hours, Twitter
users taught Microsoft’s Tay bot misogynistic and racist language. Meta released
BlenderBot 3 which also disseminated racial, antisemitic and misleading information,
including the assertion that Donald Trump won the 2020 presidential elections.
2. To prevent these kinds of incidents, OpenAI used a Moderation API (an AI-based
moderation system) that notifies when language violates the company’s content policy
to stay away from communicating harmful or unlawful content. However, its
moderation still has issues and is not perfect.
3. Like any other AI tool, ChatGPT is only as good as the data it is trained on. If the
training data contains biases or inaccuracies, the model may reproduce these biases in
its outputs.
4. ChatGPT sometimes write nonsensical answers and fixing this issue is challenging
because there may be no source of truth and building more restrictions may result in
declining questions that it can answer correctly.
5. ChatGPT gives different results when the questions are either slightly rephrased or
asked multiple times.
6. Text generated by ChatGPT excessively uses certain phrases especially when trainers
want longer answers that look more comprehensive.
7. Ideally, ChatGPT should ask clarifying questions when the user asks ambiguous
queries but instead, it gives answers by guessing what the user intended.
8. Attempts were made to make ChatGPT refuse inappropriate requests, but it
sometimes respond to harmful instructions or exhibit biased behaviour.
9. ChatGPT writes long paragraphs, poems, stories, etc. but it has not mastered the art of
creative style, so its output has not yet topped bestseller lists. However, the program
does write good bedtime stories for kids. But models like ChatGPT can never replace
children’s books that have been traditionally published.
Conclusion: Chat GPT is a powerful and versatile NLP tool that has the potential to
revolutionize the way humans interact with machines.
Wishing you and everyone in your family a very healthy, wealthy, happy and prosperous
2023. Stay abundantly blessed always.