On Jan 4, 2011, at 9:03 PM, Ben Bolker wrote:

Graham Smith <myotistwo <at> gmail.com> writes:


I assume this has a "proper" name, but I don't know what it is and wondered
if anyone knew of a package that might do the following, or something
similar.

As an example, assume I have borrowed and read 10 books on R , and I have subjectively given each of them a "value" score in terms of how useful I
think they are. I also know how much each costs in terms of money.

What I would like to do is to calculate the costs of every possible
combination of the 10 books, and plot the total monetary value for each of these possible combination with their associated subjective value totals, to help decide which combination of books represents the best value for
money.

I know that some specialist decision analysis software does this sort of
thing, but was hoping R might have an appropriate package.

 Perhaps you can specify your question more precisely, or differently.
The way I interpret it, if there are no interactions in price
(e.g. you get a discount for buying more than one book at a time)
or in value (e.g. you learn more from one book having read another),
then you get the best value/price ratio by taking only the book with
the highest value/price. (If you take no books at all, your value/ price
ratio is undefined.)  The algebra below shows that combining a lower
value/price book with a higher one always lowers your overall value/ price
ratio.

I think a similar argument "at the margins" would show that even if the task were specified as maximal value with a budget, simply ordering by the value/price and buying until the cumsum of the price was greater than budget would solve the alternate statement of the problem. I suppose there might be situations where there were marginal choices of buying two books whose value/price was less than marginally maximal because two other marginally maximal choices would break the budget. This sounds like a homework problem and I don't see any student effort yet. Search terms include: "decision analysis" , "cost- benefit analysis", or "utility theory".

--
David.

 If you redefine your problem, you might find the combn() or
expand.grid() functions, along with various versions of apply(), to
be useful.  If you have too large a search space you might take a look
at the simulated annealing (SANN) option of optim().

===================
if a1/b1 > a2/b2   (1)

and a1, b1, a2, b2 > 0

show

a1/b1 > (a1+a2)/(b1+b2)  (2)

i.e.

a1/b1 - (a1+a2)/(b1+b2) > 0

or
(a1(b1+b2)-(a1+a2)b1)/(b1+b2) =
 (a1*b2-a2*b1)/(b1+b2) > 0

the numerator is (a1*b2-a2*b1):

 (1) implies that a1*b2>a2*b1
so the numerator is positive

qed

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

David Winsemius, MD
West Hartford, CT

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to