• ベストアンサー

c言語がわからなく、教えていただきたいです。

待ち行列のプログラミング 待ち行列をC言語でプログラミングしたいのですが、わからなくて困っています!! 誰か助けて下さい!! 2工程、3機械から成っている。2種の製品A,Bを製造している。第2工程では機械が2つあり、待ちが少ない方に進む。 ジョブ数は500、加工時間は指数乱数、到着間隔はポアソン到着、納期は加工時間*納期係数(10)です。 この待ち行列のプログラムを教えていただきたいです。 お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jjk65536
  • ベストアンサー率59% (66/111)
回答No.2

製品Aで2工程3機械、製品Bで別の2工程3機械ですか?それとも 同一の工程と機械ですか? 後者の場合、同一製品になってしまうと思うのですが。 ジョブ数500とは、製品数が500ですか? その場合、製品AとB合計で500ですか?合計1000ですか? それとも、機械の同時処理能力が500件ですか? 加工時間の乱数は機械が1つ製品を処理するごとに 新しい乱数で初期化されますか? それともプログラム開始時に生成した乱数で機械ごとに一定ですか? はたまた、3つの機械で一定ですか? 指数乱数の生成プログラムはすでにできていますか? できていない場合、ここが参考になるかと思います。 http://okwave.jp/qa/q941524.html 「到着」とは1工程目に材料が「到着」するという意味ですか? 1工程目から2工程目へ「到着」するという意味ですか?両方ですか? プログラム全体としては、デルタtずつ進めながら 各加工製品の状況と待ち行列を更新していくような 流れになるかと思います。 デルタt進めた際に、例えばrand()%2==0なら到着とすると 似非ポアソン到着になるかと思います。 ちゃんとしたものが必要でしたら、私は専門外ですすみません。 納期は「工程1の加工時間*10+工程2の加工時間*10」の解釈で合っていますか? また、待ち行列に長くいたことで納期を超えた場合に何か判定が必要ですか? たくさん書きましたが、これらを明確にしないとコーディングなどできません。 特定の業種では常識的にわかることもあるのかもしれませんが、C言語の常識では ちょっと予想できませんでした。 > この待ち行列のプログラムを教えていただきたいです。 待ち行列そのものは3つの機械のために3つあると考えられます。 ポインタのリンクリストなどで管理するのが一般的かと思います。 連結リスト http://ja.wikipedia.org/wiki/%E9%80%A3%E7%B5%90%E3%83%AA%E3%82%B9%E3%83%88

yuta_kimu
質問者

お礼

回答ありがとうございました。 A,B同種のもので、製品数が両方合わせて500で、1つ製品を処理するごとに乱数は初期化され、第1工程に製品が到着するという意味です。 納期は工程1の加工時間*10+工程2の加工時間*10です。納期を超えた製品と超えていない製品を分けて納期遅れ率を出したいと思っています。

yuta_kimu
質問者

補足

回答ありがとうございました。 A,B同種のもので、製品数が両方合わせて500で、1つ製品を処理するごとに乱数は初期化され、第1工程に製品が到着するという意味です。 納期は工程1の加工時間*10+工程2の加工時間*10です。納期を超えた製品と超えていない製品を分けて納期遅れ率を出したいと思っています。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

プログラムを書くのに十分な情報がありません. よって「わからなくて困っています」というのが正しい. 逆に, この文章からプログラムができるのだとしたら, その方がおかしい.

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • お願いいたします。

    待ち行列のC言語プログラムが分からなく困っています。 教えていただけないでしょうか。 2種類の製品A,Bを製造している。第1、第2の工程を経て完成。第1工程は機械が1つ、第2工程では以下のディスパッチング法を使って、納期が遅れた製品と納期内に完成した製品の仕分けをし、どのディスパッチング法の納期遅れ率が低いかをシミュレーションを行う。 ルールとしてFIFO法:最初に入ってきたものを最初に処理をし、次に入ってきたものは最初の処理が終わるまで待たせる、CR法:納期までの時間/残りの作業時間の小さいジョブを優先)、SPT法:処理時間の短いジョブの順に処理を行う)の3種を考える。 ジョブ数を500、到着時間を指数乱数で発生させる。納期係数をα=10と定め、加工時間を指数乱数で発生させる。納期=(加工時間*納期係数)。 の待ち行列を使ったC言語のプログラムが分かりません。教えていただけないでしょうか? お願いいたします。

  • 学校で、C言語でのプログラミングをせよ。

    学校で、C言語でのプログラミングをせよ。 との課題が出たのですが、プログラミングが全くわからなくて困っています!! 誰か助けて下さい!! 待ち行列 ・レジ到着は一時間あたり平均20人。 ・客は一番待ち人数の少ないレジに並ぶ。 ・待ち人数の同じレジが二つ以上ある場合は等確率でその内の一つをランダムに選択。 ・客一人あたりの勘定時間は平均値10分の指数分布 ・一つの勘定台には最長平均5分までしか客を待たせられない レジの必要数の推定と客の平均待ち時間およびレジの平均空き時間を推定せよ。 ともありますが、さっぱりです…。

    • ベストアンサー
    • Java
  • ポアソンの待ち行列、M/M/1について教えて下さい。

    ポアソンの待ち行列、M/M/1について教えて下さい。 レジがひとつあります。 1時間に12人の客がポアソン到着します。 1人あたりの平均サービス時間は4分で、指数分布に従っています。 この時、レジを待つ人の平均人数を1人以下にするには、レジのサービス能力をいくら以上にすれば良いでしょうか? 大学で学んだのですが、この部分がよく解りませんでした。

  • 待ち行列のプログラム(Fortran)

    Fortranで待ち行列(レジ待ち)のプログラムを作りたいのですが、途中で行き詰まってしまい、うまくできません!  待ち行列についてまだよく理解できてないのだと思います。指数乱数を発生させるプログラムだけだったらできるのですが、それをヒストグラムで示して、待ち行列がどのように変化するのか観察するプログラムができないのです。  待ち行列のプログラムについて詳しく載っているHPなどがあれば教えてください!!(本でもOKです)

  • 待ち行列の問題がわかりません、よろしくお願いします

    学校から待ち行列の問題が出たのですがさっぱりわからないのでどなたかわかる方よろしくお願いします。 あるスーパーに一台のレジがあり、客が代金を支払う為にレジで行列を作っている。買い物を終えレジにくる客は、ポアソン到着とし、平均到着時間間隔は60秒と20秒の場合の2通りを考える。なお、レジにおける代金支払いの所要時間を平均45秒の指数分布であるとする。平均到着時間間隔が60秒の場合と20秒の場合のそれぞれについて次の問に答えよ。 注意:単位を忘れない事、計算が出来ない場合は計算不可と記載する事 (1)客が待つ確立 (2)客が待たされない確率 (3)待っている客の人数(待ち行列の長さ)の期待値 (4)待っている客の人数とレジにてサービスを受けている客の合計人数の期待値 (5)待ち時間の期待値 (6)レジに着いてから代金を支払い出ていくまでの所用時間の期待値 さらにはレジを2台体制にした時についても答えよ。 とゆう問題です。 学校から配られたプリントを参考にしてもさっぱりとゆう感じで。 どなたかお願いします。

  • 待ち行列の問題です。

    ポアソン到着(到着率はλ)、指数サービス(サービス率はμ)の待ち行列(λ/μ<1)に関して、以下の問に答えよ。 (1)窓口が1個の場合の平衡方程式を書け。 (2)(1)の平衡方程式を解いて定常分布を求めよ。 (3)窓口がS個の場合の平衡方程式を書け。 この問題がわからないので分かる方教えて下さい。おねがいします。

  • 学校課題のプログラミングにとても悩まされています…。

    学校課題のプログラミングにとても悩まされています…。 学校でC言語でプログラミングせよ。 との課題が出たのですが、プログラミングが全くわからなくて困っています!! お願いします!!誰か助けて下さい!! 待ち行列 ・レジ到着は一時間あたり平均20人。 ・客は一番待ち人数の少ないレジに並ぶ。 ・待ち人数の同じレジが二つ以上ある場合は等確率でその内の一つをランダムに選択。 ・客一人あたりの勘定時間は平均値10分の指数分布 ・一つの勘定台には最長平均5分までしか客を待たせられない レジの必要数の推定と客の平均待ち時間およびレジの平均空き時間を推定せよ。 ともありますが、さっぱりです…。

  • ポアソン過程と非斉時ポアソン過程における到着時間

    以下の確率変数が互いに independent かどうか,そして identically かどうかについてお伺いします. 確率変数 Xi を i 番目のイベントの到着時刻とし,確率変数 Yi を i-1 番目の到着と i 番目の到着の到着時間間隔とします.1 <= i <= n. 以下は私の理解ですが,正しくない箇所をご指摘いただければ助かります. Xi と Yi はポアソン過程に従う場合: Xi は independent で identically で,ガンマ分布に従う. Yi は independent で identically で,指数分布に従う. Xi と Yi は非斉時ポアソン過程に従う場合: Xi は independent ではなく identically でもない. Yi は independent であるが identically ではない. (従って,非斉時ポアソン過程は再生過程ではない.) よろしくお願い致します.

  • ポアソン到着

    ポアソン到着では    ・定常性「同じ幅をもった時間区間あたりの到着の仕方は、時刻に依存しない」 を仮定していますが、バースト性を持つような到着間隔を得たい場合どのような手法があるのでしょうか。

  • オペレーティングシステムのスケジューリングに関する

    オペレーティングシステムのスケジューリングに関する問題です. ジョブがA,B,Cとあり,その順番で1回目のCPUバーストが16, 4, 8 で 2回目が4, 16, 8 で3回目が8, 8, 4 のとき,過去のCPUバーストから 予測値を求める指数平均を利用し,最短ジョブ方式(SJF)でスケジューリングを 行った場合,各ジョブの終了時刻を求めると, Aが76,Bが68,Cが60となるのですが,この答えは合ってるでしょうか. 指数平均τ_n+1 = t_n/2 + τ_n/2 で,t_0 = 0,τ_0 = 0 です. CPU待行列に予測値が同じジョブがあった場合は先着順でスケジューリング するものだとします. また,CPUバーストの間に存在するIOバーストはすべて2単位時間とする.