Abstract—We hear an old story, “Ali Baba and the Forty Thieves,” where the mouth of the treasure cave is secured by magic. It opens with the words “open sesame” and seals itself with “close sesame.” The magic could be Voice Recognition technology. A virtual or voice assistant is a software agent that understands human conversations and replies through synthesized voices. The virtual assistant system builds with Artificial Intelligence, Machine Learning, Natural Language Processing, and Voice Recognition Technology. In this paper, we review the Virtual Assistants technology. And finally, we developed the “GENIE,” an intelligent kitchen assistant to support managing the kitchen and help to cook. In this project, we mainly focus on developing a kitchen assistant as easily as possible with Raspberry Pi and Alexa voice service.
Introduction
A virtual assistant (VA) or voice assistant is a software agent that understands human conversations and replies through synthesized voices. The VA system is built with Artificial Intelligence, Machine Learning (ML), Natural Language Processing (NLP), and Voice Recognition Technology.
We hear an old story, “Ali Baba and the Forty Thieves,” where the mouth of the treasure cave is secured by magic. It opens with the words “open sesame” and seals itself with “close sesame.” The magic could be Voice Recognition technology. The voice assistant system began with Kempelen’s talking machine in 1769, and the first modern digital virtual assistant was installed on a smartphone as a feature of the iPhone 4S on October 4, 2011.
In this paper, we review the Virtual Assistants technology. And finally, we developed the “GENIE,” an intelligent kitchen assistant to support managing the kitchen and help to cook. In this project, we mainly focus on developing a kitchen assistant as easily as possible with Raspberry Pi and Alexa voice service.
To implement this project, we also used a Raspberry Pi 3 (Model B), Charger (DC 5v, and minimum 2.5 Amp), a micro–SD Card (32GB), a 3.5mm compatible speaker, and a Mini-microphone. We also used additional hardware such as a Card reader, Computer Display, Keyboard, Mouse, HDMI to VGA Adapter, and USB Sound Adapter.
The virtual assistant system frequently works- recording voice from the user and converting the voice to text, processing the text, finding an answer, converting the text answer to audio, and finally sending it to the end device to play to users. We use a mini-microphone to take the user’s voice data and a 3.5mm compatible speaker to deliver machine speech to users.
Virtual Assistant Working process
The voice assistant system performs with a few simple steps. At first, the user’s voice commands from the users are recorded by the user’s end-system using a microphone, and then the recorded voice is sent to the cloud computing system may be a supercomputer. The computer system receives the voice command recorded from the user’s end system and converts the voice command to text data using a software system known as Speech-to-Text (STT). After getting the text form of the voice command, the computer system divides the text into small pieces of words and finds the important words from the text data. It is done by Natural Language Processing (NLP) and Artificial Intelligence (AI). When the system has effective words that carry the meaning of the user’s command with an understanding form for the computer system, the computer system finds out an effective and usable reply for that command in text form. Then the text form of the computer system is converted into audio form, and the audio forms send to the user’s end system. The user end-system plays a voice reply with a speaker.
Figure 2: System Diagram
The complete process is done in a few microseconds, and the system works with the internet on the cloud computing system.
Development of Genie
The overall processes are given below, from equipment selection to implementation and result analysis.
Equipment Selection
We researched available equipment and software for this project to find the perfect equipment and software. We especially focus on the Single-Board computer, Operating System, and Voice Assistant software for the kitchen assistant.
Single-board computer selection
TABLE 1: Review of the single-board computer
Name | Specifications | ||
Processor | RAM | Price | |
Rock64 Media Board | 4x Cortex-A53 @ 1.5GHz | 1GB | $25 |
Raspberry Pi 3 Model B | 64-bit quad core @ 1.2 GHz | 1GB | $28 |
Le Potato | 4x Cortex-A53 @ up to 1.5GHz | 2GB | $35 |
Rock Pi 4 Model B | 64-bit quad core ARM Cortex-A72 @ 1.5 GHz64 | 2GB | $35 |
Odroid-C4 | 4x Cortex-53; @ up to 2GHz | 2GB | $50 |
Pine A64-LTS | 4x Cortex-A53 cores @ 1.2GHz | 2GB | $50 |
Banana Pi M64 | 4x Cortex-A53 @ 1.2GHz | 2GB | $59 |
Orange Pi 4B | 4x Cortex-A72 / 2x Cortex A53 @ 2GHz | 4GB | $67 |
NanoPC-T3 Plus | Samsung S5P6818 @ 400MHz -1.4GHz | 2GB | $70 |
Asus Tinker Board S | 4x Cortex-A17 @ 1.8GHz | 2GB | $89 |
Finally, we selected the Raspberry Pi 3 Model B for our kitchen assistant.
Operating System software Selection
We have done a complete online review to select the Operating System software for our kitchen assistant.
Raspbian
Raspbian is a Debian-based system developed for Raspberry Pi. It employs the Openbox stacking window manager, and the Pi improved X-windows setting light-weight, let alone a variety of pre-installed software packages with Minecraft Pi, Java, and Mathematica.
OSMC
OSMC (Open Supply Media Center) could be free, simple, and easy to use. To urge started, merely choose the current software package to download the device installer.
OpenELEC
OpenELEC is a Linux system distribution designed for house PCs. It’s designed to consume comparatively few resources and boot quickly from flash storage.
RISC OS
RISC OS is a computer operating system released in 1987, and Acorn Computers Ltd developed it. The SD card image files with a complete graphical user interface (GUI) are freely downloadable for Raspberry Pi users.
Finally, we chose Raspbian for the Raspberry Pi for our kitchen assistant.
Virtual Assistant Software Selection
We take a little more time to find the right Voice Assistant software for our kitchen assistant. Because the performance of this project mainly depends on it.
Jasper
Jasper is voice assistant software developed specifically for Raspberry Pi. Jasper requires some assistance software for Text-to-Speech (TTS) and Speech-to-Text (STT).
Google Assistant
Google Assistant is a virtual assistant system improved by Google and primarily designed for smartphones and smart home devices. Google Assistant, within the character and process of Google Now, can search on the web, schedule tasks, make daily alarms, maintain hardware settings on the user devices, and provide data from the Google account.
Amazon Alexa
Alexa is a virtual assistant software package developed by Amazon. If we’re making connected Amazon Voice Service (AVS), Amazon offers software packages and hardware solutions. The Alexa service powers Amazon Echo devices; AVS brings that service to business device manufacturers. Original Engineering Manufacturers (OEM), Original Design Manufacturers (ODM), and Systems Integrators (SI) use AVS to create Alexa into Smart speakers, Smart headphones, Smart PCs, Smart TVs, Smart Vehicles, and Smart homes.
Apple Siri
Siri is an artificially intelligent-based virtual assistant. It is a part of Apple inc.’s iOS, iPadOS, watchOS, macOS, and tvOS. It uses voice queries and a natural-language computer program to answer queries, create recommendations, and perform actions by authorization requests to a collection of web services. With continued use, the software package adapts to users’ language usage, searches, and preferences.
Microsoft Cortana
Cortana is an artificial intelligence-based virtual assistant system built by Microsoft that performs several duties, such as – setting reminders, answering queries, set alarms, etc. Presently, Cortana is available in many languages, such as – English, Portuguese, French, German, Italian, Spanish, Chinese, and Japanese.
Finally, we decided to use Alexa as our Voice Assistant system for our kitchen assistant. One of the biggest reasons is the easy way to build skills.
Implementation
To implement this kitchen assistant project, we used hardware such as Raspberry Pi 3, Charger (DC 5v, and minimum 2.5 Amp), a micro SD Card (32GB), a 3.5mm compatible speaker, and Mini-microphone. We also used additional hardware such as a Card reader, Computer Display, Keyboard, Mouse, HDMI to VGA Adapter, and USB Sound Adapter.
At first, we downloaded the Raspbian operating system software using our personal computer, then placed the operating system software onto an empty 32 GB microSD card using a card reader. Then assembled all our hardware equipment perfectly and plugged in the power supply. Then we saw a loading screen that required some essential setup for the Raspberry Pi operating system. After getting the complete system, we registered for the Amazon Voice Service and Alexa. Then set up Amazon Alexa voice software; when finished, we got a refresh token and tested the system. We determined that the system was working correctly. Then, we built our “Skill” to perform as our kitchen assistant. The skills are mainly an array that contains several questions and answers provided by us. For a specific question, Alexa will play a specific answer. That means Alexa understands what we say and analyzes our speech, then plays an answer from the skill we already built.
There are two main ways to build Alexa skills:
- Direct coding and
- Using Amazon blueprints
This kitchen assistant project mainly focuses on developing our system as easily as possible. For this reason, the easy way is using Amazon blueprints. To build Alexa skills with Amazon blueprints, we did registration in Amazon blueprints and then found an effective and usable blueprint for our required skill. After choosing the skill blueprints for the kitchen assistant, we updated the data we wanted for our kitchen assistant. When the skill was completed, we uploaded the Skill to Amazon Server and connected it to our Raspberry Pi Model B system.
After connecting, we learned and tested our complete system. Then the system is ready to perform as our expectation.
Cooking methods
Kitchen Assistant Keyword: Baking
Answer: Baking suggests that cookery food within the oven is usually uncovered using indirect-dry heat. The terms are usually used for bread, cooking, muffins, etc. The appliance temperature varies from formula to formula, although once the warmth gets higher, say 400°F, the term cooking typically gets used.
Kitchen Assistant Keyword: Braising
Answer: Usually, this term is employed in combination with meats, specifically cuts of meat. In cooking, it’s finished in an exceedingly low kitchen appliance or over an occasional flame with a moderate quantity of liquid, and typically a lid covers the pot. Hence, the liquid condenses on the undersurface of the lid and self-bastes the dishes while it cooks. Cooking liquids vary from broth to wine to tomatoes.
Kitchen Assistant Keyword: Searing
Answer: Searing refers to the browning of food, typically concerning meat or fish in an exceeding pan over high heat. It is typically employed at the start of the instruction. Therefore the browning caramelizes the natural sugars within the food, permitting another layer of flavor to emerge, and can also add a delightful texture to the skin of the food. A small quantity of fat is sometimes used with this method.
Example questions for a Cooking Method:
User: How to cook a Searing.
Then the system will provide a Searing cooking method from the cooking method table.
Kitchen Assistant with Alexa: Searing refers to the browning of food, typically concerning meat or fish in an exceeding pan over high heat. It is typically employed at the start of the instruction. Therefore the browning caramelizes the natural sugars within the food, permitting another layer of flavor to emerge, and can also add a delightful texture to the skin of the food. A small quantity of fat is sometimes used with this method.
Recipe
Kitchen Assistant Keyword: Baking
Answer: The recipes you may require for Baking:
- Streusel Apple Pie
- Fudgy One-Pot Brownies
- Macaroni and Cheese
- Pizza Quattro Stagioni
- Cheesy Beefy Lasagna
Kitchen Assistant Keyword: Braised
Answer: The recipes you may require for braised:
- Jewish Brisket
- Chicken, Mushrooms, and Baby Artichokes
- Cauliflower with Anchovies and Capers
- Mediterranean Lamb Shoulder Chops
- Baby Artichokes with Leeks and Capers
Kitchen Assistant Keyword: Saring
Answer: The recipes you may require for Saring:
- Roast Beef with Mustard Garlic Crust and Horseradish Sauce.
- Pan-Seared Pork Chops with Marsala and Mushroom Cream Sauce.
- Pan Seared Fish with Tomato-Basil Relish.
- Filet Mignon with Pistou and Green Salad.
Example questions for a recipe:
Question: Alexa, Please Provide a recipe for Baking.
The system will provide a recipe from the Recipe table.
Kitchen Assistant with Alexa: The recipes you may require for Saring- (1) Roast Beef with Mustard Garlic Crust and Horseradish Sauce, (2) Pan-Seared Pork Chops with Marsala and Mushroom Cream Sauce, (3) Pan Seared Fish with Tomato-Basil Relish, and (4) Filet Mignon with Pistou and Green Salad.
The assistant system also provides daily meal structure, schedule of meals, and cooking and helps to find something from the kitchen.
Results
The rating of our system is based on the public review of detection, accuracy, response, and effectiveness on a scale of 5.00.
TABLE 2: Public review report
Performance on | Average Rating |
Detection | 4.4 |
Accuracy | 4.7 |
Response | 4.4 |
Effectiveness | 4.7 |
Overall Average | 4.55 |
The overall result is expectable.
Conclusion
We successfully reviewed the Virtual Assistant technology in this project and developed the GENIE (A kitchen assistant).
Our kitchen assistant with virtual assistant has met the objectives of the kitchen environment with reliability. This system is good as an assistant and smartly usable as a personal assistant for work by verbal commands.