仕事の効率化は計算できる?

このQ&Aのポイント
  • 仕事の効率化について考えていますが、具体的な方法に迷っています。
  • 荷物の運搬方法について、往復作業と台車を使用する方法の効率を比較したいです。
  • どちらの方法が効率的かを知りたいです。
回答を見る
  • ベストアンサー

仕事の効率化は計算できますか?

お世話になります。 物理学なのか…単純な数学なのか…どこに質問すべきか迷った挙句、こちらのジャンルに質問させていただきます。 現在、仕事の効率化を考えております。 例えば、重量mの荷物がX個あるとします。これを距離3L離れた場所へ運ぶ仕事です。作業員はA、B、C、D、E、の5人です。荷物は1回に1つしか持つ事が出来ないとします。歩く速度は全員が一定(同一)速度とします。 (方法1)A~Eの各員が荷物を一つずつ持ち、3L離れた場所(G地点)へ運び、荷物を置いて帰ってくる往復作業を荷物がなくなるまで行う。 (方法2)荷物のある場所からK1(距離Lの場所)に荷物がY個だけ搭載できる台車を用意する。A、B、C、Dの4名が荷物のある場所へおり、このA、B、Cの3名が台車が一杯になるだけ荷物を積み込む。一杯になったらDは台車をさらにK2(距離Lだけ離れたところ)に持って行き、そこで待機していたEと共に2名で台車から荷物を荷物置き場(G地点)まで運びます(距離L)。この間、A、B、Cの3名は他の台車へ荷物を積み込みます。荷物をG地点へ運び終わったらDはまた元の場所へ戻り、新たに積み込まれた台車を運んで、再度Eと共に荷物を運びます。全ての荷物を台車に載せた時点で、今度は運びきれていない残った台車をK2まで4名で運んで、全員でG地点まで荷物を運びます。 概略は以上のとおりなのですが、(方法1)と(方法2)とではどちらが効率的なのでしょうか? どなたか分かる方、宜しくお願いいたします。

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

  • ベストアンサー
  • wolv
  • ベストアンサー率37% (376/1001)
回答No.1

何人で荷物を積む・おろす、という手順はとりあえずあまり関係ありません。 {荷物を持ってL移動、持たずにL移動}を1単位の仕事と定義して、何単位の仕事をすればすべての作業が完了するかを考えればいいと思います。 方法1の場合、「3 X」の仕事で完了します。 方法2の場合、Xの荷物は、台車X/Y台分の量になるので、 ・荷物積み込みに「X」 ・台車での移動に「X/Y」 ・荷物おろしに「X」 の仕事で完了します。 方法2のほうが方法1より効率がよく、(X-X/Y) 単位少ない仕事ですみます。 仮に荷物が70個、台車に7個乗るなら方法2は方法1にくらべて「10単位」少なくてすみます。 あまりが出る場合などを考慮していませんので、実際は多少違った結果になることがあります。

kikumaro
質問者

お礼

あっ…分かりました!馬鹿ですねぇ…私。 回答いただいた内容で、十分理解できました! ありがとうございました!

kikumaro
質問者

補足

早々のご回答、ありがとうございます。 以下の部分が良く分からないのでご説明願えたら…と思うのですが… >方法2のほうが方法1より効率がよく、(X-X/Y) 単位少ない仕事ですみます どうして、(X-X/Y)単位少なくなるのでしょうか?

その他の回答 (2)

  • wolv
  • ベストアンサー率37% (376/1001)
回答No.3

さらに訂正^^; 回答No1で、「「10単位」少なくてすみます」と書きましたが嘘でした。 60単位少なくなります。

  • wolv
  • ベストアンサー率37% (376/1001)
回答No.2

訂正+アドバイス 方法2の手順だと、はじめのEの移動(と仕事が終わってEが元の場所に帰る分)に1単位、荷物を降ろし終わって「Dが往復するのをEが待つ」という仕事に1単位ずつ余分な仕事が追加されます。 はじめは5人で荷物を積む。 1台分できたら、1人で台車を押していき、1人で荷物を降ろす。 残りの4人で2台目の台車に荷物を積む。2台めができたら、別の1人が台車を押していく。のこりの3人は3台目の台車に荷物を積む。 ... のようすれば無駄な仕事がなくなります。

関連するQ&A

  • 加重平均距離の計算方法がわかりません

    仕事でこまってますので、よろしくお願いいたします。 あるトラックが、各場所の荷物を集めて、帰ってきたときの加重平均距離を算出したいのですが、数学が苦手でまったく計算式が頭に浮かびません。 a地点--b地点--出発点--c地点--d地点--e地点 |----Akm---|----Ekm-------| -----|-Bkm-|----Dkm--| ----------|-Ckm-| 運搬距離に重みをつけて、平均距離をだしたいので よろしく、ご指導のほど、お願いいたします。<m(__)m>

  • 速度を求める問題です

    A地点からB地点を経由してC地点に行くルートとD地点に行くルートがある. A地点からB地点までの距離をL1,B地点からC地点までの距離をL2,B地点からD地点までの距離をL3とする. A地点からB地点までの所要時間をT1,B地点からC地点までの所要時間をT2,B地点からD地点までの所要時間をT3とする. A地点からC地点までのルートとA地点からD地点までのルート,どちらもA地点からB地点までの平均移動速度V1は等しいが,B地点からC地点までの平均移動速度V2とB地点からD地点までの平均移動速度V3は異なる速度である. 距離L1,L2,L3は既知.A地点からC地点までの所要時間(T1+T2),A地点からD地点までの所要時間(T1+T3),B地点からC地点までの所要時間とB地点からD地点までの所要時間の差(T2-T3)は既知であるがT1,T2,T3それぞれの値は不明. 上記の条件で,T2の時間を知りえることは可能でしょうか?

  • この計算を効率よく解くには・・・

    この計算を効率よく解くにはどうやって 計算していくのがベストでしょうか? いかに速く・・・。 a+2a+c+2d=3 6a+9b+6c+9d=4 3a+6b+5c+10d=5 6a+9b+10c+15d=6 未知数a,b,c,dの値を求める計算です。 自分も計算はできて、答えまで出せたのですが、 なんだか効率が悪そうだったので・・・

  • 配列を用いたC言語プログラミングについて

    以下のルンゲクッタ法を用いたプログラムに配列などを使いさらに短くしたいのですが どのような方法が有りますか? #include <stdio.h> #include <math.h> double f1(double t1,double w,double x,double y,double z); double f2(double t1,double w,double x,double y,double z); double f3(double t1,double w,double x,double y,double z); double f4(double t1,double w,double x,double y,double z); //箱Aの関数 double g1(double t1,double a,double b,double c,double d); double g2(double t1,double a,double b,double c,double d); double g3(double t1,double a,double b,double c,double d); double g4(double t1,double a,double b,double c,double d); //箱Bの関数 int main(void) { double t1,w,x,y,z,a,b,c,d,dt,t1max,t2max,lam,gam,lat,dw,dx,dy,dz,da,db,dc,dd ; double k1[4],k2[4],k3[4],k4[4],l1[4],l2[4],l3[4],l4[4] ; ///宣言 t1 = 0.0; dt = 0.3; t1max = 40.0; //時間初期値 w = 200.0; x = 40.0; y = 30.0; z = 30.0; ///箱A初期値(w:感受性人口、x:潜伏人口、y:感染人口、z:隔離人口) a = 20.0; b = 8.0; c = 12.0; d = 10.0; ///箱B初期値(a:感受性人口、b:潜伏人口、c:感染人口,d:隔離人口) for(t1=0.0;t1<=t1max;t1+=dt) { k1[0]=dt*f1(t1,w,x,y,z); k1[1]=dt*f2(t1,w,x,y,z); k1[2]=dt*f3(t1,w,x,y,z); k1[3]=dt*f4(t1,w,x,y,z); k2[0]=dt*f1(t1+dt/2.0,w+k1[0]/2.0,x+k1[1]/2.0,y+k1[2]/2.0,z+k1[3]/2.0); k2[1]=dt*f2(t1+dt/2.0,w+k1[0]/2.0,x+k1[1]/2.0,y+k1[2]/2.0,z+k1[3]/2.0); k2[2]=dt*f3(t1+dt/2.0,w+k1[0]/2.0,x+k1[1]/2.0,y+k1[2]/2.0,z+k1[3]/2.0); k2[3]=dt*f4(t1+dt/2.0,w+k1[0]/2.0,x+k1[1]/2.0,y+k1[2]/2.0,z+k1[3]/2.0); k3[0]=dt*f1(t1+dt/2.0,w+k2[0]/2.0,x+k2[1]/2.0,y+k2[2]/2.0,z+k2[3]/2.0); k3[1]=dt*f2(t1+dt/2.0,w+k2[0]/2.0,x+k2[1]/2.0,y+k2[2]/2.0,z+k2[3]/2.0); k3[2]=dt*f3(t1+dt/2.0,w+k2[0]/2.0,x+k2[1]/2.0,y+k2[2]/2.0,z+k2[3]/2.0); k3[3]=dt*f4(t1+dt/2.0,w+k2[0]/2.0,x+k2[1]/2.0,y+k2[2]/2.0,z+k2[3]/2.0); k4[0]=dt*f1(t1+dt,w+k3[0],x+k3[1],y+k3[2],z+k3[3]); k4[1]=dt*f2(t1+dt,w+k3[0],x+k3[1],y+k3[2],z+k3[3]); k4[2]=dt*f3(t1+dt,w+k3[0],x+k3[1],y+k3[2],z+k3[3]); k4[3]=dt*f4(t1+dt,w+k3[0],x+k3[1],y+k3[2],z+k3[3]); ///箱Aルンゲクッタ l1[0]=dt*g1(t1,a,b,c,d); l1[1]=dt*g2(t1,a,b,c,d); l1[2]=dt*g3(t1,a,b,c,d); l1[3]=dt*g4(t1,a,b,c,d); l2[0]=dt*g1(t1+dt/2.0,a+l1[0]/2.0,b+l1[1]/2.0,c+l1[2]/2.0,d+l1[3]/2.0); l2[1]=dt*g2(t1+dt/2.0,a+l1[0]/2.0,b+l1[1]/2.0,c+l1[2]/2.0,d+l1[3]/2.0); l2[2]=dt*g3(t1+dt/2.0,a+l1[0]/2.0,b+l1[1]/2.0,c+l1[2]/2.0,d+l1[3]/2.0); l2[3]=dt*g4(t1+dt/2.0,a+l1[0]/2.0,b+l1[1]/2.0,c+l1[2]/2.0,d+l1[3]/2.0); l3[0]=dt*g1(t1+dt/2.0,a+l2[0]/2.0,b+l2[1]/2.0,c+l2[2]/2.0,d+l2[3]/2.0); l3[1]=dt*g2(t1+dt/2.0,a+l2[0]/2.0,b+l2[1]/2.0,c+l2[2]/2.0,d+l2[3]/2.0); l3[2]=dt*g3(t1+dt/2.0,a+l2[0]/2.0,b+l2[1]/2.0,c+l2[2]/2.0,d+l2[3]/2.0); l3[3]=dt*g4(t1+dt/2.0,a+l2[0]/2.0,b+l2[1]/2.0,c+l2[2]/2.0,d+l2[3]/2.0); l4[0]=dt*g1(t1+dt,a+l3[0],b+l3[1],c+l3[2],d+l3[3]); l4[1]=dt*g2(t1+dt,a+l3[0],b+l3[1],c+l3[2],d+l3[3]); l4[2]=dt*g3(t1+dt,a+l3[0],b+l3[1],c+l3[2],d+l3[3]); l4[3]=dt*g4(t1+dt,a+l3[0],b+l3[1],c+l3[2],d+l3[3]); ///箱Bルンゲクッタ w=w+((k1[0]+2.0*k2[0]+2.0*k3[0]+k4[0])/6.0); x=x+((k1[1]+2.0*k2[1]+2.0*k3[1]+k4[1])/6.0); y=y+((k1[2]+2.0*k2[2]+2.0*k3[2]+k4[2])/6.0); z=z+((k1[3]+2.0*k2[3]+2.0*k3[3]+k4[3])/6.0); a=a+((l1[0]+2.0*l2[0]+2.0*l3[0]+l4[0])/6.0); b=b+((l1[1]+2.0*l2[1]+2.0*l3[1]+l4[1])/6.0); c=c+((l1[2]+2.0*l2[2]+2.0*l3[2]+l4[2])/6.0); d=d+((l1[3]+2.0*l2[3]+2.0*l3[3]+l4[3])/6.0); } return 0; }

  • 2つの計算式をつなげて再度計算したい

    A1 8000、 B1 48780、 C1 32520 のデータで 2つの式があり少ない方の答えに3/5を加えて一つの関数にしたいです 4つの式はD1,E1 で計算する F1 に小さい方を表示して G1で再度計算 A1---------B1---------C1---------D1---------E1---------F1-------G1 8000 --- 48780 --- 32520 --- 7592 --- 1706 --- 7592 --- 4555 8,000*10%+8,000*(90%-5%*1.021)=7,592  ------D1に格納 8,000*10%+(48,780+32,520)*20%=17,060   ------E1に格納 MIN(D1:E1) -----------F1に格納 7592*3/5=4,555 -------G1に格納(答え) 1つにするのは難しいのでどなたかおねがいします

  • エクセルで優先的に表示

    いつもご丁寧に教えていただき本当に感謝しております。 また行き詰ってしまったのでお分かりになる方、よろしくお願いします。 まず、L1~L5に商品コードとして“1~5”、M1~M5に商品名として“花1~花5”の表があります。 C2に商品コードを入力するとD2に商品名がでるように、D2に=VLOOKUP(C2,$L$1:$M$5,2,FALSE)と関数を入れてます。E2には“×”or“空白”が入ります。 同様にF2に商品コード、G2に商品名がでるようにG2に=IF(F2="","",VLOOKUP(F2,$L$1:$M$5,2,FALSE))といれ、もう1つ同様に、 I2に商品コード、J2に商品名がでるようにIFとVLOOKUP関数を入れてます。H2とK2には“×”or“空白”が入ります。 この商品コードの入力はC2→F2→I2の順に入力していき、F2からやI2からの途中入力はないものとします。 ・・・・で,A2とB2の商品名を下記の例のように表示させるにはどうしたらいいですか? 例)D2に商品名がある場合→A2にD2の商品名、B2は空白 例)D2とG2に商品名がある場合→A2にD2の商品名、B2にG2の商品名 例)D2に商品名があるが、E2に“×”、G2に商品名がある場合→A2にG2の商品名、B2は空白 例)D2、G2、J2に商品名があるが、E2、H2に“×”がある場合→A2にJ2の商品番号、B2は空白 わかりにくい説明で申し訳ございません。

  • エクセルの計算式について

          A     B      C      D       E 1     -      -     #DIV/0!     -     #DIV/0! 2     -      -     #DIV/0!     -     #DIV/0! 3     -      -     #DIV/0!     -     #DIV/0! A1とB1 は整数値 C1には、=ROUNDDOWN((A1-B1)/A1,4) D1には、A1-B1 E1には、=ROUNDDOWN(IF((A1-B1)/A1>25%,(A1-B1)/0.35,0)+IF((A1-B1)/A1=25%,(A1-B1)/0.35,0),-3) が、2行目・3行目にも設定されている時  例えば、G1 のセルに E列の合計 SUM(E1:E3)を求めたいのですが、A1~B1 に整数が入ってないと(例えば、 0 の時)… G1 が、#DIV/0! となります。A1 B1 にだけ整数が入っていて、A2 B2 が 0 場合の、E列の合計が G1 に入るようにする方法について知りたいのですが…教えていただきたく、よろしくお願いいたします。

  • エクセルでデータの抽出する際に困っています

    エクセルで特定の行のデータを抽出する方法を教えてください。 抽出方法を以下に示します。     A   B   C   D   E   F   G   ---------------------------------- 1l  10   11   0   0   0   0   0 2l  12   13   0   0   0   0   0 3l  14   15   1   2   3   4   5 4l  16   17   0   0   0   0   0 5l  18   19   0   0   0   0   0 6l  20   21   6   7   8   9   10 7l  22   23   0   0   0   0   0 というような感じのエクセルデータに対して、     A   B   C   D   E   F   G    ---------------------------------- 1l  14   15   1   2   3   4   5 2l  20   21   6   7   8   9   10 というように、C~G列が0でない行のA~Gのデータを別シートに抽出したいのですが、 簡単な方法があれば教えていただきたいです。 よろしくお願いします。

  • 高校物理Iの電位です。

    画像のA地点での電位と、B地点での電位はそれぞれE地点とF地点からの距離が等しいから全く同じで、A地点での電位とC地点での電位はそれぞれE地点とF地点からの距離が等しくないから、 同じではなく、 A地点での電位とD地点での電位も同じですが、なぜそうなるのかがわかりません。 ご回答よろしくお願いいたします。

  • EXCELのIF関数の入れ子について

    すみませんよろしくお願いします。 EXCELでセル(A1)~(L1)までに不特定の文字列が入力されており、(M1)に「もし(L1)が入力されていたら(L1)の値を表示、もし(L1)がブランクなら(K1)の値を表示、もし(K1)がブランクなら(J1)の値を表示、もし(J1)がブランクなら(I1)の値を表示・・・・」といった具合で関数を作成したいのです。また、(A1)~(L1)のセルで穴あき状態で入力されていた場合は最も(L1)寄りのセルを表示させたいです。 EXCEL2003のIF関数だと、 =IF(L2="",IF(K2="",IF(J2="",IF(I2="",IF(H2="",IF(G2="",IF(F2="",IF(E2="","",E2),F2),G2),H2),I2),J2),K2),L2) で最後の(A1)までの入れ子を作ることができせん。 EXCEL2007を使用すると、 =IF(L2="",IF(K2="",IF(J2="",IF(I2="",IF(H2="",IF(G2="",IF(F2="",IF(E2="",IF(D2="",IF(C2="",IF(B2="",IF(A2="","",A2),B2),C2),D2),E2),F2),G2),H2),I2),J2),K2),L2) と作成できます。 EXCEL2003で作成するいい方法はありますでしょうか? ご指南の程よろしくお願いします。