So finden Sie Minimal- und Maximalwerte für Funktionen in R

Eine sehr große Anzahl von Mathematik zielt darauf ab, Optimierungsprobleme aller Art zu lösen. In R, die optimieren() Funktion stellt einen ziemlich einfachen Mechanismus für Funktionen zu optimieren.

Stellen Sie sich der Vertriebsleiter eines Unternehmens sind und Sie benötigen den besten Preis für Ihr Produkt zu setzen. Mit anderen Worten, finden den Preis eines Produkts, das Einnahmen maximiert.

In der Wirtschaft, kaufen ein einfaches Modell der Preisgestaltung heißt es, dass die Menschen weniger von einem bestimmten Produkt, wenn die Preiserhöhungen. Hier ist eine sehr einfache Funktion, die dieses Verhalten hat:

> Vertrieb lt; - Funktion (Preis) {100 - 0.5 * Preis}

Erwartete Einnahmen sind dann einfach das Produkt aus Preis und erwarteten Umsatz:

> Einnahmen lt; - Funktion (Preis) {Preis * Umsatz (Preis)}

Sie können die Verwendung Kurve() Funktion stetige Funktionen zu zeichnen. Dies nimmt eine Funktion als Eingabe und erzeugt einen Plot. Versuchen Sie, das Verhalten der Verkäufe zu planen und Einnahmen mit der Kurve() Funktion, unterschiedlicher Preis von $ 50 bis $ 150:

bild0.jpg
> Par (mfrow = c (1, 2))> Kurve (Umsatz, von = 50, = 150, xname = "Preis", YlaB = "Sales", main = "Sales")> Kurve (Einnahmen aus = 50, = 150, xname = "Preis", YlaB = "Revenue", main = "Revenue")> par (mfrow = c (1, 1))

Sie haben ein Arbeitsmodell von Absatz und Umsatz. Sie können sofort sehen, dass es einen Punkt der maximalen Einnahmen. Als nächstes verwenden Sie die R-Funktion optimieren() den Wert dieses Maximum zu finden.

Benutzen optimieren(), Sie müssen es sagen, die (in diesem Fall zu verwenden, funktionieren, Einnahmen()) Sowie der Abstand (in diesem Fall die Preise zwischen 50 und 150). In der Standardeinstellung optimieren() sucht nach einem Minimalwert, so dass in diesem Fall, dass Sie es zu sagen, für Maximalwert zu suchen:

> Optimize (Umsatz, c Intervall = (50, 150), Maximum = TRUE) $ maximal [1] 100 $ Ziel [1] 5000

Und los geht. Laden Sie einen Preis von $ 100, und erwarten, dass 5000 $ in Einnahmen zu bekommen.

Die R-Funktion optimieren() verwendet eine Kombination von goldenen Schnitt Suche und sukzessive parabolische Interpolation. Glücklicherweise bieten eine große Anzahl von Paketen verschiedene Algorithmen zur Lösung von Optimierungsproblemen. In der Tat ist es ein besonderes Aufgabe Blick auf CRAN zur Optimierung und mathematischen Programmierung.

Menü