По какому алгоритму лучше управлять вероятностью рандомной выборки из массива?
Приветствую!
Есть вот такая интересная задачка, которую мой программист что-то не может никак осилить:
у меня на сайте (строительный портал) решили внедрить что-то типа своей тизерной сети…
написать ее проблем не составило, но вот на чем произошел стопор:
вероятность показа объявлений решили сделать произведением ctr и цены клика, введенной рекламодателем (по системе гугла — выигрывает пересечение высокой цены клика и высокого качества объявления)…
Но вот как эффективно и правильно реализовать такое управления выборкой объявлений, пока не смогли допереть…
повидимому автор пропустил, должно быть так ctr*price+x*RAND()
rand() выдаёт случайное число от 0 до 1, но мне кажется это не лучшее решение.
Чтоб с низким ctr*price имели хоть какой-то шанс быть показаны X должен быть не меньше чем MAX(ctr*price) — MIN(ctr*price), слишком большой Х будет сводить к минимумому влияние значения ctr*price. Не думаю что самое удачное решение, но в какой-то мере оно решает проблему. Возможно этого вполне хватит.