This article outlines how we developed an automatic inventory system that uses machine learning, and various ways this technology can be leveraged in inventory management systems for maximum benefit.
What Is Artificial Intelligence
The term artificial intelligence (AI) is often used to describe machines (or computers) that mimic cognitive functions associated with the human mind, such as learning and problem solving. The traditional goals of AI research include reasoning, knowledge representation, planning, learning, natural language processing, perception, and the ability to manipulate and move objects. Many tools are used in the field of AI, such as search and mathematical operations, artificial neural networks, and methods based on statistics, probability, and economics.
Applications of Artificial Intelligence
High-profile examples of artificial intelligence include autonomous vehicles, medical diagnostics, art (such as poetry), proving mathematical theorems, playing games (such as chess or Go), search engines, online assistants, object recognition in images, spam filtering, predicting flight delays, predicting judicial decisions, targeting online advertisements, and energy storage.
Machine Learning
Machine learning is a fundamental science within the field of artificial intelligence. The basic principle of machine learning is to train the computer to make certain ‘predictions’ or ’decisions’ based on data representing related real-life examples. Mathematical/statistical models are prepared based on the data fed into the system and those models are employed for prediction or decision making.
Deep Learning
Deep learning, a more advanced version of machine learning used for the above process, provides more robust results. Deep learning employs the principle of machine learning by trying to replicate the neural network of the human brain. The models prepared using deep learning are thus called Artificial Neural Networks (ANN). An ANN consists of layers of nodes, each node being similar to a neuron in the human brain. The first layer is the layer of input nodes where input parameters are stored. All nodes in the subsequent layers store activation functions which process the input data sequentially. The activation functions in each node are developed by an iterative process called supervised learning.
Initial approximate functions are assumed for these nodes and output values are calculated, a process called forward propagation. These output values are compared with expected output values in the database on which training/learning happens and the error is resubstituted to achieve a more accurate function, a process called backward propagation. This process is carried out multiple times until the evaluated error in output values converges to a negligible value. Once the ANN is developed it can be employed to predict values or make decisions for newer input parameters.
Object recognition in an image, an important application of artificial intelligence, is also based on this concept of deep learning. The neural network employed to construct an image recognition tool is called a Convolutional Neural Network, which contains additional layers of nodes in the beginning of the network that convert image data into a single dimensional numerical array which is then processed as an Artificial Neural Network.
Our Project: Deep Learning in Inventory Management
Machine learning and deep learning are used extensively in inventory management systems. Having a real-time database of the stock of goods in the warehouses is important for decision making as well as effective performance. Barcode systems have helped to automate the database generation, but involve a cumbersome process of barcoding every product passing through the system. A large family of goods exist which do not have barcodes (such as work-in-process inventory in manufacturing plants, e-commerce, goods delivery services, etc.). These can be dealt with effectively by making use of image recognition. Deep learning is used to prepare image recognition models.
For our project, we collected an image database of about 30 to 40 images for each product and developed deep learning models using a Convolutional Neural Network. After the development of these models, they were integrated into the Graphical User Interface. To keep the budget low, a mobile phone camera live feed was used to detect objects and develop an inventory database for the same.
Nonetheless, creating a hardware infrastructure for this system is not a costly exercise and can be done using contemporary technologies. For example, mounting a camera over a conveyor and passing all the products over the conveyor will automatically generate the database for those products. The development of the conveyor and the camera holder can be done using Autodesk Fusion 360. The camera to be used for the purpose may not be a highly expensive camera—even an IP camera could do. This is not the only way to employ this technology in hardware infrastructure; other examples are outlined below.
Various Applications of the Project
The simple hardware used for the process gives a high level of flexibility to the use of the technology, including:
- Installing IP cameras at the entry/exit gates of warehouses as well as various storage space points will help generate a database of work/product flow in real time.
- IP cameras need not be wired cameras and can connect to the Internet to transmit a camera feed to the computer where image recognition takes place. This means that product flow can be monitored over a large inventory system and the real-time data can be transmitted to a single computer anywhere in the world.
- The mid- to long-term benefit of this system is that it would become more intelligent as time passes. This is because some months of implementation will generate a fresh set of data representing the performance of the supply chain and deep learning principles can be used to predict future disruptions of the system, and thus improve performance.
- Over the past few decades, industry has recognized that holding a large amount of inventory for long reduces profitability of the organization. Real-time data for a period of several months can be put into the deep learning process and inventory buffer rationalization can be done without compromising performance. This would effectively reduce the capital requirements for the industry.
There could be many other important applications of this technology. Artificial intelligence is expected to bring about the next industrial revolution and those who implement it first will be catapulted to global leadership levels in the future.
Ajay Kelkar is a Mechanical Engineering undergraduate at the College of Engineering in Pune, India. Having a zeal for science and engineering beyond just Mechanical Engineering, he stumbled upon an artificial intelligence training/internship. He developed machine learning models for object recognition which were implemented in the project “Automatic Inventory Updation Machine: An Application of Machine Learning.”
Dr. Nagesh Chougule Ramesh holds a PhD in Mechanical Engineering and is presently working in the Mechanical Engineering Department, College of Engineering, Pune (COEP). He is also looking after the CAD/CAM/CAE center. He has about 29 years of experience teaching and consulting in the field of CAD/CAM/CAE. He has published four textbooks and developed mechanical engineering application software. He is working as an expert for NBA accreditation and has visited more than 30 institutes throughout the country. He is a life member of professional bodies such as The India Society for Technical Education- ISTE, International Association of Engineers – IAENG.
Apoorva Khairnar is a Mechanical Engineering undergraduate at the College of Engineering, Pune, India with a fervor for coding, along with the mechanical field. She is driven towards the applications of ML in Mechanical Engineering due to these interests. She has worked in the domain of machine learning for machine fault diagnosis, inventory management. She is currently working on a fellowship offered by Indian Academy of Sciences at IIT Kanpur. She is the winner of the national-level competition MechAura, organized by Collins Aerospace.
Hrushikesh Khade is a Mechanical Engineering undergraduate at the College of Engineering, Pune, India. A strong interest in both the mechanical and computer fields led to exploring deep learning, computer vision, machine learning and its applications, AI, and finally to Computer Science basics. He worked in the reverse order starting from coding and now has significant experience with ML models, hyperparameter tuning, and handling large datasets, along with neural networks. He worked on TensorFlow, Keras, OpenCV, PyTorch, and on several projects for application purposes with co-authors. He is striving to help bring self-driving cars to the road, and make useful ML models along the way.