Personal tools

AI and Robotics

[Berlin Skyline TV Tower River Spree]


- Overview

Artificial intelligence in the field of robotics aims to create a smart environment for the robotics industry to achieve better automation. 

It uses computer vision technology, smart programming and reinforcement learning to teach robots to make human-like decisions and perform tasks under dynamic conditions.


- Computer Vision in Robotics

Computer vision is a technology that allows robots to see and understand their surroundings. It has many applications in robotics, including: 

  • Autonomous navigation
  • Object recognition and tracking
  • Human-robot interaction
  • Surveillance
  • Industrial automation
  • Healthcare robotics


Computer vision helps robots perform complex tasks with greater accuracy, resulting in improved safety, efficiency, and productivity. Some applications of computer vision in robotics include: 

  • Object detection
  • Sensing depth
  • Navigating landscapes
  • Recognizing objects, people, and scenes
  • Quality control


- Reinforcement Learning

Reinforcement learning (RL) is a machine learning method that allows AI-based systems to take actions in a dynamic environment. It's based on rewarding desired behaviors and punishing undesired ones. 

In robotics, RL is a data-driven approach to learn intelligent behaviors through trial and error interaction with the environment. The goal is to find a suitable action model that would increase the total cumulative reward of the agent. 

For example, the Roomba 980 uses RL to make it more agile and a rapid learner. This is different from having to hand code a series of nested “if-then” rules. Other examples of RL include: natural language processing (NLP), predictive text, text summarization, question answering, machine translation.


- Smart Programming in Robotics

Smart programming in robotics uses intuitive interfaces and teaching algorithms to make robot programming more flexible. Some common ways to program a robot include:

  • Teaching pendant: Most traditional industrial robots come with a teach pendant.
  • Teaching by demonstration
  • Offline programming

Some popular programming languages for robotics include: 

  • C/C++: An object-oriented successor to the C language that allows direct access to hardware.
  • Python: Used in machine learning and can be used to develop ROS packages.


Some programs that teach the basics of coding and computational thinking include:

  • Smart Robotics: A program that exposes young minds to the basics of coding and computational thinking.
  • SMART Program: A program at Carnegie Mellon Robotics Academy that identifies the Knowledge, Skills, and Attitudes (KSA) of Robotics Technicians.


Some programmable robots include:

  • Bee-Bot: A push-button programmable robot that can help students develop skills to follow and represent algorithms


- Autonomous Robots

Autonomous robots are only able to complete very simple tasks within limited environmental conditions. Humans can be incorporated to teleoperate or supervise robots, but as the robot complexity increases so does the human's workload. 

Robotics requires research in many areas that include hybrid systems, embedded systems, sensory fusion, distributed artificial intelligence, computer vision, machine learning, human-machine interaction, localization, planning, navigation, etc. This large field provides ample research problems.


- Robot Learning

Robotic learning is a research field at the intersection of machine learning and robotics. It studies technologies that allow robots to acquire new skills or adapt to their environment by learning algorithms. 

Robotic embodiments located in physical embeddings offer both specific difficulties (eg, high-dimensional, real-time constraints for collecting data and learning) and opportunities to guide the learning process (eg, sensorimotor synergy, motor primitives). 

Examples of skills targeted by learning algorithms include:

  • Sensorimotor skills, such as movement, grasping, active object classification.
  • Interaction skills, such as co-manipulating objects with human peers. 
  • Language skills, such as grounding and locating meaning, human language. Learning can take place through autonomous self-exploration or the guidance of a human teacher, such as a robot learning through imitation. 


Robotic learning can be closely related to adaptive control, reinforcement learning, and the development of robots that take into account autonomous lifelong acquisition of skills. 

While machine learning is often used by computer vision algorithms for robotics, these applications are not often referred to as "robot learning."


Jungfrau Region_Switzerland_051522A
[Jungfrau Region, Switzerland]

- The Components of A Robot

Robotics is the science and technology behind the design, manufacturing and application of robots. 

A robot is a programmable mechanical device that can perform tasks and interact with its environment, without the aid of human interaction. 

The components of a robot are:

  • Power source
  • Actuation
  • Electric motors
  • Linear actuators
  • Series elastic actuators
  • Air muscles
  • Muscle wire
  • Electroactive polymers
  • Piezo motors
  • Elastic nanotubes
  • Sensing
  • Touch
  • Vision


Other common forms of sensing in robotics use Lidar, Radar, and Sonar:

  • Lidar measures distance to a target by illuminating the target with laser light and measuring the reflected light with a sensor. 
  • Radar uses radio waves to determine the range, angle, or velocity of objects. 
  • Sonar uses sound propagation to navigate, communicate with or detect objects on or under the surface of the water.

[More to come ...]

Document Actions