第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將 Pyomo 導(dǎo)出到 .mps 文件時保留變量名稱

將 Pyomo 導(dǎo)出到 .mps 文件時保留變量名稱

PHP
一只甜甜圈 2023-11-09 10:42:03
因此,我目前正在使用一個 pyomo 模型,該模型具有多個正在并行解決的實例。問題是,解決它們需要 pyomo 相當(dāng)長的時間(比如 2 到 3 秒,盡管gurobi 的解決部分大約需要 0.08 秒)。我發(fā)現(xiàn),通過將 pyomo 實例導(dǎo)出到 .mps 文件中,然后將其提供給 gurobipy,我可以將整體速度提高 30%。當(dāng)我想使用已解決模型的變量時,問題就出現(xiàn)了,因為我注意到,當(dāng)將原始實例從 pyomo 導(dǎo)出到 .mps 文件時,變量名稱會丟失;它們都被命名為“x”(因此,例如 model.Delta、model.Pg、model.Alpha 等會變成 x1、x2、...、x9999,而不是 Delta[0]、Delta[1], ...阿爾法[99,99])。有沒有辦法在導(dǎo)出模型時保留原來的變量名?
查看完整描述

2 回答

?
慕勒3428872

TA貢獻(xiàn)1848條經(jīng)驗 獲得超6個贊

設(shè)法解決了!對于任何可能覺得這有用的人,我傳遞了一個帶有“symbolic_solver_labels”的字典作為該方法的 io_options 參數(shù),如下所示:

instance.write(filename = str(es_) + ".mps", io_options = {"symbolic_solver_labels":True})

現(xiàn)在我的變量在 .mps 文件中已正確標(biāo)記!


查看完整回答
反對 回復(fù) 2023-11-09
?
Smart貓小萌

TA貢獻(xiàn)1911條經(jīng)驗 獲得超7個贊

我使用Pyomo==5.6.9,在這個版本中,“io_options”應(yīng)該使用不同的方式來設(shè)置。


model.write(filename = "FILEPATH.mps", symbolic_solver_labels=True)

我檢查了 Pyomo(pyomo/repn/plugins/mps.py:ProblemWriter_mps.__call__) 的源代碼,在我看來,傳遞給該函數(shù)的“io_options”是 **kargs 但不是字典。


    def __call__(self,

                 model,

                 output_filename,

                 solver_capability,

                 io_options):


        # Make sure not to modify the user's dictionary,

        # they may be reusing it outside of this call

        io_options = dict(io_options)

        

        ...


        # Use full Pyomo component names in the MPS file rather

        # than shortened symbols (slower, but useful for debugging).

        symbolic_solver_labels = \

            io_options.pop("symbolic_solver_labels", False)

        

        ...

        

        if len(io_options):

            raise ValueError(

                "ProblemWriter_mps passed unrecognized io_options:\n\t" +

                "\n\t".join("%s = %s" % (k,v) for k,v in iteritems(io_options)))


查看完整回答
反對 回復(fù) 2023-11-09
  • 2 回答
  • 0 關(guān)注
  • 227 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號