By Ray Richter
By Ray Richter
May 31, 2019 – Let me start by saying I’m a computer analyst/programmer, an electronics engineer, and a Microsoft partner.
Currently, I’m semi-retired and refocusing my company, UniMatrix Technologies, to be more electronics oriented. I have been working with electronics, firmware, software, computer networking, remote control in both the military and industrial spaces, and automation control for almost 40 years, and as a business analyst for the last 20 years. I did a lot of advising to companies as a third party on whether the technology that was presented to my clients matched what my clients hoped it could or would do.
My problem is with the use of the term “AI.” For the last two years (especially in the last year), I have noticed more and more companies trying to sell their products under the guise of artificial intelligence (AI) – when it is, in fact, the excellent computer code being written by really intelligent programmers that makes software seem like AI, even though there is no AI code being written. In the military weapons industry, they say that if you want to sell something, say it is “just like Star Wars or Star Trek” and I believe most industries are using that same mentality to sell products today using the term AI.
Let’s start with what is intelligence, according to Merriam-Webster: “The ability to learn or understand or to deal with new or trying situations.” I follow what is going on in the world of AI and I can honestly say that there is no real AI program written yet. The closest we have come is in deep machine learning but, it is still not AI – it is smart programming and machine learning. There is a line in the movie The Fifth Element that says, “Anticipation denotes intelligence.”
For this to work in software, the software would have to be able to anticipate in all situations and not just a timeout error. I have talked to other programmers about AI and what we came up with is this: In order for a computer to have AI, three things have to be integrated together. First, you need to have primary parameters that cannot be changed but are the basis for everything that follows. These first primary parameters or laws would be similar to Isaac Asimov’s three laws for robots but, in an expanded form and implemented in such a way that the firmware cannot be changed in any way, shape or form.
Second, the software must be able to ask questions, whether to itself or to a human. These questions would be based on human-child development such as “What is this?” and it must be able to examine the object and be able to update its database/library.
Third, it must have the ability to rewrite and compile its own code to change the minor rules/parameters. As a child learns, the child must rewrite the rules and expand on them – this is the basis of learning. For example, if I write code that says “Objects are hot,” the software should be able to change that to “Not all objects are hot” as it learns. Now this becomes a major problem because one would have to write laws/parameters that limit what can or cannot be rewritten – same as a child being scolded, but in computer code. If the software cannot find what it is looking for in its libraries/database, it should be able to ask a human for help and update its database such as in “neural networks.” Of course, this would mean a need for big data storage.
Another good example would be to ask a child and software (via a robotic arm) to remove an egg from one carton and place it into another carton. My granddaughter, who is three years old, did this and when she crushed the egg picking it up, she realized that she had used too much pressure to pick it up, that eggs are fragile, and what an egg is. For software to do this, it would need to recognize what an egg is, that it used too much pressure to pick up the egg, then check its tactile pressure sensor/s and realize the pressure point that was used is too much, and then store that information for later use – but that’s after it realized the egg is broken. The code for this would not be easy and it would be very complex. Having software that can predict something based on captured data does not constitute AI but rather was taken from insurance company programs that use complex mathematics and algorithm code, which in turn were taken from programs that can do astrophysics modeling. AI is far more complex than what is out there now.
The problem with salespeople is that they don’t tell you all the things that are needed to implement technology, and using the term AI makes things even worse. This misuse of the term “AI” imposes that the system you just bought or are planning to buy will need very little in the way of system integration. This is far from the truth. It is relatively easy to write code that tells a business owner which machine is being used the most and which one is making the most money – and it isn’t AI, it’s just big data mining.
My prediction for the upcoming year entails more use of big data, IIoT, better, smarter software, security, and the cloud. Until the petroleum industry and the U.S. and Canadian tariffs improve, not much is going to change. So now is not a good time to be investing in the so-called AI promises. You’ll also see more companies upgrading minor systems/components and software to deal with antiquated data and systems. Yes, Canada will eventually reach Industry 4.0 but it will be slower than hoped for or expected. I believe Canada is at 3.5 right now and comfortable being there.
You will also see more consolidation of services and production, and plant closures. And you’ll see more companies trying to sell products using the term AI. Software makers usually create what I call a foundation package, and this is what they sell to you. It usually consists of several modules that work together – but remember, this is a starter package. This starter package must be customized to your specific business model. If it contained AI, then one should only have to tell it what your business model is and it would figure out the rest. AI software would transfer all your data to the new software, including your accounting accounts (GL, AR, AP, assets and so on), transfer your ERP, and search out and communicate with all of your equipment that is network connected. I have written networked asset software that searches out and catalogues anything on a network. We have smart software, not AI software.
Software makers usually allow for one to any number of rewrites –maybe for one year and anything over that is an extra cost. So-called AI software has to be customized for each and every application. The next big cost is data transfer from one software program to another. I have had to write programs just to transfer the old data format to the new format. So not only does one have to buy new hardware and software, they also have to pay the cost of migration and rewrites. Once word gets out – whether it be positive or negative – other companies may shy away from upgrading to Industry 4.0. The SMBs I talk to have told me that the economy is shrinking, companies are having cash flow problems – “I’ll pay you when I get paid” – and companies are now demanding a faster ROI than before.
I have noticed that some companies lately have gone from using the term AI to “smart,” so hats off to them and their honesty. As far as real AI, look to development coming from fringe automation research companies and higher-learning institutions such as MIT. Microchip manufacturing companies are coming out with some really great products – but this is the foundation of what will come out in future products for use in smart systems.
I will say that we have basic AI software when that software can duplicate what my three-year-old granddaughter can do.
Ray Richter is a computer analyst and founder of UniMatrix Technologies, an IT support company for small businesses.
This article originally appeared in the May 2019 issue of Manufacturing AUTOMATION.