Call Us for any questions - 623-455-6135
Paralleling Vehicles and AI Autonomous Cars

Paralleling Vehicles and AI Autonomous Cars

By Lance Eliot, the AI Trends Insider

[Ed. Note: For reader’s interested in Dr. Eliot’s ongoing business analyses about the advent of self-driving cars, see his online Forbes column: https://forbes.com/sites/lanceeliot/]

I was on a mountainous highway that large trucks use to haul goods from Los Angeles to San Francisco.

There were two lanes going northbound.

The inner lane hugged the mountain and was considered the slow lane. The lane to the left of the slow lane was considered the fast lane and it was perched at the edge of cliffs, from which if you drove a few feet to your left you’d plummet hundreds of feet to surely your death at the bottom of the canyons.

I’d driven this path many times and was used to the notion that there would be a slew of trucks in the slow lane as they lumbered up the mountains.

It was tough for the trucks to make the climb and you could see that the drivers had the trucks in their lowest gears. Trucks that were full of merchandise or fruit or perhaps mailed packages were going exceedingly slow. As such, trucks that had no load or were loaded lightly had a tendency to try and pass the slower trucks by swinging over into the fast lane. Unfortunately, swinging into the fast lane for a rather slow truck was not conducive to car traffic that was using the fast lane to speed through the mountain pass.

On this particular day, there was almost no car traffic and it was just me and lots of unwieldy trucks. I kept my eyes open to spot any truck that might try to suddenly move into the fast lane, otherwise I seemed to be unimpeded and was able to push along at the maximum speed limit. It was somewhat eerie that I was moving past these trucks as though I was the hare and they were the turtles. Truck after truck likely saw me pass them as though I was moving at the speed of light. I don’t know if those drivers ever get speed envy while making the run through the mountains, but at least I hoped they would be paying attention to faster moving cars and not make any sudden moves into the fast lane.

Some people don’t put much thought into the act of passing a truck.

They just seem to lollygag and are oblivious to the fact that while passing a truck they are at a distinct disadvantage on the roadway.

Let’s consider some of the dangers involved.

Dangers When Passing A Truck

The moment that your car begins to pass a truck, you are now adjacent to a large and “immovable” object.

You then are continuously at risk as you proceed alongside the truck.

In my case, while being in the leftmost lane, it meant that I had a truck to my right that blocked any possibility of my being able to go to my right as an evasive driving tactic.

Suppose that there was debris in the fast lane and I didn’t spot it until the last moment, in which case, I really could not try to escape to my right due to the bulky truck in the road and would instead have to strike the debris head-on (assuming that I was unable to stop in time).

For the entire time from the start of passing the truck to the popping out ahead of the truck, it as though you are now without a parachute. The entire right side was no longer an open path for me to use and I might as well have been driving next to a brick wall. I realize you could suggest that if needed too I might try to ram the truck by shoving against the side of it with my car, but I assure you that by-and-large that approach is not going to gain you much. Yes, the truck might move over by the physics of hitting it, or the driver of the truck might realize that you are ramming the truck and the driver might then try to move over, though all-in-all it’s not much of a saving grace and you’d be better served to pretend it is a relatively immovable wall.

My escape possibilities on this rather narrow two-lane mountain highway were slim.

I could not swerve to the left because I’d go flying off a cliff. The trucks in the slow lane could not swerve to their right because the mountain was there to stop them from doing so. Whenever I put a truck between me and the mountain, it was as though I was now in a one lane road and my only recourse was to deal with whatever might happen in my one lane. It was like a tunnel that once you entered into one end, you pretty much were stuck until you popped out the other end. The truck was one side of the tunnel and the edge of the cliff was the other side of the tunnel.

My strategy for dealing with passing the trucks was to make sure that I had ample speed as I came up to the edge of a truck that was in the right lane. I do this because I want to be able to speed along past the truck.

Some car drivers don’t think about this aspect and are just cruising along at the prevailing speed. Once they get alongside a truck, sometimes the car driver awakens to the risks and tries to speed-up at that point. In my view, you are better off making a run up to it and try to rocket past the truck.

The basis for wanting to speed past the truck is to minimize the amount of time that you are locked into the “tunnel” that I’ve described earlier.

Since there is such heightened risk while inside the virtual tunnel, you ought to try and minimize the amount of time that you are stuck in there. The longer your passing time, the longer your risk exists. Also, the more time that passes there is a greater chance of something going amiss. By trying to keep the passing time as low as feasible, you are hopefully reducing the odds that if something untoward is going to happen that it will happen while you are inside the virtual tunnel.

So, speeding past the truck will reduce the length of time and the distance involved in the passing operation.

You also need to try and look ahead and anticipate your next move. It is like a game of chess. In chess play, you are looking at your next immediate move, and also trying to look ahead and the next moves. Each move ahead is considered a ply. A good chess player tries to consider several ply ahead and consider the moves and counter-moves that might occur. You should not make your immediate move until you’ve well-considered the subsequent moves.

In the case of passing a truck, you need to consider where the truck is, where you are, and what might occur during the time and distance of the passing operation. Suppose the truck is coming up to the bumper of a slower moving truck. If you try to pass the truck to its left, the truck driver is now stuck behind a slower moving truck and your car that is pinning the truck into the rightmost lane. The truck driver is not going to like this predicament. You have forced the truck into a tunnel of its own, along with now a truck ahead of the truck that is blocking the tunnel for that exasperated truck driver.

I mention the exasperated truck driver because there are times that I’ve seen cars start toward the edge of a truck as though the car wants to pass, but the truck driver realizes that allowing the car to pass will pin the truck behind say a slower moving truck. As such, the truck driver, playing a bit of mental chess of driving, might opt to swing over into the fast lane, doing so to block the car driver from cutting off the truck from that possibility. Plus, the truck driver was likely going to soon swing into the fast lane to pass the lumbering truck. What happened is that the truck driver initiated their move into the fast lane prematurely due to seeing that a car was going to time things to cut them off when they really wanted to pass.

A good car driver would have anticipated this kind of action by the truck driver.

The car driver should have not only been paying attention to their own lane. A savvy car driver needs to consider all lanes of traffic and all nearby vehicles of traffic. What is in the mind of the truck driver whose truck you are about to pass? Will that truck driver let you pass, or will they try to cut you off before you can pass?

Even more worrisome is the possibility that the truck driver might lose sight of your car and thus cut you off once you are already committed to making the passing move.

I’m sure you’ve seen situations wherein a sneaky car tries to snake past the side of a truck and the truck driver inadvertently either bashes the car or appears likely to do so because the truck starts to move into the lane. It could be the truck driver was somewhat asleep at the wheel and wasn’t paying attention to the traffic. Or, it could be that the car ended-up in the blind spot of the truck and the truck driver lost sight of the car. Or, it could be that the car was sly and essentially fooled the driver into not realizing the car was there. It could also be a joint confusion of both the car driver and the truck driver, each not practicing appropriately safe driving tactics.

For each of the trucks that I opted to pass while on the mountain road, in each case I carefully scrutinized the traffic situation.

Was there any truck in front of the truck that I was about to pass, and if so, how far away was the lead truck?

Would I be able to quickly make it past the truck that I wanted to pass, or was there anything ahead of me in my lane that might forestall such an attempt?

Could I get up to my desired passing speed or was there some reason that I would not be able to do so?

Once I got alongside the truck, did there appear to be anything arising that might make the risks even worse of being inside the virtual tunnel that I was about to create?

Keep in mind that I passed probably fifty or so trucks during that hour of driving through the mountain passes.

This means that I had to calculate the contortions of the passing effort about every minute of driving time. Some drivers would get weary of the matter and probably just decide to wing it upon each attempt at passing a truck. It might be like being a batter at a baseball game whereby they kept pitching you ball after ball. The first few baseballs you might carefully hunch over and be grabbing your bat, and then gradually you lose your edge and just keep swinging at whatever comes across the plate. Of course, the act of passing trucks is a life-or-death matter and not the same as simply trying to hit a baseball out of the park.

Errors In Mental Calculations

As luck would have it, and given the volume of pass attempts, I had one instance that got my heart pounding and my hands gripped the wheel in a steely manner.

You could say it was partially due to an error on my part of my mental calculations about passing.

I was coming up to a truck that was in the right lane, the slow lane.

There was a truck ahead of him but at a far enough distance that this truck driver would not likely be thinking yet about switching lanes. My lane ahead was unimpeded. There were no cars or trucks directly behind me. I had the runway needed to get up to my desired passing speed. It all seemed a go.

I got up to my passing speed and timed it so that I was then at the rear edge of the truck. I would hopefully fly past the truck and soon pop out ahead of the truck. The truck though suddenly and unexpectedly slightly edged into my lane. The truck driver did not seem to be trying to move into my lane. Nor did the truck driver seem to be trying to send me a subtle signal to stay out of the lane by edging into it (which, sometimes they might do intentionally or unintentionally).

We were on a part of the mountain road that was somewhat curvy.

This brings up another factor about the act of passing trucks.

Trying to pass a truck on a blind curve is fraught with greater risks. The truck driver might not tightly take the curve and thus use part of your lane for making the curve. The truck driver might not even realize that perhaps the back portion of their truck is not able to make the curve fully within their own lane and the rear-end slides over into your lane.

You also likely cannot readily gauge what is in the road ahead due to the curvature of the road.

Etc.

In this instance, we weren’t at an actual curve per se, which if we had been at a true curve, I would have been much less likely to try and make the passing move. Nonetheless, the road was somewhat curvy. I’d guess that the truck driver somehow lost awareness about the lane and the slight curvature aspects.

Fortunately, I had not made a firm commitment to the passing act and could back-down since I was only still at the rear-edge of the truck. I had to tap my brakes to trim down my speed and allow the truck at its speed to continue forward, thus, I essentially receded from the passing act and the truck pulled ahead of my passing act.

This moment of fright was just a few split seconds.

Yet, I remember it vividly.

That’s the way driving often comes out to be.

You might have lots of time of nothing eventual, and then you suddenly have a short happening that takes just a split second and it could be something you’ll remember the rest of your life. In this case, the incident was so minimal that I would not even say it registers as being memorable – no one hit anyone, no one else was in the car with me that might have also been shocked, and so on. I’ve had other such incidents that were much worse, and I’m sure you’ve had many of your own too.

AI Autonomous Cars And Paralleling Vehicles

What does this have to do with AI self-driving driverless autonomous cars?

At the AI Cybernetic Self-Driving Car Institute, we are developing AI software for self-driving cars. One crucial driving tactic for the AI involves awareness of paralleling vehicles and what to do about it.

Allow me to elaborate.

I’d like to first clarify and introduce the notion that there are varying levels of AI self-driving cars. The topmost level is considered Level 5. A Level 5 self-driving car is one that is being driven by the AI and there is no human driver involved. For the design of Level 5 self-driving cars, the automakers are even removing the gas pedal, the brake pedal, and steering wheel, since those are contraptions used by human drivers. The Level 5 self-driving car is not being driven by a human and nor is there an expectation that a human driver will be present in the self-driving car. It’s all on the shoulders of the AI to drive the car.

For self-driving cars less than a Level 5, there must be a human driver present in the car. The human driver is currently considered the responsible party for the acts of the car. The AI and the human driver are co-sharing the driving task. In spite of this co-sharing, the human is supposed to remain fully immersed into the driving task and be ready at all times to perform the driving task. I’ve repeatedly warned about the dangers of this co-sharing arrangement and predicted it will produce many untoward results.

For my overall framework about AI self-driving cars, see my article: https://aitrends.com/selfdrivingcars/framework-ai-self-driving-driverless-cars-big-picture/

For the levels of self-driving cars, see my article: https://aitrends.com/selfdrivingcars/richter-scale-levels-self-driving-cars/

For why AI Level 5 self-driving cars are like a moonshot, see my article: https://aitrends.com/selfdrivingcars/self-driving-car-mother-ai-projects-moonshot/

For the dangers of co-sharing the driving task, see my article: https://aitrends.com/selfdrivingcars/human-back-up-drivers-for-ai-self-driving-cars/

Let’s focus herein on the true Level 5 self-driving car. Much of the comments apply to the less than Level 5 self-driving cars too, but the fully autonomous AI self-driving car will receive the most attention in this discussion.

Here’s the usual steps involved in the AI driving task:

  • Sensor data collection and interpretation
  • Sensor fusion
  • Virtual world model updating
  • AI action planning
  • Car controls command issuance

Another key aspect of AI self-driving cars is that they will be driving on our roadways in the midst of human driven cars too. There are some pundits of AI self-driving cars that continually refer to a utopian world in which there are only AI self-driving cars on public roads. Currently there are about 250+ million conventional cars in the United States alone, and those cars are not going to magically disappear or become true Level 5 AI self-driving cars overnight.

Indeed, the use of human driven cars will last for many years, likely many decades, and the advent of AI self-driving cars will occur while there are still human driven cars on the roads. This is a crucial point since this means that the AI of self-driving cars needs to be able to contend with not just other AI self-driving cars, but also contend with human driven cars. It is easy to envision a simplistic and rather unrealistic world in which all AI self-driving cars are politely interacting with each other and being civil about roadway interactions. That’s not what is going to be happening for the foreseeable future. AI self-driving cars and human driven cars will need to be able to cope with each other.

For my article about the grand convergence that has led us to this moment in time, see: https://aitrends.com/selfdrivingcars/grand-convergence-explains-rise-self-driving-cars/

See my article about the ethical dilemmas facing AI self-driving cars: https://aitrends.com/selfdrivingcars/ethically-ambiguous-self-driving-cars/

For potential regulations about AI self-driving cars, see my article: https://aitrends.com/selfdrivingcars/assessing-federal-regulations-self-driving-cars-house-bill-passed/

For my predictions about AI self-driving cars for the 2020s, 2030s, and 2040s, see my article: https://aitrends.com/selfdrivingcars/gen-z-and-the-fate-of-ai-self-driving-cars/

Paralleling Is A Special Matter

Returning to the topic of paralleling vehicles, I know that some AI pundits would argue that there is no real need to be especially mindful about the topic because AI self-driving cars will presumably all have V2V (vehicle-to-vehicle) electronic communications. As such, the moment that a self-driving car tries to pass another vehicle, all the AI needs to do is let the other vehicle know that passing is about to happen.

The other vehicle, having gotten the electronic communication, will presumably politely acknowledge the passing action and help ensure that it happens unimpeded.

This might work in a world filled with AI self-driving vehicles, but as mentioned earlier this is not going to happen to our world for many decades to come.

I certainly agree that the use of V2V will be very handy and that for those AI self-driving cars and trucks that are equipped with V2V it will be a boon to safety. Meanwhile, the real-world is that there will be human car drivers and there will be human truck drivers, and the ability to undertake V2V with those human driven vehicles will be less likely. Cross out for now the “solution” of paralleling is simply to invoke V2V.

Okay, I trust that you are therefore still with me on the notion that the AI will need to have a means to deal with the paralleling aspects.

I’d wager that most of you are agreeable that the AI should have a special capability that deals with paralleling other vehicles.

You might be surprised to know that not everyone sees this as a “problem” in its own right.

There are some AI developers that suggest the paralleling matter is a non-matter. Let’s consider my story about passing various trucks on the mountain road. The simpleton approach would be that if the fast lane is available then it makes no difference whether I am passing a truck or not passing truck. All the AI needs to do is keep focused on driving in the fast lane. Until or if the self-driving car wants to switch into the slow lane, there is presumably no need to even be aware of the trucks that are lumbering in the slow lane.

This is the classic pied piper approach to AI driving.

The AI merely follows a vehicle ahead of it, and if there isn’t a vehicle directly ahead then just proceed at the speed limit or a speed allowed as per the nature of the road conditions. No need to be watching other lanes. All the AI needs to do is detect whether there is anything in its prevailing lane. No blockages, no debris, no trucks, and so the AI assumes all is glorious and the self-driving car can merely drive along.

This is the lollygag kind of human driving that I referred to earlier. Not a care in the world. You can put on blinders and just ignore everything but the lane and what’s in it. If a truck is going to switch lanes, well, you’ll see it when it happens. Plus, logically, it makes no sense that a truck would attempt to switch lanes while you are occupying the lane as you are passing the truck, and since it is not a logical move by the truck then there is no reason to consider it as a possibility.

Admittedly, this novice teenager driving style might work much of the time.

You might be lucky and go for quite a while without having any incidents.

Congrats.

But I would wager that ultimately this blind and narrow kind of driving will catch-up with you. All it will take is that truck driver that catches you completely off-guard and you’ll end-up in a tough predicament. Furthermore, you’ll be utterly ill-prepared to take any evasive action. I certainly don’t think we want our AI systems for self-driving cars to be driving in a lollygag manner.

My article about the pied piper approach provides additional details, see: https://aitrends.com/selfdrivingcars/pied-piper-approach-car-following-self-driving-cars/

For the importance of safety and AI self-driving cars, see my article: https://aitrends.com/selfdrivingcars/safety-and-ai-self-driving-cars-world-safety-summit-on-autonomous-tech/

For my article about defensive driving, see: https://aitrends.com/selfdrivingcars/art-defensive-driving-key-self-driving-car-success/

For why AI developers sometimes miss the mark and believe certain aspects of systems design, see my article: https://aitrends.com/selfdrivingcars/egocentric-design-and-ai-self-driving-cars/

Special Aspects To Consider

Overall, I’d assert that the AI needs to be capable of dealing with the paralleling aspects.

Notice that I am not merely labeling this as the passing of vehicles, and instead referring to this act as the notion of paralleling.

Let me explain why.

As a car driver, I’m sure you find yourself frequently being parallel to other vehicles.

This is common.

It happens not merely when you are overtly trying to pass another vehicle.

You might be on the freeway and traffic is clogged. You have cars to your left and to your right. You are not necessarily trying to go past them. You are merely moving back-and-forth in your lane, and they are moving back-and-forth in their lanes, and you are all crawling along on the snarled freeway.

I think it is vital that any driver, whether human or AI, be aware of the act of paralleling. The moment you are parallel to another vehicle, you are now within inches of the other vehicle. This means that the chances of getting into an incident with those other vehicles is increased. There is less wiggle room, as it were. This is true of having trucks next to you and equally true when having cars next to you.

The nice thing about having a car parallel to you is that the length of the car is likely a lot less than the length of a truck. Because of the shorter length of the car, there is less time you are likely paralleling the car and also less distance when paralleling. I state this with a grain of salt because you need to realize that you can be paralleling any vehicle for lengthy time periods. If I am on the freeway and jammed in traffic, I might be next to a truck for many minutes at a time, and likewise next to a car for many minutes at a time.

Here’s something that happens to me from time-to-time and I’d guess happens to you too. I am on the freeway and cruising along. The freeway is wide open. A car comes in the lane next to me and is going at a faster speed. I am anticipating that car will become parallel to me in a few moments and will continue ahead at their existing pace, thus, the car will only be parallel to me for a split second or two. It will be a momentary and transitory act.

Instead, the car comes up and then opts to unexpectedly slow down and goes perfectly parallel to my car. It’s kind of bizarre when it happens. Note that there is nothing ahead of the car and so it is unimpeded. Also, had the car kept going at its prevailing speed, it would have clearly passed me already and gone ahead of me. Nor did I change my speed such that I was now somehow going at a faster speed that would have forced me into become parallel with the other car once it caught up with me. I’m claiming that there is absolutely no apparent driving reason for this other car to have decided to slow down and run parallel to my car.

Have you had this happen to you?

One possible explanation on open highways could be that the other driver believes they might stick out like a sore thumb if they are exceeding the speed limit. By paralleling my car, perhaps the other driver thinks that a cop won’t ticket them, or that if a cop is going to do something there are now two choices rather than one.

Another possible explanation is that the driver was not really aware of how fast they were going.

They arrived at my car and decided that they were going too fast. They decide therefore to slow down. This puts them parallel to my car on an enduring basis. The other driver is not especially cognizant of the paralleling dangers and so thinks nothing of just sitting right there next to my car. For them, being parallel to another car is no different than anything else about driving.

What I usually do in such a circumstance is I try to either slow down or speed-up and “break” the paralleling that is going on. Again, this is only when the situation presents itself and the paralleling is easily avoidable and there’s no particular reason for the paralleling to be undertaken.

Obviously, in a crowded freeway situation, trying to remain parallel-free is not readily performed.

In any case, we are developing AI that takes into account these ground rules of trying to avoid paralleling when feasible, along with being aware of the dangers when stuck with being in a parallel situation.

The AI seeks to anticipate that a paralleling situation is going to arise, and then how to deal with it. If there is a passing opportunity and the paralleling will occur by the overt act of the AI, the AI seeks to minimize the time and distance in which the paralleling will take place.

For aspects of omnipresence and AI self-driving cars, see: https://aitrends.com/selfdrivingcars/omnipresence-ai-self-driving-cars/

For more about edge problems, see: https://aitrends.com/selfdrivingcars/edge-problems-core-true-self-driving-cars-achieving-last-mile/

For machine learning and AI, see my article: https://aitrends.com/selfdrivingcars/ensemble-machine-learning-for-ai-self-driving-cars/

For the pranking of AI self-driving cars, see my article: https://aitrends.com/selfdrivingcars/pranking-of-ai-self-driving-cars/

AI Autonomous Car Causing Paralleling To Occur

Sometimes the AI is the instigator of paralleling and sometimes it is merely the participant of a paralleling.

There are recurring patterns of traffic that through the use of Machine Learning (ML), and the use of deep learning and artificial neural networks, the AI can anticipate “good” versus “bad” acts of paralleling and act accordingly. The AI needs to have programmatic capabilities that serve as the core of dealing with parallel situations, along with being augmented with driving tactics that are built around the use of large sets of traffic data and the use of ML.

AI developers need to consider wisely how to have the AI react to paralleling.

If you opt to have the AI always maneuver away from a paralleling situation, the odds are that human drivers will figure this out. In that case, the savvy human drivers of cars nearby an AI self-driving might try to use this as a ploy to get an AI self-driving car to act in a manner that they want it to act.

This is often referred to as pranking an AI self-driving car.

Another aspect of the paralleling involves the creepiness factor.

Suppose you are driving your car and another car suddenly opts to stay parallel. Assuming that there is no particular driving reason for doing this, it could be that the other driver is essentially a creep. Maybe they want to stare at you or stare at something else inside your car. As a driver, you would likely detect this, and I’d bet you’d pretty quickly try to get out of the situation. If the other car slows down as you slow down, or speeds up as you speed up, the creepiness factors gets even worse.

I’ve had situations that were creepy enough that I then opted to slow down and swing in behind the other car, hoping that then the other car would give up the stare aspects and just continue along.

In another case, I switched lanes and then even made a hasty exit from the freeway, doing so in a calculated manner that made it impossible for the other driver to also catch the same exit. You never know what might be in the mind of another driver and it is safest to find a means to avoid a confrontation.

There are road rage drivers that can let the smallest thing spark them into a danger mode.

The AI system can potentially even ask the human occupants of the self-driving car whether they might be bothered by a car that seems to keep paralleling the self-driving car. Or, it could be that the human occupants of the self-driving car might alert the AI that there is another car that is eerily paralleling the AI self-driving car and ask that the AI do something about it.

This highlights the importance of Natural Language Processing (NLP) and the AI being able to converse with the human occupants in an AI self-driving car.

For more about road rage, see my article: https://aitrends.com/selfdrivingcars/road-rage-and-ai-self-driving-cars/

For more about NLP, see my article: https://aitrends.com/selfdrivingcars/car-voice-commands-nlp-self-driving-cars/

For socio-behavioral computing and AI, see my article: https://aitrends.com/features/socio-behavioral-computing-for-ai-self-driving-cars/

For robojacking and AI, see my article: https://aitrends.com/features/robojacking-self-driving-cars-prevention-better-ai/

Conclusion

Are you watching your parallels while driving?

Many drivers do not.

They only give thought to the paralleling matter when it becomes readily apparent, such as trying to pass a large truck.

Or, if you are trying to make a lane change and there’s a car in the lane next to you and parallel to you, you are likely to give that car the evil eye and brainwave them to get out of your way.

For savvy AI that needs to properly drive a car, we don’t believe that the paralleling aspects should be relegated to an obscure edge case or corner case, and instead it should be front-and-center as a vital capability of the AI driving system. If anyone I know might be getting into an AI self-driving car, I would hope that the AI would be wise to dealing with parallel vehicles and try to ensure their safety accordingly. Come to think of it, I’d want anyone getting into an AI self-driving car to also be able to assume that the AI is versed in paralleling.

There is a mathematician’s worn torn joke that parallel lines have so much in common that it is a shame that they will never meet.

In the case of AI self-driving cars, it is hoped that a self-driving car paralleling another vehicle will never “meet” the other vehicle (i.e., not smash into each other).

The inches away dangers of paralleling another vehicle while in-motion needs to be a key to the AI driving tactics, and I’d say without hesitation that’s no laughing matter.

Copyright 2019 Dr. Lance Eliot

This content is originally posted on AI Trends.