CPC G06Q 30/0276 (2013.01) | 20 Claims |
1. A computing device for performing dynamic digital signage campaign optimization, the computing device comprising:
at least one communication interface;
memory; and
a processing unit configured to:
store in the memory screen data associated to a plurality of screens under control of the computing device, the screen data comprising screen characteristic data defining characteristics of each screen under the control of the computing device, the screen data further comprising screen activity data for a plurality of active campaigns, the screen activity data comprising for each screen at least one of the following: time periods of content display at the screen for each active campaign, duration of the content displayed for each active campaign, number of repetitions in a loop of the screen for each active campaign, percentage of occupation of the loop of the screen for each active campaign, and percentage of occupation of the loop of the screen by the plurality of active campaigns;
store in the memory requirements of the plurality of active campaigns, the requirements of each active campaign comprising at least one campaign goal and at least one campaign constraint, the at least one campaign constraint comprising at least one of the following: a location of the screens used for the active campaign, a number of screens used for the active campaign, and time periods for performing the active campaign;
determine that a given active campaign is overperforming or underperforming with respect to a given campaign goal of the given active campaign, the plurality of active campaigns comprising the given active campaign and at least one other active campaign;
adjust the given campaign goal of the given active campaign;
update the requirements of the given active campaign with the adjusted given campaign goal;
generate a mathematical model based on the updated requirements of the given active campaign, the requirements of the at least one other active campaign, and at least some of the screen data;
transmit via the at least one communication interface the mathematical model to a computational server executing a mathematical solver;
receive via the at least one communication interface a mathematical solution generated by the mathematical solver from the computational server, the mathematical solver processing the mathematical model to generate the mathematical solution;
generate reconfiguration data for the given active campaign based on the mathematical solution, the reconfiguration data defining a new configuration for displaying a content of the given active campaign on selected screens among the plurality of screens under the control of the computing device;
update the screen activity data based on the reconfiguration data of the given active campaign; and
transmit via the at least one communication interface one or more configuration command to computing devices controlling the display of content on the selected screens, the one or more configuration command being based on the reconfiguration data.
|