Area: Out-Of-Home-Advertising
Problem class: MILP
VIOOH is a leading global digital out of home (OOH) marketplace. Launched in 2018 and with headquarters in London, VIOOH’s platform connects buyers and sellers in a premium marketplace, making OOH easily accessible.
Led by a team of digital OOH and programmatic tech experts, VIOOH is pioneering the transformation of the OOH sector, championing its role in enhancing omni-channel digital campaigns through the use of programmatic capabilities and data. VIOOH currently trades programmatically in 15 markets, with more to follow.
VIOOH empowers media owners in the construction of Out of Home marketing campaigns for their clients. Media owners own a large inventory of advertising panels which they want to efficiently manage while satisfying as much as possible the business requirements of their clients.
Put simply, the problem to solve is matching a subset of traditional “static” and/or digital panels (inventory) for each new incoming campaign that satisfies the requirements.
We can see this as a combinatorial problem in mathematics. There are many combinations of panels but we want a selection that best fits the business objectives. Yet it can be very complex to satisfy all the objectives.
For instance, a typical list of requirements could be:
In order to tackle these requirements, the problem is expressed as an optimization program. The requirements are defined either as objectives to maximize or constraints to obey. As media owners continuously simulate campaigns and expect a solution in a few seconds, speed is one of our main challenges.
The objectives can either be explicit or implicit in nature.
There are two types of constraints:
At a glance, the program is composed of 23 sets, 46 parameters, 18 blocks of variables and 29 blocks of equations. The size of each problem depends on the inventory of the media owner and the number of campaigns to allocate.
The VIOOH platform is composed of microservices. The UI and the backend application is in a common language (Javascript & Java). The optimization program is encapsulated in a Python API. The API receives all the campaign data (duration, eligible inventory, etc.) from the front-end application in a JSON format. The data preparation and creation of the GDX files are performed using the GAMS Python API. The optimization program is written in a GAMS file
A simpler approach could have been to use a “greedy algorithm” to solve the allocation problem. This style of approach would mean that not every possible solution is evaluated but rather a seemingly good solution can be found by ranking panels against the objectives and then choosing them one by one according to that order. However, as the complexity of campaigns has increased over time and continues to do so, it is not possible for this style of algorithm to balance all of the objectives and still find quality solutions in all cases. Using an optimization program is a real game changer and with this VIOOH are able to solve very complex marketing needs in a timely manner.
About VIOOH
VIOOH is a leading global digital out of home (OOH) marketplace. Launched in 2018 and with headquarters in London, VIOOH’s platform connects buyers and sellers in a premium marketplace, making OOH easily accessible.
Want to know more about VIOOH? Visit their website at https://www.viooh.com