2012-07-08 32 views
2

首先,有沒有人知道開發者的WinBUGS指南?該網站上充滿了模型語言的塗鴉和文檔的詳細示例,但我還沒有找到任何關於如何解釋陷阱窗口的內容。解釋WinBUGS陷阱和如何自動執行程序?

其次,有沒有人發現有任何的方式來精簡檢查/負載/編譯/初始化/監視/更新週期?我的意思是,似乎沒有什麼辦法可以說「不要再複習模型或將任何設置恢復爲默認設置(!!!),只是繼續從這些文件加載​​數據,這些文件,併爲每個產生一個新的尾聲「。即使是標準的Windows快捷方式也會在這裏被取消,迫使用戶不斷點擊並用相同的值填充相同的字段。這可能看起來像一個小問題,但是當你一個接一個地進行許多類似的分析時,它會變得很快。

我即將用TRON.EXE發送假mouseclicks到程序,但在這之前,我希望有一些本地和更優雅的方式來自動化重複的WinBUGS任務。

回答

2

嗯......這是在WinBUGS軟件的正常:-)不友好,顯示陷阱會嚇跑一位經驗豐富的內核黑客.. :-)我不認爲存在一些指導陷阱。我的意思是,如果WinBUGS的創作者想要更加方便用戶,他們可能會首先使陷阱更易於理解,因此不需要任何指導。

我試圖做同樣的事情 - 即定製WinBUGS軟件的行爲。首先,您可以使用R2WinBUGS從R調用WinBUGS。這樣你就可以做很多自動化,但不是全部。例如,我想在WinBUGS中獲得類似進度信息的內容。問題是WinBUGS UI在更新週期中卡住了。 R2WinBUGS創建script.txt命令腳本,並且有命令update (<big number of cycles>)。我在這裏想要的是定製這個script.txt來包含很多較小的update(..)命令,而不是一個大的命令。但是,問題是R2WinBUGS自己生成這個腳本,你不能改變它。

所以定製WinBUGS軟件的方式可能是你創建自己的包裝,創建script.txt和其他文件。我相信你可以通過這種方式爲WinBUGS做更多的定製。

但是,我不確定WinBUGS是否值得。它的發展已經停止,雖然受到很多人的青睞,但仍然僵化。你可以試試JAGS或CppBugs,它們似乎有更多的未來。

0

原來我沒有足夠的RTFM我的問題的第二部分。事實證明,名爲「Batch-Mode:Scripts」的WinBUGS 1.4手冊部分列出了所有的批處理命令。所有重要的UI功能都有一個批處理模式命令。在獲得正確的參數方面只有一點點的試驗和錯誤(例如over.relax('true'))。我花了一段時間才弄清楚WinBUGS似乎對某些Windows路徑有問題,但只要一切位於安裝WinBUGS的目錄的子目錄中,它就可以正常運行。

不得不繼續加載所有這些小文件仍然很麻煩,但我編寫了一個R-script,它使用BRugs包中的函數創建所有文件,並以一致的模式命名它們,並生成一個腳本然後將重新初始化模型並加載它們。

我會離開這個問題打開了一會兒,不過,看看是否有人有我在哪裏可以學習更好地利用陷阱的任何建議。

2

對於圍繞R2WinBUGS的包裝,它增加了許多功能以簡化嚴重的WinBUGS使用,請參閱我的軟件包rube(http://www.stat.cmu.edu/~hseltman/rube/),該軟件包尚未安裝在CRAN上。

其中,當出現陷阱錯誤時,它會提供簡單的英文錯誤消息,而不是將您的模型/數據/ inits傳遞給WinBUGS。它還提供了一個非常有用的總結你的模型/數據/ inits找出不能自動檢測到的問題。當然,它並沒有捕捉到所有的陷阱錯誤。