Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1741 / 13645 ツリー ←次へ | 前へ→

【72229】行列組み合わせ 54 12/6/24(日) 3:01 質問[未読]
【72234】Re:行列組み合わせ rabbit 12/6/24(日) 8:35 発言[未読]
【72240】Re:行列組み合わせ 54 12/6/24(日) 15:52 発言[未読]
【72242】Re:行列組み合わせ 54 12/6/26(火) 23:58 お礼[未読]

【72229】行列組み合わせ
質問  54  - 12/6/24(日) 3:01 -

引用なし
パスワード
   苦しいときに拝見させていただいています。


条件を"例"として挙げます。

***************************************************************************
(1)赤,白,黄,黒の4色の毛糸があります。
(2)毛糸は2色を撚り合わせてペアで使います。
(3)同じ色のペアはありません。
(4)各色の数量は提示されます。
 赤=35m
 白=50m
 黄=15m
 黒=30m
(5)色の組み合わせは提示されます。並びはメインとサブに別れます。
   メイン&サブ
 ア: 赤 & 白
 イ: 赤 & 黄
 ウ: 白 & 黒
(6)ある色のペアが出ている場合は、その2色の逆の組み合わせのペアは出ません。
(ex.赤&白のペアがあった場合は白&赤のペアはありません。)

結果として、
上記の条件のときのア,イ,ウそれぞれのペアのm数量を算出したいのです。

上の場合なら
 ア=20m
 イ=15m
 ウ=30m
となります。

***************************************************************************

実際は色数は16色程度あり,数量もまちまちです。
組み合わせは84通りほどになると思われます。
時間をかけてExcelで数例試しましたが解は1つではない場合が多かったです。

半年に一度程しかVBAを組まない万年初心者ですがよろしくお願いします。

【72234】Re:行列組み合わせ
発言  rabbit  - 12/6/24(日) 8:35 -

引用なし
パスワード
   原材料に制約があって、ペアの製品を数多く作りたいということですか?
「数多く」という部分の目的関数は何ですか?
製品の数の単純合計を最大化するということですか?

その例は問題の説明用としてはいいですが、
実際の例としては少し単純すぎます。

> 解は1つではない場合が多かった
とのことですが、解をすべて求めるということですか?
それとも、なんらかの条件をつけて唯一解を求めるということですか?

そのあたりをもう少し説明されたらどうでしょう。

基本的には、ソルバーを使う方向が考えられますね。

【72240】Re:行列組み合わせ
発言  54  - 12/6/24(日) 15:52 -

引用なし
パスワード
   ▼rabbit さん:
説明不足、失礼いたしました。

>原材料に制約があって、ペアの製品を数多く作りたいということですか?
>「数多く」という部分の目的関数は何ですか?
>製品の数の単純合計を最大化するということですか?

>> 解は1つではない場合が多かった
>とのことですが、解をすべて求めるということですか?
>それとも、なんらかの条件をつけて唯一解を求めるということですか?

1つの解を求めるのが目的です。全ての解を必要としていません。
例えば多数解があった場合、一番最初に出された結果を解として良いです。

>基本的には、ソルバーを使う方向が考えられますね。

ソルバー機能というものを知りませんでした。
勉強してみます。

【72242】Re:行列組み合わせ
お礼  54  - 12/6/26(火) 23:58 -

引用なし
パスワード
   ソルバーとVBAで上手く解を得ることができました。
ありがとうございます。

1741 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free