Define It - What Is An Algorithm?

Thus far, our "Define It" series has covered definitions for some of the essential drivers of programmatic media including real-time bidding and "Big Data." But, running in, around and through all of these concepts is something called an algorithm. What's that?

AdExchanger reached out to a group of programmatic media "top guns" and asked for their thoughts on:

"To me, an algorithm is any piece of automated code that accepts some number of variables and data, [then] uses those variables and data to make decisions. But that’s the boring computer science definition. In the world of programmatic buying, algorithms represent the rules we use to place bids on biddable media: display, mobile, search, social, out of home, etc. Algorithms have to take into account the market, the marketing objectives, the budgets and ancillary factors around the individual bid (for example, how does the current search volume for a brand effect what they might be prepared to pay for a display banner?). The algorithm is the secret sauce in programmatic buying. The real challenge is how do the algorithms in disparate systems fit together to ensure more efficient and effective marketing for our clients?"

"An algorithm is a set of instructions for multivariate calculations that learn and adapt over time. To humanize this answer for digital advertising, an algorithm is a calculation that should simply meet customers’ goals creating value in the most cost-effective and transparent ways possible.

Unfortunately, the word ‘algorithm’ is often one of the first talking points that vendor partners in our space refer to but can say very little about given that most platforms are built on proprietary technology. This overuse of the word has created ‘algorithm fatigue’ and resulted in loss of meaning. Advertisers who want more than just marketing speak around algorithms should focus on customization to fit their needs and bottom line revenue results that are transparent."

"Lets start with what it is not. An algorithm is not human-less automation. An algorithm is not a human-less tool. An algorithm is at its simplest a process followed in executing calculations for processing data and decisioning. To quote from Wikipedia’s definition of an algorithm, it is “more precisely, an effective method expressed as a finite list[1] of well-defined instructions[2] for calculating a function.” In our industry this is leveraged for improved analysis to generate more efficient and effective marketing communications and better optimization.

Now that said, an algorithm needs to be defined and told what to do. Whether the algorithm exists for the planning & buying of media, or within dynamic creative, a DSP, an SSP, a Facebook optimizing platform, a landing page targeting tool, and/or a bid manager for search we need smart professionals behind them in order to leverage what algorithms can do to help improve what we are trying to do which is create a better customer experience across paid, owned, and earned media … more efficiently.

Another way of looking at it is this, a high end race car is only as good as the driver."

'It’s a Proprietary Algorithm' is the stock answer when engineers cannot clearly identify how results were obtained

Algorithms are a company's secret sauce -- think Google search results or FB news feed or Goldman Sach's investment strategy – a good algorithm is worth billions and other algorithms are worth pennies

All good and valuable algorithms are proprietary so it is virtually impossible to define/understand the ones that really work

The best algorithm I have ever personally created was a way to predict ad sales revenue, then RTB/programmatic entered the market and rendered my algorithm worthless; so I am now working on a new predictive algorithm, so wish me luck.

"Quasi-technical Definition: a well-defined and finite process for transforming an initial state and inputs into a final state and output.

Ad-tech Definition: varies depending on the day, but usually whatever people want it to mean.

Practical Definition: an automated way of making transactional decisions to maximize a quantified outcome, such as user actions, sentiment shift, or viewability. Algorithms can be simple or hugely complex. They can use advanced math or simple rules. Algorithms can be subject to constraints like budgets, targeting, or pacing. The more constraints, the harder it is for a given algorithm to maximize the desired outcome. In advanced marketing software, an algorithm is not static, but is continuously trained using live data.

There are no one-size fits all algorithms in marketing – different designs have different strengths and weaknesses. Rather than chasing “the best” algorithm, you’ll have more luck with a system that can provide flexibility and choice of algorithms designed for a wide range of marketing needs."

"An algorithm is like a recipe. A recipe provides detailed directions that convert ingredients into a dish, and there is a wide range of different recipes. In the case of algorithms the ingredients are various types and pieces of data and the dish is information. So an algorithm is a precise method for converting data into useful information.

Within the context of programmatic buying, the data ingredients available relate to the placement, the time of day, the user’s location, the cookie ID and any related historical or third party data available. And of course the performance goals of the campaign, pacing or other constraints, and any observed performance to date (potentially the result of a prior output of the algorithm).

Traditionally these different dimensions are considered and decided separately by simple algorithms, generally simple enough that humans can execute them. Placement decisions, for example, might be based on human intuition about which sites make sense to advertise on, and refined later by turning off under-performing sites. The pacing algorithm might be as simple as tuning a bid CPM and a frequency cap.

But real-time bidding has opened the door for much more sophisticated algorithms that can only be managed by machines. The best of these make different decisions on each impression and take into account dependencies between dimensions. For example, rather than turning off a site that underperforms on average, a bidder might continue to bid for it only for a subset of consumers for which it performs well."

3 Comments

An algorithm has multiple definitions yet in all well considered ones it is a procedure for doing a particular computation. As Aaron states above the word in adtech means whatever is needed that day.

That said, let's discuss what makes a GOOD algorithm.

A mathematician might say that an algorithm also needs to be shown to solve problems effectively, either in practice or theoretically. A good algorithm is one that is known to work well, for instance it can be proven to be optimal or at least (1-epsilon) optimal where epsilon is small.

In addition to optimality a computer scientist might be concerned with the efficiency of the algorithm. How fast does it run? Can it be parallelized? Good ones scale when needed without sacrificing effectiveness.

In business practice a good algorithm leads to an increase in efficiency of the business in some measurable way. Higher revenue per worker. Less repetitive effort, increased same store sales, higher order volume, etc.

What are classes algorithms in adtech? Executing targeting expressions to match supply and demand is done with an algorithm. Deriving the minimum pricing of inventory might be done with an algorithm. Calculating bid prices should be done with algorithms as well. The analytics in adtech is often performed with sophisticated sampling algorithms or might be a massive parallel computation of the whole data set. Forecasting inventory 'avails' is also done with algorithms, and this is actually a known hard problem if the targeting is rare.

What is NOT an algorithm? RTB is not an algorithm, it's a protocol for exchanging information. APIs are not algorithms, they are defined mechanisms of executing operations on an internal or external software system. As a computer scientist I would assert that a simple single rule "IF A then DO X ELSE DO Y" is not much of an algorithm... it's just a rule.

What is the state of algorithms in AdTech? I'd say mixed. What passes for an algorithm is not well correlated with any definition of 'good'.

Here's a fascinating data point: For yesterday 54.4% of all RTB bids Rubicon's real-time trading platform saw for the same creative had less than 4 distinct bid prices. What does this mean? The 'algorithms' that set the bid prices for 54% of the campaigns attempting to buy inventory are of questionable effectiveness.

Just thought that I'd weigh in from the perspective of a marketing attribution software provider: An algorithm is a systematic way of doing things – an approach that is repeatable. An algorithm can be good or bad at its intended job, but it's a path to get to where you want to go. Computers are great at following algorithms, but it takes human intelligence to build them, and to compare them to real world results/phenomena to evaluate their accuracy and effectiveness. As the old expression goes: "Man plans, and God laughs." Well in the marketing world, "engineers build algorithms, and the results produced by acting on them validate whether they are any good or not."

And that difference is bigegr the farther you get away from the big publishers. At a big publishing house it's the marketing department that decides the size of the advance, not the editor. So proposals from the get go are pitched to marketing departments. Writers who survive on advances structure the content of their book accordingly.