Humans in Automation - apps4work/co.a4w GitHub Wiki
To err is human. To really screw things up requires a computer.
But to really really screw things up, requires a computer and a human.
Anyone engaged in automation needs to understand the role of humans.
Humans in the Factory
The great thing about having humans involved is that when things go wrong they will be doing their level best to get the work done anyway.
The other thing you need to understand is that when things are going right they will do their level best to get the work done anyway, possibly in spite of how the system is designed to work.
In some cases this means they're doing their level best to screw it up.
It's not their fault. It's not their job to understand the automation technology. An example: the PLC sends totes on a conveyor belt and diverts it at branches in the conveyor at places known as Diverts. The PLC's definitive knowledge of what tote is where is rather limited. It only knows for certain where at tote is where there are automatic barcode readers.
At other locations there are IR beams that are broken by a tote passing, which inform the PLC that there is a tote but not which tote it is. Conveyors work fairly predictably so the PLC determines which tote broke the beam by knowing the speed of the conveyor and the order and time that it sent the tote.
So when a human decides to pick a tote off the conveyor belt study it's content for a few seconds and then put it back she has destroyed the plc's knowledge of where that tote is. When it hits the next bean either the PLC wont know which tote it is, or it will believe that is a different tote, and may send it to the wrong place.
My dog learn that she could have the house door opened for her if she jumped up at the window next to my desk. She also learnt that it only worked if she danced a little circle on her path between the window and the door. Without the circle the door would not be opened by the time she got there. Only if she performed this act would the dog god open the door when she got there. Of course this was really due to the time it took me to get from my desk to the door. But the ritual dance was a fixed part of her behavior.
If she wanted to be on the other side of an electric fence, she would go to very particular places along the fence line in order to push her way through to otherside. She had learned that it hurts to push yourself through an other places, but not at those places.
Dogs learn superstitions, and so do humans. The humans in the factory will notice certain patterns of the machinery that your programming is controlling, and will act accordingly to those superstitions. Sometimes, like the electric fence, there's a good reason for doing it and sometimes like the circle on the way to the door it's unconnected to the reality.
Decision-making humans.
Humans who are used to making decisions do not like having computers make those decisions.
It's important to understand how humans make decisions.
He shot an arrow into the air where it lands he does not care
... But he will declare that wherever it lands as being the target he was aiming for.
The first and most important role for humans making decision is to avoid making it clear what it is they are trying to do. That means they can declare whatever happens as a success.
Given a complex decision with many facts and complex interelations between those facts, and most particularly it those facts are represented as number and relationships represented as equations, the normal human decision-making process ignores all that stuff. They make their decisions with their gut. And their gut makes good decisions. They know that because their gut tells them.
This means human decision-makers to distain facts especially when they are precise and in the form of data. They are not interested in rule or relationships among the data. In fact they will frequently declare that the date is wrong. And a hundred percent of the time will declare that any conclusion drawn from the data is wrong. They know that because there's gut tells them.
After the fact, when the results of their decision are in, they will studiously avoid studying data that measures the result against the target. (which has, of course, never been declared), and their use of data is limited to cherry picking results that show they were right.
To give a specific example, (modelled closely on a real life instance), suppose human decision maker needed to predict the result of a coin toss.
They make predictions 10 predictions, and get 6 right. Obviously they are good at this, and can report the 6 right cases as proof of their perfection, and don't report the other 4 cases.
They will be insulted at the suggestion that a business decision is never as a random as a coin toss, nor can algorithms know their business better than they do. People who used to be stock brokers knew that too.
In studying the volume of sales of titles for very low volume titles, one might observe a certain title that sold one copy every month for the last 12 months. Someone would argue therefore that you could have safely predicted the sales of that volume after the third month. And therefore we could have safely printed 9 copies after the third months and have them sell over the next 9 months.
sidebar In analysis the sales of books right down to the level a particular title selling (or not) in a particular store on a particular day, you get to an event frequency that is so small it could be neglected - >treated a zero - in most other circumstances. I came across a model that did neglect it. It didn't work very well for the book industry.>
They would not look at the number of titles that sold one copy for each N months and then didn't. I observed (using actual statistics) that there was absolutely no predictive value in historical sales for low >volume titles. I showed (using "equations") that the most effective treatment of the sales of low volume titles was as if they were random events. Of course the idea that an important event - the most >important event - in your business should be treated as if you knew nothing about it and should be treated like a coin toss in an anathema. It is insulting. It is also correct.
Consider for example Pi (3.14159... ) is a fixed property of euclidean geometry. It is an exact number that requires an infinite number of digits to be expressed precisely. It is known to millions of digits, and all the digits are knowable. They never change. However if you didn't have the computing power to compute and you had to guess the trillionth digit, your best strategy is to randomly guess any digit from 0 to 9. More interestingly, if you had to chance to gamble on getting right, you should accept any odds better than 9 to 1. That would be the correct business strategy. You would treat the answer as a random number even though is absolutely fixed and knowable. However the equivalent situation to a business person is not acceptable.
How Automation Software Engineers should deal with humans
Humans in the factory
- If possible, avoid having them
- If necessary to have them, treat them like Robots. Give them clear instructions on what they should do and monitor compliance. Given them good tools to do what they need to do, above recognize that if they don't do what you need need them to do it's your fault not theirs.
Human decision Makers
- See above, if possible.
- Give them what they think they want.
- Show them all the data, optimized by the software
- Allow them to change all the decisions.
- Show them the results.