1

プロジェクトに取り組んでいて、CPLEX for ILOG の機能について疑問に思っていました。たとえば、私は顧客ごとに商品を販売しています。6 つの商品それぞれに異なる確率があります。これは、人が商品を購入する確率が異なることを意味します。2 人の顧客と 6 つの製品があるとします。最初の顧客の場合、確率は最初の製品で 0.5、2 番目の製品で 0.3 などです。つまり、利益を最大化したいのですが、各製品の収益を把握しています。私の問題は、これらの確率に従って、どのように最も収益性の高い製品を選択できるかです。明らかに、これらの確率を使用する方法が必要です。プロジェクトでは、それらは確率を与えるだけであり、それらを使用する方法についての説明はありません。今のところ、私の関数は次のようになります。

maximize
 sum (c in Customers, p in Products, ch in Channels)  (Revenue[p] * quantity[c][ch] - quantity[c][ch] * Cost[ch]); 

数量は、製品を販売するためにチャネルが使用された回数を決定するために使用されます。4 つの異なるチャネルには費用がかかります。

4

1 に答える 1

0

値を取得しようとしている決定変数が何であるかは、私には明確ではありません。各チャネルで各顧客の数量を見つけようとしていると思います (数量[c][ch] はモデルの変数ですが、収益とコストはわかっていますか?)。

また、製品の数量変数に明らかなインデックスがない理由についても少し混乱しています。これは、作業しているモデルのタイプである場合、より正常に思えるでしょう。たとえば、次のようなものです。

maximize
 sum (c in Customers, p in Products, ch in Channels)  (Revenue[p] * quantity[c][ch][p] - quantity[c][ch][p] * Cost[ch]); 

もちろん、私は完全に間違っているかもしれません...また、ここでの用語を手早くゆるく扱っているかもしれませんが、少なくとも単純な開始アプローチを理解したいと思っています。必要なものがそろったら、モデルを拡張したり、複数のシナリオを使用したり、条件付き確率をより洗練された方法で処理したりして、不確実性のより複雑な処理を調べることができます。

確率を含めるには、これを達成するための簡単な方法は、単純に値にその確率を掛けたものとして考えられる期待値について考えることです。そのため、0.3 の確率で 100 ドルを販売した場合、期待値は 30 ドルしかありません。 、一方、確率 0.5 での $80 の別の販売は $40 の期待値を持つため、より価値があります。それはあなたが探していた種類の推論ですか?

それが最初のアプローチとして問題ない場合は、次のようなものを試すことができます。

maximize
 sum (c in Customers, p in Products, ch in Channels)  Probability[p] * (Revenue[p] * quantity[c][ch][p] - quantity[c][ch][p] * Cost[ch]); 
于 2013-04-25T08:56:45.520 に答える