文章出處









=SUMPRODUCT(A2:A21*B2:B21)


公式含義:






從這里我們可以看到,只要我們不斷的去把輔助列中1與0,做出各種組合,哪幾個數字相加為39121,通過無數次的組合,肯定可以被試出來。



Excel中就有這么一個功能,規劃求解,輔助列中1與0,做出各種組合,這個過程可以讓它去完成。



























設置目標:就是=SUMPRODUCT(A2:A21*B2:B21)這個公式的單元格,這個公式代表了它的邏輯關系


設置目標到:39121,這個值是我們對=SUMPRODUCT(A2:A21*B2:B21)的要求,我們的要求是SUMPRODUCT(A2:A21*B2:B21)=39121


更換可變單元格:$B$2:$B$21,這個就是0與1變化的部分,只要目標SUMPRODUCT(A2:A21*B2:B21)結果為39121,$B$2:$B$21這里面的值讓Excel自己去測試


當然我們必須要求$B$2:$B$21里面只能顯示是1或0,所以我們要加一個“約束”,如果不加的話請看下圖






這樣就不行了,我們要的是整個數字,只有要或不要,1是要,0是不要。




    














bin代表了二進制,二進制大家都知道,就是0和1,我們給它的約束是結果必須只能為0或1。











正在計算,由于這種組合有無數多種可能,須要一點時間……



這種組合具體有多少種我們在義務教育時肯定學習過,就不展開講了。















我們篩選1,這些數字相加就可以得到39121,值得注意的是,規劃求解給出的是一個解,但不代表只有一個解。








3379
3379

相加等

6758


其實有2個解。



補充一點:











像我們這種情況沒有必要精度到0.000001


0.001都用不完







這樣的話推理速度會快上很多很多。





展示一個財務案例





公司有4種產品






這是制造產品需要的原材料配方




如果我們手上有1500塊錢,分別可以生產多少個?








A生產10個,剩下的錢生產BCD,可以生產多少個?










=SUMPRODUCT(C2:C4*B2:B4)*B7+SUMPRODUCT(D2:D4*B2:B4)*B8+SUMPRODUCT(E2:E4*B2:B4)*B9+SUMPRODUCT(F2:F4*B2:B4)*B10


這個很好理解吧,就是


都是0所以ABCD生產總成本為0












    








計算出的這個數值只要是近似值即可,我們手工微調一下數值









如果A產品必需生產10個,剩下的錢才能生產BCD,我們就加一個約束條件























有時候按某個成本反推生產數量,呵呵,你懂的。




結束



















歡迎轉載:http://www.kanwencang.com/bangong/20161221/75750.html

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()