Science
Fact-checked

At AllTheScience, we're committed to delivering accurate, trustworthy information. Our expert-authored content is rigorously fact-checked and sourced from credible authorities. Discover how we uphold the highest standards in providing you with reliable knowledge.

Learn more...

What Is an Adaptive Algorithm?

Mary McMahon
Mary McMahon
Mary McMahon
Mary McMahon

An adaptive algorithm is a set of instructions to perform a function that can adapt in the event of changes in environment or circumstances. Adaptive algorithms are able to intelligently adjust their activities in light of changing circumstances to achieve the best possible outcome. They can be programmed in a number of computing languages to do everything from automating air traffic control to returning search results that will be accurate and helpful for an Internet user.

The adaptive algorithm can change its behavior if it senses a necessity to do so. In the example of a search engine, the engine can crawl the entire Internet and return results from a variety of locations, but it might consider known parameters about the user first. If the user's IP address originates in France, for instance, the adaptive algorithm would return French results, or the search engine might redirect the user to its French site.

An adaptive algorithm is a set of instructions to perform a function that can adapt in the event of changes in environment or circumstances.
An adaptive algorithm is a set of instructions to perform a function that can adapt in the event of changes in environment or circumstances.

Algorithms can also learn from the behavior of users. Users of the same search engine in the same country may notice that they get different results. These are based on past search behaviors and click-through links. The algorithm can customize its results to the needs of the user. For instance, a person who searches for “football” and clicks on links about American football, not soccer, teaches the algorithm about the kinds of results he wants to see.

Such algorithms can be useful when it is necessary to set up instructions to execute a command, but the system needs to be able to override the algorithm in the event of a pressing situation. With partially-automated air traffic control, for example, the algorithm can respond when a plane radios in a distress call. It will advise air traffic controllers on how to reroute existing traffic, instead of insisting on landing those planes first and putting the distressed plane in a waiting queue. The algorithm can adjust to the circumstances and may override the normal instructions to put planes in a queue in order of their arrival when it detects an emergency situation.

Coding an adaptive algorithm takes longer than developing a regular one, and can require some special considerations. Before a programmer creates an algorithm, she will usually develop a list of parameters to describe what it needs to do and how. With an adaptive version, she will think about situations that could arise and set up the code so the adaptive algorithm can learn from its experiences.

Mary McMahon
Mary McMahon

Ever since she began contributing to the site several years ago, Mary has embraced the exciting challenge of being a AllTheScience researcher and writer. Mary has a liberal arts degree from Goddard College and spends her free time reading, cooking, and exploring the great outdoors.

Learn more...
Mary McMahon
Mary McMahon

Ever since she began contributing to the site several years ago, Mary has embraced the exciting challenge of being a AllTheScience researcher and writer. Mary has a liberal arts degree from Goddard College and spends her free time reading, cooking, and exploring the great outdoors.

Learn more...

Discussion Comments

hamje32

@miriam98 - As a computer programmer I’ve written algorithms, but I’ve never written an adaptive algorithm. I once saw a demonstration of simulated artificial intelligence which I believe used an adaptive algorithm.

Basically it’s a “chat” program where you interact with the computer. It asks you questions (or you ask it questions) and it appears that the computer has intelligence. However something else is going on in the background.

It uses your answers in something like a game of twenty questions, where it learns more and more about you. In the process, it refines its responses and questions so that they appear to be uniquely tailored to you.

It actually seems that you are talking to a real person! It works quite well. I have no idea how to program such a thing, but I think it would involve a lot of coding.

miriam98

@everetra - That’s true. Online marketers know just about everything about you. It’s the reason that sites like Facebook are so powerful. Facebook (and other online social networking sites) basically aggregates all sorts of information about you.

It then applies an adaptive routing algorithm to ensure that you are sent advertisements that are uniquely targeted to your interests and personality.

It works very well, and I think marketers are willing to pay a pretty penny for this information.

everetra

Now I know why my computer seems to know who I am and where I am every time I do a search on the Internet. This adaptive algorithm technology is a very tricky one indeed.

I enter a search term and the next thing I know, I get an ad showing how a local mom made $4,000 on the Internet in a few hours a week. What makes the ad unusual is that it mentions the name of the city in which I live, so it appears that this is an article from a local newspaper, when it is anything but.

I suppose it just takes a regular boilerplate advertisement and uses an adaptive filter to plug in the name of the user’s city. I think Internet marketers have amazing powers at their fingertips these days through the use of adaptive algorithm technologies.

Post your comments
Login:
Forgot password?
Register:
    • An adaptive algorithm is a set of instructions to perform a function that can adapt in the event of changes in environment or circumstances.
      By: alphaspirit
      An adaptive algorithm is a set of instructions to perform a function that can adapt in the event of changes in environment or circumstances.