Hi,
If I understand well :
- you have only one ad at a time, displayed at least 10 minutes
and at most 60 minutes, and I suppose that ads cannot be
fractionned.
- ads can be ordered by their "value" for one click
The main objective is to maximize the total number of valuated
clicks, e.g. "fill" the most valuable ads with clicks,
So the problem is finding some good time partition in "living"
periods for the most valuable ads as possible.This tends to put the
most valuable ads in peaks, then continue to the next, find a
remaining peak, etc etc ... But the problem not so obvious if
because of min/max bound on the "living" periods.
The question is :
- do you have other constraints/criteria (preferences of ads in
time, forbidden ad chains ...)
To try to anser to your question, my feeling is that a local solver
may be really good only if you first build a initial solution that
is not so bad. Otherwise, as I suppose you have real big datasets,
it may be too slow. You may have to decompose your problem first (by
day), then redo a global optimization on agregated solution.
Try to think about what your moves can be :
- for instance, it could be a simple swap. If your amount of
"100% sold" clicks is constant, if will only move the two ads. For
that, it is easy to predict the gain of this move
- but I guess you will also need a time-shifting move (move this
ad for 5 minutes before), and this one will be tricky ...
If your amount of "100% sold" clicks is constant, may be you can
partition your time in slots (of 10 minutes min), and assign tasks
sequentially in them. This way you don't need any more optimisation
...
Le 30/12/2010 23:13, Dave Wellman a écrit :
All,
Maybe someone could offer some smart pointers on how to best setup
a drools planning project where I am trying to optimize ad
display.
The project game plan is:
* At any one time there is only one ad in play across all 4K+
sites.
* Ads are scored and ranked by value and potential of generating a
click. We know what ad is the most valuable down to the least.
* Each of the 10,080 minutes in a week is scored by how much
traffic is seen at that minute. (the curve is a predictable 7
peak mountain. Each peak is variable but around 2:00 PM EST with
the biggest peak on Thursday and lowest on Sunday. Valleys are
around 3:00 am. A small hemigog around 10:00 and 12:00 weekdays.
* Each ad is "in play" from between 10 to 60 minutes. Meaning
that one ad is displayed across all properties for at least 10
minutes and a most 60.
* Once a add gets a certain number of clicks it is "100% sold" and
then removed from the queue. If an ad is sold before the 60
minutes is up it is removed and the next ad in line take its
place. If it is under 10 minutes it will stay in play and
continue to be "sold" until the first 10 minutes is up.
Is drools scheduler the right tool for this job or could you
suggest something better?
Thank you for any insights you all have.
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
CARTE DE VISITE
Vincent LEGENDRE
Consultant Sénior
EURODECISION
9A rue de la Porte de Buc 78000 VERSAILLES
Tél. : +33 (0)1 39 07 12 40
Direct : +33 (0)1 39 07 26 16
www.eurodecision.com