Re: [R] Optimization problem

From: Ravi Varadhan <rvaradhan_at_jhmi.edu>
Date: Thu, 17 Jun 2010 12:40:55 -0400

Here is a general approach using smoothing using the Gasser-Mueller kernel, which is implemented in the "lokern" package. The optimal bandwidth for derivative estimation is automatically chosen using a plug-in approximation. The code and the results are attached here.

Let me know if you have any questions.

Ravi.

-----Original Message-----
From: r-help-bounces_at_r-project.org [mailto:r-help-bounces_at_r-project.org] On Behalf Of Josť E. Lozano
Sent: Thursday, June 17, 2010 7:48 AM
To: r-help_at_r-project.org
Subject: [R] Optimization problem

Hello,

I'm facing a problem of optimization, I've already solved but I'm trying to find other answers to this problem to improve the solution.

Well, to make it short: I have to set/install a number of devices in a building, and I have to give service to a number of "customers", or better say, to give a good quality of the signal. The more devices I place, the higher the signal. The signal is measured in a (coverage) percentage, the higher the percentage, the better the service. The max percentage is (obviously) 100%.

As an example:

Example 1:



devices<-1:49
percentages<-c(15.8,29.3,43.1,52.9,61.8,70.4,77.6,84.4,88.6,90.9,92.7,93.2,9
4.1,94.6,95.4,96.1,96.5,97,97.3,97.8,98.1,98.7,99,99.4,99.5,99.6,99.7,99.9,1
00,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,1
00,100)
matplot(devices,percentages,type="l")
cbind(devices,percentages)

In this example, I can place up to 49 devices, though it does not make any sense to place more than 29 since 29 devices gives a quality of 100%, the maximum.

My problem is that I want to minimize the number of devices maximizing the percentage.

I think the key is "I don't want to add a new device if there is no significance change in the final percentage", so looking at the graph 11 devices seems logical. Notice that my objective is not the final percentage, it can be 90%... or 50%. The service is ok with both numbers.

Although I've solved the problem calculating the slope and making an axis change, I'd like to make something "statistically" stronger, because in the end what I'm doing is making some trigonometrics.

If you think on other solutions i'd appreciate your help.

Thanks,
J. Lozano

Other examples:

Example 2:



devices<-1:45
percentages<-c(19.6,38.3,53.2,65,72.9,78.5,82.8,87,89,90.1,91.7,92.6,93.7,94 .6,95.4,96,96.5,96.9,97.2,97.7,97.9,98.3,98.6,98.8,99,99.3,99.6,99.8,100,100 ,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100) matplot(devices,percentages,type="l")
cbind(devices,percentages)

45 total devices, 9-10 devices seem logical.

Example 3:



devices<-1:37
percentages<-c(12.4,24.6,35.8,44.9,53.4,61.6,70,76.9,82.3,84.7,87.5,89.1,90.
7,91.8,92.9,94.3,95.6,95.9,97,97.2,97.4,97.8,98,98.2,98.4,98.7,99,99.2,99.4,
99.6,99.8,100,100,100,100,100,100)

matplot(devices,percentages,type="l")
cbind(devices,percentages)

37 total devices, 9 devices seem logical.

Example 4:



devices<-1:52
percentages<-c(12.2,22.4,32,41.3,50.1,56.2,61,64.3,66.9,69.2,73.7,76,78.6,81
.7,85.4,87.8,91.1,92.8,94.2,95,95.6,96.3,96.6,97.3,97.7,98.2,98.5,98.7,99.2,
99.6,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100
,100,100,100,100)
matplot(devices,percentages,type="l")
cbind(devices,percentages)

52 total devices, hard to chose, 9? 19?



R-help_at_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.



R-help_at_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.
Received on Thu 17 Jun 2010 - 16:43:30 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Fri 18 Jun 2010 - 07:20:34 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive