簡體   English   中英

使用Solver,EXCEL保存目標函數值

[英]Saving the objective function values while using Solver, EXCEL

我在Excel中設置了優化問題。 當我優化(使用gui)時,我得到目標函數的最終(最佳)值。 我可以看到excel計算了許多點的目標函數值,並確定了最佳點。 有沒有辦法將所有目標函數值保存到excel表中的某個范圍。 如果我能使用求解器GUI完成它會很棒。 如果沒有,基於VBA的解決方案也會這樣做。

謝謝。

這是可能的,但手動繁瑣。 在Excel / Solver中,在“ 求解器參數”對話框中選擇“ 選項 Data-> Solver-> Excel中的選項 )選中Show Iterations Results復選框。 執行此操作時,Excel的求解器將在每次迭代后暫停,並使用當前變量值更新單元格。

現在,當您通過單擊“ Solve ”運行模型時,Excel將在每次中間迭代時暫停。 Solver認為每個中間步驟都是“ 場景” 您可以通過在每次迭代后彈出的“ 方案”對話框中為其指定名稱來保存每個名稱。 (在文本框中輸入符合邏輯的內容,如i1,i2,i3 ...)

解算器完成后,您可以訪問“場景管理器” Excel->選項 - >場景 。您將看到列出的所有場景。要將它們全部放入您想要的命名區域,請按“ 摘要” “按鈕,並在對話框中選擇” 方案數據透視表報告 。“這將在一個漂亮的數據透視表中顯示所有中間目標函數值供您分析。

要記住以下幾個限制:1。啟用“ 顯示迭代結果 ”選項會嚴重降低解決方案的速度2.如果您的LP甚至是中等大小,則會有大量的迭代次數。 手動記錄場景將不切實際可行。 但是,您可以通過按ESC按鈕“存檔”場景並繼續“示例”幾次迭代。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM