基本情報技術者 2013年 秋期 午前(科目A) 問53
問題文
図は作業A〜Eで構成されるプロジェクトのアローダイアグラムである。全ての作業を1人で実施する予定だったが、2日目から6日目までの5日間は、別の1人が手伝うことになった。手伝いがない場合と比較し、開始から終了までの日数は最大で何日短くなるか。ここで、一つの作業を2人で同時には行えないが、他者から引き継ぐことはできる。また、引継ぎによる作業日数の増加はないものとする。

選択肢
ア:3(正解)
イ:4
ウ:5
エ:6
🔒 解説は解答すると表示されます
作業並列化による短縮【午前解説】
正解の理由
1人で実施した場合、全作業の合計日数は 日となり、これが最短(並列実行できないため全て順次行う必要がある)です。一方、2日目〜6日目の5日間だけもう1人が加わると、並列可能な作業(AとB、そしてC終了後のDとE)を併用して進められます。ただし「一つの作業を同時に2人で行えない」ため A は最短でも3日を要し(引継ぎは可だが同時作業不可)、A 完了は日3終わりになります。これにより C は日4に開始、D/E は日5に開始できます。助っ人は日5・6の2日間だけ D と E の並行処理に寄与できるため、全体は日9終わりに完了します。したがって最短化は 日で、選択肢アが正しいです。
解法ステップ
- ネットワークと所要日数の整理
- A: 3日、B: 1日、C: 1日、D: 3日、E: 4日
- A と B は並列可能(ただしダミーで N2 は両方の完了を待つ)。C は A,B の両方完了後、D/E は C 完了後に並列可能。
- 助っ人がいない場合(単独作業者)
- 同時実行不可のため全作業を順次実行 → 合計 日。
- 助っ人がいる場合(助っ人は日2〜6の5日間)
- 日1: 作業者が A の 1日目(A 残り2日)。
- 日2: 作業者が A の2日目、助っ人が B(B 完了)。
- 日3: 作業者が A の3日目(A 完了)、助っ人は待機(C は A 完了待ち)。
- 日4: C を1日で実施(どちらか一方が担当、C 完了)。
- 日5–6(助っ人在席): D(3日) と E(4日) を並列で着手(例えば作業者が D、助っ人が E)。→ それぞれ日5・6で進捗。
- 日7以降(助っ人離脱): 残った作業を単独で完了(D は残1日、E は残2日 → 合計2〜3日だが並列不可のため合計で日7〜9で完了)。
- 結果、完了は日9終わり。
- 短縮日数 = 12 − 9 = 3日。
(重要)A は所要3日のため最短で日3終わりに完了する点、ここを日2完了と誤らないこと。
選択肢別の誤答解説
- ア(3): 正しい。上のスケジュールで 12→9 日となり短縮は 3 日。
- イ(4): D/E の処理時間合計や助っ人の在席期間を過大評価してしまう誤り。助っ人は日5・6の2日間しか D/E の並列進捗に寄与できず、E の4日全てを並列で処理できないため短縮は4日にならない。
- ウ(5): A の並列化(2人で同時に作業して短縮)を誤って許すと出やすい数字。だが問題文は同時作業を禁止しているため A を2日で終えられず、さらに C 後の E を助っ人が4日間全部サポートできない点を見落としている。
- エ(6): 全体を過度に楽観視(助っ人の貢献で D/E が完全に短縮される等)している誤り。助っ人在席は5日間だが前半は A の継続で有効活用できない時間帯があり、最大短縮は6日にはならない。
よくある誤解
- 「A を助っ人と2人で同時に行えば短縮できる」 → 同時作業禁止のため誤り。引継ぎは可でも合計日数は変わらず A は3日必要。
- 「B は A 完了後でないと着手できない」と勘違いする → B は開始ノードから実行可能。ダミー矢印は N2(B の到達ノード)が A の完了も待つことを示すのみで、B 自体の開始を妨げない。
- 日付カウントの端数処理ミス(A を日2終わりに完了した扱いにするなど) → 所要日数は整数日で累積し、A=3日は日1〜3で完了と数える。
補足コラム
この問題は「ネットワーク図の依存関係」と「限られた期間のリソース追加(助っ人)」を組み合わせた典型的なリソース制約スケジューリング問題です。ポイントは
- 作業の最短所要日数は「各作業個別の所要日数」で決まり、同一作業に複数人同時投入できない場合はその作業の期間を短縮できないこと、
- 並列可能な作業群(この例では A と B、C 後の D と E)をいかに追加リソースで重ねられるかが総工期短縮の鍵、という点です。
応用としてガントチャートを使うと、各日の作業割り当て(誰がどれを担当するか)を視覚化でき、助っ人在籍期間の有効活用が一目で分かります。
FAQ
Q. 助っ人が日1から来ていたら短縮はどうなるか?
A. 日1から助っ人がいると A と B を完全並列化できるため、A は日1〜3、B は日1のみで完了(Bは日1終わり)。C 開始は日4、D/E は日5開始で助っ人が日1〜6いる仮定なら D/E の完全並列化が長く効くためさらに短縮できます(具体は助っ人在籍日数で変動)。
A. 日1から助っ人がいると A と B を完全並列化できるため、A は日1〜3、B は日1のみで完了(Bは日1終わり)。C 開始は日4、D/E は日5開始で助っ人が日1〜6いる仮定なら D/E の完全並列化が長く効くためさらに短縮できます(具体は助っ人在籍日数で変動)。
Q. 引継ぎに時間がかかる場合は?
A. 引継ぎ時間が生じると合計工数が増え、助っ人の有効貢献が減るため短縮量は小さくなります。モデル化には引継ぎの固定時間を各分割点に付加してください。
A. 引継ぎ時間が生じると合計工数が増え、助っ人の有効貢献が減るため短縮量は小さくなります。モデル化には引継ぎの固定時間を各分割点に付加してください。
関連キーワード: PERT、クリティカルパス、リソース制約、並列処理、ガントチャート、スケジューリング

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

