How do you build an AI? We gave it a try

Fan

Editor’s note: This is a series of blog posts on the topic of “Demystifying creation of intelligent machines: How does one create AI?” You are now reading part 1. For the list of all, see here: 1, 2, 3, 4, 5, 6, 7.

Once created and deployed, artificial intelligence (AI) can be a wonderful tool. But how does one create an AI?

We’re not at the point where an intelligent machine can be created by another machine. So, humans must still do much of the work behind it. And it’s not as simple as feeding data into a machine learning algorithm. Many more activities and skills are required.

The process involves some classical engineering activities, as well as intensive data science. Good mathematical and theoretical skills are of great importance. And, often, one must act as a usability designer, as the AI will work well only if it’s built with user interaction in mind.

The process of creating AI also requires knowledge about various machine learning methods, understanding in detail how they work and what their advantages and disadvantages are. It is not enough to know which method to use; you should also know why. Only then can you solve effectively novel problems. This requires understanding the math and stats behind a method, and also fundamental theorems that tell us what is possible and what is not.

Moreover, the AI will not be successful if the human building it does not have sufficient expertise in the field for which it’s being created. For example, if you create AI within the domain of health insurance, you better arm yourself with health insurance experts – even better if they also understand technology. If your AI is meant to assist a sales process, you will definitely need a sales expert on your team. And so on.

To illustrate these points, I’m going to explain how we at DXC created a simple AI demo. What did we build? An intelligent fan – like one you would find on your computer, in your air-conditioning system or in your car – but one that is so smart it can largely take care of itself.

The benefit of an intelligent fan is that it can monitor its own operations and perform actions that protect it from damage, increasing that way its longevity. Potentially, it could increase user safety and even the longevity of the equipment it keeps cool.

So while I will not give many technical details of how exactly we built our AI fan (for example, no source code will be provided here), I will share something arguably more important: guidelines for what you need to think about if you are creating an AI.

The presented solution is relatively simple, but the choices we made are not cut and dry. It took, not only knowledge about machine learning algorithms, but also some understanding of the theory behind machine learning and cybernetics, including mathematical theorem, to get it right.

Whatever you take from this demo, multiply it by a factor of 10 to 1,000 to give you an idea of what it might take to build a commercially successful intelligent machine.

Our AI demo

Let’s begin with a few technical specifications:

Fan: 12 Volt, Max speed: 3000 RPM

Deployment platform: Raspberry Pi 3 Model B

Sensory input: 3-axis motion sensor, fan mounted

Programming language: Python

Environment: Arch Linux ARM, a light-weight system, designed for ARM structure

Machine learning libraries: TensorFlow scikit-learn

Output: Output through LED indicators and a LAN connection + switching the fan on and off

The problem

We wanted to create a fan that would monitor its operations based on a motion sensor. Our smart fan would know how to recognize normal operations and be able to detect when something goes wrong. In addition, it would assess the severity of the problem and act accordingly; if a detected problem is not severe, the fan would notify technical personnel of the issue and continue operating. In case of a severe, i.e., potentially damaging issue, the fan would immediately shut off.

We also wanted the fan to classify problems into several known categories, in order to inform the technical personnel about the nature of the issue. The fan should, by no means, detect only the known problems, but should be able to learn from experience and be capable of reliably detecting new problems as they occurred.

In addition to all that, we wanted to endow our smart fan with some autonomy. We wanted it to experiment a bit with its environment and see if it could solve its own problems. For example, an obstruction to air flow may be fixed after shutting down temporarily, and then starting again a short time later the fan may check whether the problem had been solved.

With those goals in mind, we set out to build our AI fan. Check back for tomorrow’s post to see how we got started.

 

RELATED LINKS

Is the fusion of AI and cloud the future?

DIY your own AI assistant

Machine intelligence still requires gray matter

Comments

  1. Watch James bruton because he is building a real Ultron with actual a.i. that he programed on his own

    Like

  2. Looking forward for the next post in these series.

    Like

Trackbacks

  1. […] Editor’s note: This is a series of blog posts on the topic of “Demystifying creation of intelligent machines: How does one create AI?” You are now reading part 2. Previous post: part 1 […]

    Like

  2. […] of intelligent machines: How does one create AI?” You are now reading part 4. Previous posts: 1, 2, […]

    Like

  3. […] of intelligent machines: How does one create AI?” You are now reading part 5. Previous posts: 1, 2, 3, […]

    Like

  4. […] of intelligent machines: How does one create AI?” You are now reading part 6.  Previous posts: 1, 2, 3, 4, […]

    Like

  5. […] machines: How does one create AI?” You are now reading part 3. For the list of all, see here: 1, 2, 3, 4, 5, 6, […]

    Like

  6. […] How do you build an AI? We gave it a try […]

    Like

  7. […] How do you build an AI? We gave it a try […]

    Like

  8. […] How do you build an AI? We gave it a try […]

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: