2016-04-08 13 views
0

omümkün Ar modeli Formual yazdırmak mı

library(usl) 

data(raytracer) 
usl.model <- usl(throughput ~ processors, data = raytracer) 

Ben bu model en bakmak mümkün olmak istiyorum Örneğin, R. içinde modelin matematiksel formülü yazdırmak mümkün mü (usl.model) formülü. Bunu yapabilecek herhangi bir fikir var mı, yok mu?

cevap

1

Modelin call yuvasındadır. . Sen ile erişebilirsiniz:, ekran amaçla örneğin,

> [email protected] 
usl(formula = throughput ~ processors, data = raytracer) 

bir daha kompakt seçeneği geçerli: nesneler/listeleri/vb str() güzel bir giriş noktası

> print(as.formula([email protected]), showEnv=FALSE) 
throughput ~ processors 

Daha genel karmaşık üzerindedir yapıda.

> str(usl.model) 
Formal class 'USL' [package "usl"] with 15 slots 
[email protected] frame  :'data.frame': 11 obs. of 2 variables: 
    .. ..$ throughput: num [1:11] 20 78 130 170 190 200 210 230 260 280 ... 
.. ..$ processors: num [1:11] 1 4 8 12 16 20 24 28 32 48 ... 
.. ..- attr(*, "terms")=Classes 'terms', 'formula' length 3 throughput ~ processors 
[.../...] 
[email protected] call   : language usl(formula = throughput ~ processors, data = raytracer) 
[email protected] regr   : chr "processors" 
[email protected] resp   : chr "throughput" 

Ayrıca nesne adını (örn [email protected]) için @ (veya $) ekleyin ve sonra <tab> basabilirsiniz.

+0

Formülden önce _mathematical_ okumadım ... cevabım R'nin formülü hakkındaydı. –

1

'usl' belgelerine diyor:

The Universal Scalability Law can be expressed with following 
formula. ‘C(N)’ predicts the relative capacity of the system for a 
given load ‘N’: 

    C(N) = N/(1 + sigma * (N - 1) + kappa * N * (N - 1)) 

Sorunuzu yorumlamak nasıl emin değilim ama summary(usl.model) den sigma ve kappa katsayılarını almak ve bu denklemin içine takmak için çalışacak ?

N=raytracer$processors; 
attach(as.list([email protected])) 
[email protected] 
data.frame(raytracer, pred=F* N/(1 + sigma * (N - 1) + kappa * N * (N - 1))) 

Bu üretir:

Güncelleme:

processors throughput  pred 
1   1   20 20.00000 
2   4   78 69.55746 
3   8  130 118.48067 
4   12  170 154.75037 
5   16  190 182.70168 
6   20  200 204.89242 
7   24  210 222.92923 
8   28  230 237.87214 
9   32  260 250.44877 
10   48  280 285.56580 
11   64  310 306.91823 

nasıl sigma emin değilim N işlemci sayısını ve C(N) üretilen iş temsil gibi raytracer Örneğin, görünüşe ve kappa hesaplanır. dokümantasyonu, default yönteminin "2. derece polinomuna bir dönüşümünü" (Gunther'i gerekçe göstererek) kullandığını ancak model karesinin, 1 değeriyle bir belirleyiciye sahip olmadığını belirtiyorsa, katsayılarını optimize etmeye geri dönmüş gibi görünmektedir (ölçek faktörü, sigma ve kappa) toplamı ile gerçek ve tahmin edilen yanıt değişkeni arasındaki kareler arasındaki farkları en aza indirgemek (yukarıdaki son iki sütun).

+0

bu model yükün herhangi bir zamanda verildiği zaman, optimum kapasite ne olurdu? sigma ve kappa'yı nasıl hesaplarlar? – user1471980

+0

Cevabınızı, sorunuzu yanıtlamaya çalışmak için düzenledim – Metamorphic