Hello everybody. I'm asked to find a 2 approximate solution to this
problem:

You’re consulting for an e-commerce site that receives a large number
of visitors each day. For each visitor i, where i € {1, 2 ..... n},
the site has assigned a value v[i], representing the expected revenue
that can be obtained from this customer.

Each visitor i is shown one of m possible ads A1, A2 ..... Am as they
enter the site. The site wants a selection of one ad for each customer
so that each ad is seen, overall, by a set of customers of reasonably
large total weight.

Thus, given a selection of one ad for each customer, we will define
the spread of this selection to be the minimum, over j = 1, 2 ..... m,
of the total weight of all customers who were shown ad Aj.

Example: Suppose there are six customers with values 3, 4, 12, 2, 4,
6, and there are m = 3 ads. Then, in this instance, one could achieve
a spread of 9 by showing ad A1 to customers 1, 2, 4, ad A2 to customer
3, and ad A3 to customers 5 and 6.

The ultimate goal is to find a selection of an ad for each customer
that maximizes the spread. Unfortunately, this optimization problem is
NP-hard, so instead give a polynomial-time algorithm that approximates
the maximum spread within a factor of 2.

The problem is similar to load balancing: in this problem we wanto to
minimize the makespan, while here our goal is to maximize the spread,
so the solution I found is the following:

Add the next visitor value (i.e. assign the visitor) to the Ad with
the current lowest total value
Repeat while there is an unassigned visitor.

This solution actually seems to always find the optimal solution, but
unfortunately I haven't found yet a way to show that is 2-approximate.
Any suggestion?

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algoge...@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to