2015-04-14 88 views
-1

我的項目是爲亞馬遜EC2競價實例確定最優競價策略。我已經有了一個實際上是關於這個主題的研究論文,它通過遞歸方程表達了最優的投標策略。亞馬遜EC2中的競價實例出價策略

截至目前,我的任務是實現這個遞歸算法,之後,我必須改進它以實現更優化的出價,以最大限度地降低平均計算成本,同時滿足截止日期。

B∗t = B∗t+1 − (1 − p)F(B∗t+1)[B∗t+1 − G(B∗t+1)], 
where, t = 0, • • • , T − 3 and B∗T−2 = Sod. 

here B*t (read as B star t) means bidding price at time instant t 
    B*t+1(read as B star (t+1)th instant),similarly for B*T-2... 

T is deadline of a job. Sod= on-demand instance price. F(.) & G(.) are distribution functions. 

我在執行這個遞歸方程時遇到問題。我正在爲我的項目使用核心Java。

我已經寫了代碼,那可是約F()& G() 的機構不知道這是我迄今所做

import java.util.Date; 

class Job{ 
    int computationTime; 
    int deadline; 
public Job(int c,int T){ 
    computationTime=c; 
    deadline=T; 
} 
} 

public class SpotVm { 

    int c; 
    int T; 
    int Sod; //On-demand VM price 

    public SpotVm(Job j){ 
    c=j.computationTime; 
    T=j.deadline; 
    } 

    public static int G(int t) { 

    } 

    public static int F(int t) { 

    } 



    public int bid(int t){ 
     if(t<=T-3) 
     return (bid(t+1)-(1-p)F(bid(t+1))[bid(t+1)-G(bid(t+1))]); 
     else 
     return Sod; 
     } 
    public static void main(String[] args) { 
     Job j1=new Job(20,75); 
     SpotVm s1=new SpotVm(j1); 
     int bidvalue=s1.bid(10); 
    } 

} 

請建議我可以修改什麼可以做在這個代碼上。

+0

@ halfer,首先我想告訴你,我個人沒有在這裏檢查此線程3或4個月左右,因爲我已經解決了我的困難並且在7月的第一個星期我自己成功地實施了這個項目。所以我不明白是什麼讓你得出結論說我添加了緊急請求。我確實理解這樣的論壇是由志願者在休閒時回答問題,但是必須有一些合理的反應時間。否則,人們最終可能會懷疑是否所有的問題都得到了檢查或者沒有希望,希望你能理解我的觀點。 –

+1

嗨,我認爲造成這個問題的一切都是「任何幫助非常感謝和迫切需要的,在此先感謝」的句子。好吧,讓我告訴你,我看到很多人在他們的結尾寫這種說法只要他們發佈一些疑問或在公共論壇徵求建議,就可以作爲結論Windows/Linux疑難解答相關的幫助論壇或其他人。所以我做了,因爲我也是要求一些幫助,可能是在java代碼而不是操作系統故障排除,當然不是爲了優先考慮我的查詢。無論如何,我明白你的觀點,並從下次我會照顧它的,謝謝。 –

回答

1

是比aws,ec2更多的java問題。但我想你想要的東西,如:

public double B(int t) { 
    if (t > (bigT - 2)) throw new Error("illegal value for t"); 
    if (t < 0) throw new Error("illegal value for t"); 
    if (t == (bigT - 2)) return Sod; 
    try { 
     return B(t + 1) - (1 - p) * F(B(t + 1)) * (B(t + 1) - G(t + 1)); 
    } catch (Error e) { 
     throw e; 
    } 
} 
+0

其實我不清楚如何實現分佈函數F(。)&G(。),在文檔中建議用經驗數據集替換它們。這些分佈函數超過現貨價格值。我在亞馬遜EC2網站中檢查特定類型的現貨實例,在特定類型的現貨虛擬貨幣中只給出了特定時刻的現貨價格,不知道如何從F()&G()中繪製函數體這些數據集。感謝您的代碼建議,儘管... –