pert/cpm. กับการวางแผนและควบค ุมงานpert 3....

22
สมเกียรติ จงประสิทธิ์พร sj[email protected]h อาจารยประจําภาควิชาเทคโนโลยีขนถายวัสคณะวิศวกรรมศาสตสถาบันเทคโนโลยีพระจอมเกลาพระนครเหนื1.CPM 2. PERT 3. ประ โยชน ของ CPM และ PERT 4. ขอ จํากัด ของ CPM และ PERT 5. ตัว อยาง การ หา สาย งาน วิกฤติ ของ เทคนิค วิธี CPM และ PERT ดวย โปรแกรม คอมพิวเตอร สรุป ในโครงการตาง ไมวาจะเปนโครงการขนาดเล็กหรือขนาดใหญที่มีความสลับซับซอน เชนการกอสรางอาคาร บานเรือน การสรางเขื่อน การสรางทาง หรือการสรางเครื่องจักรกลตาง เพื่อใหการดําเนินงานตามโครงการสําเร็จลุ ลวงไปดวยดี จะสนองตอบความตองการนี้ไดคือ แผนงาน (Planing) งานที่ตองการใหดําเนินการใหเสร็จสิ้นตาม ระยะเวลา จึงตองมีการวางแผนงานลวงหนา แผนงานที่ดีจะทําใหการดําเนินงานตามโครงการเปนไปอยางราบรื่น และประหยัด ผลงานจะเปนตามกําหนดและเปาหมายที่วางไว ดังนั้น เมื่อวางแผนไวแลวจะตองดําเนินงานตามแผน งาน ที่วางไวอยางเครงครัด แตบางครั้งอาจมีความจําเปนที่จะตองมีการปรับแผนที่วางไวเนื่องจากการเปลี่ยนแปลง บางประการ ของสิ่งแวดลอม เมื่อปรับแผนแลวสิ่งที่ตองคํานึงถึงคือ การกําหนดระยะเวลาของานที่เสร็จจะตองไม เปลี่ยนแปลง ถาโครงการใดไมมีการวางแผนการทํางานอยางรอบคอบจะทําใหสิ้นเปลืองคาใชจายบางอยางโดยไม จําเปน เชน เกิดปญหาการสั่งวัสดุมาไมทันตามกําหนดทําใหงานตองหยุดชะงักไป คนงานตองวางงาน ผลที่ตามมา ก็คือทําใหงานไมเสร็จตามกําหนด ตองถูกปรับอาจทําใหงานที่รับเหมาไวตองขาดทุน เปนตน อดีตที่ผานมาการวางแผนและควบคุมการทํางานมักอาศัยความนึกคิดและความจําของผูบริหาร ซึ่งอาจใชได กับโครงการขนาดเล็กที่ไมซับซอนมากนัก แตถางานที่มีความซับซอนมาก อาจมีปญหาคือ อาจหลงลืมขั้นตอนใด ขั้นตอนหนึ่งของแผนงาน หรือผูบริหารอาจเปลี่ยนแปลงแผนแลวลืมบอกผูรวมงานหรือผูใตบังคับบัญชา จึงทําให เกิดปญหาตาง ตามมาจนอาจเปนสาเหตุทําใหงานลาชากวากําหนด และในที่สุดก็ทําใหงานทั้งหมดในโครงการลา ชาไปดวย ตอมามีการพัฒนามาใชวิธีการวางแผนโดยการเขียนเปนเสนตรงในแนวระนาบเพื่อใชแทนระยะเวลาและ กําหนดเวลาเริ่มและเสร็จงาน ของโครงการ ซึ่งเรียกวาแผนภูมิเสนหรือแทงควบคุมงาน (Gantt Chart) เสนตรงใน แผนภูมิจะใชแทนงานตาง ซึ่งมีการกําหนดระยะเวลาเริ่มตนและสิ้นสุดของงานไว ถึงกระนั้นแผนภูมินี้ก็ยังมีขอบก พรองอีกตรงที่ไมสามารถแสดง ความสัมพันธของงานยอยตาง ในโครงการได จึงมีการปรับปรุงการบริหารงานใหม โดยใชเทคนิคของ CPM Pert หรือ Gert เปนตน ในเทคนิควิธีการบริหารงานสมัยใหมที่มีผูนํามาใชและเปนที่รูจักกัน อยางแพรหลายมีอยูดวยกัน 2 วิธี คือ CPM และ Pert Critical Path Method (CPM) และ Project Evaluation and Review Technique (PERT) วิธีทั้ง 2 ถูกพัฒนาขึ้นมาใชในเวลาที่ใกลเคียงกันโดยบริษัท 2 บริษัทในสหรัฐอเมริกา ทั้ง Pert และ CPM ถูกพัฒนาขึ้นจากหลักการบางอยางของ Gantt Charts ซึ่ง H.L. Gantt เปนผูคิดคนขึ้นมาใน ระหวางสงครามโลกครั้งที1 ซึ่งเปนวิธีที่งายและมีประโยชนตอการวางแผน และควบคุมโครงการอยางตอเนื่อง และ ในปจจุบันนี้ถาโครงการใดมีงานยอยไมมากนักและไมซับซอนก็ยังคงใช Gantt charts ในการวางแผนและควบคุม งานอยู โดยควบคุมระยะเวลาเริ่มตนและเวลาสิ้นสุดของงานตาง แต Gantt charts ก็ยังมีจุดออนอยูอีกมาก คือ 1. มิไดแสดงถึงความสัมพันธระหวางงานแตละงาน 2. ไมสะดวกในการแกไขถามีการเปลี่ยนแปลงแผนงานยอย 3. มิไดแสดงใหเห็นวามีงานใดบางที่ยอมใหลาชาไดโดยไมกระทบกระเทือนวันเสร็จของโครงการ เปนเหตุให ไมสามารถใชทรัพยากรที่มีอยูอยางจํากัดไดดีเทาที่ควร 4. ไมทราบวางานใดเปนงานวิกฤติ (Critical work) ทั้ง CPM และ Pert แมวาจะถูกพัฒนามาจากหนวยงานที่แตกตางกัน แตก็เปนวิธีการที่เหมือนกันคือการควบ คุมโครงการดวยการกําหนดเวลาสําหรับการทําโครงการใหเสร็จสิ้นภายในระยะ เวลาที่กําหนด มีขอแตกตางกันอยู เพียงวาขอมูลที่ตองใชในการวิเคราะหโครงการเพื่อการวางแผนนั้น เปนขอมูลประเภทใดใน 2 ประเภท คือขอมูล ประเภทแนนอน และขอมูลประเภทไมแนนอน ถาสามารถกําหนดเวลาทํางานของงานแตละงานได อยางแนนอน (Deterministic) เราเรียกวิธีการที่ใชเครื่องมือประเภทนี้วา CPM แตถาขอมูลของเวลาการทํางานของแตละงานไม คอยแนนอน โดยที่เพียงแตสามารถกําหนดหาความเปนไปไดของเวลาเทานั้น (Probabilistic time) เราเรียกวิธีการ นี้วา PERT Pert/Cpm. กับการวางแผนและควบคุมงาน Page 1 of 22 Pert/Cpm. กับการวางแผนและควบคุมงาน 16/8/2549 http://202.28.17.1/article/atc34/atc00115.html

Upload: others

Post on 27-Jan-2021

11 views

Category:

Documents


0 download

TRANSCRIPT

  • สมเกียรติ จงประสิทธิ์พร [email protected]อาจารยประจําภาควิชาเทคโนโลยีขนถายวัสด

    คณะวิศวกรรมศาสตรสถาบันเทคโนโลยีพระจอมเกลาพระนครเหนือ

    1.CPM 2. PERT 3. ประโยชนของ CPM และ PERT 4. ขอจํากัดของ CPM และ PERT 5. ตัวอยางการหาสายงานวิกฤติของเทคนิควิธี CPM และ PERT ดวยโปรแกรมคอมพิวเตอร สรุป

    ในโครงการตาง ๆ ไมวาจะเปนโครงการขนาดเล็กหรือขนาดใหญที่มีความสลับซับซอน เชนการกอสรางอาคารบานเรือน การสรางเขื่อน การสรางทาง หรือการสรางเครื่องจักรกลตาง ๆ เพื่อใหการดําเนินงานตามโครงการสําเร็จลุลวงไปดวยดี จะสนองตอบความตองการนี้ไดคือ แผนงาน (Planing) งานที่ตองการใหดําเนินการใหเสร็จส้ินตามระยะเวลา จึงตองมีการวางแผนงานลวงหนา แผนงานที่ดีจะทําใหการดําเนินงานตามโครงการเปนไปอยางราบร่ืนและประหยัด ผลงานจะเปนตามกําหนดและเปาหมายที่วางไว ดังน้ัน เมื่อวางแผนไวแลวจะตองดําเนินงานตามแผนงาน ที่วางไวอยางเครงครัด แตบางคร้ังอาจมีความจําเปนที่จะตองมีการปรับแผนที่วางไวเน่ืองจากการเปลี่ยนแปลงบางประการ ของส่ิงแวดลอม เม่ือปรับแผนแลวส่ิงที่ตองคํานึงถึงคือ การกําหนดระยะเวลาของานที่เสร็จจะตองไมเปลี่ยนแปลง ถาโครงการใดไมมีการวางแผนการทํางานอยางรอบคอบจะทําใหส้ินเปลืองคาใชจายบางอยางโดยไมจําเปน เชน เกิดปญหาการสั่งวัสดุมาไมทันตามกําหนดทําใหงานตองหยุดชะงักไป คนงานตองวางงาน ผลที่ตามมาก็คือทําใหงานไมเสร็จตามกําหนด ตองถูกปรับอาจทําใหงานที่รับเหมาไวตองขาดทุน เปนตน

    อดีตที่ผานมาการวางแผนและควบคุมการทํางานมักอาศัยความนึกคิดและความจําของผูบริหาร ซ่ึงอาจใชไดกับโครงการขนาดเล็กที่ไมซับซอนมากนัก แตถางานที่มีความซับซอนมาก ๆ อาจมีปญหาคือ อาจหลงลืมข้ันตอนใดข้ันตอนหนึ่งของแผนงาน หรือผูบริหารอาจเปลี่ยนแปลงแผนแลวลืมบอกผูรวมงานหรือผูใตบังคับบัญชา จึงทําใหเกิดปญหาตาง ๆ ตามมาจนอาจเปนสาเหตุทําใหงานลาชากวากําหนด และในที่สุดก็ทําใหงานทั้งหมดในโครงการลาชาไปดวย ตอมามีการพัฒนามาใชวิธีการวางแผนโดยการเขียนเปนเสนตรงในแนวระนาบเพื่อใชแทนระยะเวลาและกําหนดเวลาเริ่มและเสร็จงาน ของโครงการ ซึ่งเรียกวาแผนภูมิเสนหรือแทงควบคุมงาน (Gantt Chart) เสนตรงในแผนภูมิจะใชแทนงานตาง ๆ ซ่ึงมีการกําหนดระยะเวลาเริ่มตนและสิ้นสุดของงานไว ถึงกระน้ันแผนภูมิน้ีก็ยังมีขอบกพรองอีกตรงท่ีไมสามารถแสดง ความสัมพันธของงานยอยตาง ๆ ในโครงการได จึงมีการปรับปรุงการบริหารงานใหมโดยใชเทคนิคของ CPM Pert หรือ Gert เปนตน ในเทคนิควิธีการบริหารงานสมัยใหมที่มีผูนํามาใชและเปนที่รูจักกันอยางแพรหลายมีอยูดวยกัน 2 วิธี คือ CPM และ Pert Critical Path Method (CPM) และ Project Evaluation and Review Technique (PERT) วิธีทั้ง 2 ถูกพัฒนาขึ้นมาใชในเวลาที่ใกลเคียงกันโดยบริษัท 2 บริษัทในสหรัฐอเมริกาทั้ง Pert และ CPM ถูกพัฒนาขึ้นจากหลักการบางอยางของ Gantt Charts ซ่ึง H.L. Gantt เปนผูคิดคนข้ึนมาในระหวางสงครามโลกคร้ังที่ 1 ซ่ึงเปนวิธีที่งายและมีประโยชนตอการวางแผน และควบคุมโครงการอยางตอเน่ือง และในปจจุบันน้ีถาโครงการใดมีงานยอยไมมากนักและไมซับซอนก็ยังคงใช Gantt charts ในการวางแผนและควบคุมงานอยู โดยควบคุมระยะเวลาเริ่มตนและเวลาสิ้นสุดของงานตาง ๆ แต Gantt charts ก็ยังมีจุดออนอยูอีกมาก คือ

    1. มิไดแสดงถึงความสัมพันธระหวางงานแตละงาน 2. ไมสะดวกในการแกไขถามีการเปลี่ยนแปลงแผนงานยอย ๆ 3. มิไดแสดงใหเห็นวามีงานใดบางที่ยอมใหลาชาไดโดยไมกระทบกระเทือนวันเสร็จของโครงการ เปนเหตุให

    ไมสามารถใชทรัพยากรที่มีอยูอยางจํากัดไดดีเทาที่ควร 4. ไมทราบวางานใดเปนงานวิกฤติ (Critical work) ทั้ง CPM และ Pert แมวาจะถูกพัฒนามาจากหนวยงานที่แตกตางกัน แตก็เปนวิธีการที่เหมือนกันคือการควบ

    คุมโครงการดวยการกําหนดเวลาสําหรับการทําโครงการใหเสร็จส้ินภายในระยะ เวลาที่กําหนด มีขอแตกตางกันอยูเพียงวาขอมูลที่ตองใชในการวิเคราะหโครงการเพื่อการวางแผนนั้น ๆ เปนขอมูลประเภทใดใน 2 ประเภท คือขอมูลประเภทแนนอน และขอมูลประเภทไมแนนอน ถาสามารถกําหนดเวลาทํางานของงานแตละงานได อยางแนนอน (Deterministic) เราเรียกวิธีการที่ใชเครื่องมือประเภทน้ีวา CPM แตถาขอมูลของเวลาการทํางานของแตละงานไม คอยแนนอน โดยที่เพียงแตสามารถกําหนดหาความเปนไปไดของเวลาเทาน้ัน (Probabilistic time) เราเรียกวิธีการน้ีวา PERT

    Pert/Cpm. กับการวางแผนและควบคุมงาน

    Page 1 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 1.CPM

    เปนเทคนิคที่นิยมใชกันมากในการจัดลําดับข้ันตอนการทํางานของโครงการใหญ ๆ ที่ซับซอนที่ประกอบดวยโครงการยอย (activities) หลายชนิด ในการใชเทคนิค CPM เราจะตองแยกโครงการออกเปนสวนยอย ๆ หลาย ๆ สวน และแตละสวนเราจะตองทราบระยะเวลาที่ตองใชในการทําใหสําเร็จวาเทาใด นอกจากนี้ยังตองทราบลําดับที่กอน-หลังที่สามารถจะ ลงมือทําได จากขอมูลเหลาน้ีจะนําไปสรางแผนผังโครงขาย (network) เพื่อใชแทนโครงการดังกลาวได (ดังรูปที่ 1) ซ่ึงจะพบวาเสนที่มีลูกศร (arc) แตละเสนจะแทนโครงการยอยหนึ่งโครงการ และลูกศรแสดงทิศทางของโครงการ เสนลูกศร (arc) แตละเสนจะถูกประกบดวยปุม 2 ปุม (nodes) เชน arc A ถูกประกบดวยปุม (node) 1 และ 2 โดยมีทิศทางจาก 1 ไป 2

    รูปท่ี 1 ตัวอยางแผนผังโครงขาย (network)

    จุดประสงคของการใชเทคนิคน้ีก็เพื่อสรางแผนผังเวลาทํางานที่แสดงใหเห็นจุดเริ่มตนและส้ินสุดของการทํางาน ของแตละโครงการยอยแตละโครงการ แสดงถึงโครงการใด ๆ จะเริ่มตนไดเมื่อใด และมีความสัมพันธของโครงการตาง ๆ กันอยางไร เมื่อเราสามารถสรางโครงขาย (network) จากโครงการยอย ๆ ทั้งหมดของโครงการใหญไดแลว เราสามารถกําหนดไดวาจะตองใชเวลาทํางานรวมทั้งส้ินเทาใด และงานใดเปนงานวิกฤติ (งานวิกฤติหมายความวาจะไมสามารถปรับเวลาเริ่มตนหรือส้ินสุดใหผิดไปจากแผนที่วางไวไดอีกเลย)

    2. PERT

    เปนเทคนิควิธีที่เราไมสามารถกําหนดเวลาของงานไดแนนอน โดยที่งานแตละงานมีรูปแบบความนาจะเปนไปได (Probabilistic model) ของเวลาทํางานที่แตกตางกัน การกําหนดและหารูปแบบความนาจะเปนไปไดของงานทุก ๆ งานมีความยุงยากและเสียเวลามาก การหาคากําหนดแทนความหมายของเวลาทํางานของแตละงานจากรูปแบบความนาจะเปน ของเวลาทํางานของแตละงานจึงเปนการสิ้นเปลืองและอาจจะไดผลไมคุมคา เพื่อใหสามารถกําหนดเวลาทํางานและหางานวิกฤติไดเร็ว และงายข้ึน จึงจําเปนตองใชวิธีตั้งสมมติฐานสําหรับรูปแบบความนาจะเปนของงานตาง ๆ จากคุณสมบัติพิเศษของรูปแบบความนาจะเปนซ่ึงมีการกระจายแบบเบตา (Beta distribution) คือ

    1. มี node เดียว หมายความวา การกระจายของขอมูลมีสวนของขอมูลที่มีความถี่สูงสุดเพียงคาเดียว 2. มีขอบเขตของขอมูลต่ําสุดและสูงสุด สําหรับงานตาง ๆ ในโครงงาน ซ่ึงเราไมสามารถกําหนดเวลาทํางานไดแนนอน เมื่อสมมติวางานเหลาน้ันมีรูป

    แบบการกระจาย แบบเบตา เราจะกําหนดหาคาเฉล่ียแทนการกําหนดเวลาทํางานซึ่งมีคาแปรเปลี่ยนแสดงความแปรเปลี่ยนของคาเฉล่ียน้ัน ๆ การกําหนดเวลาทํางานของงานก็จะใชวิธีประเมินเวลาทํางานของงานเปน 3 คา คือ

    1. เวลาของงานซึ่งจะเสร็จไดเร็วที่สุด (optimistic tiem estimate), A. 2. เวลาของงานซึ่งจะเสร็จไดชาที่สุด (pessimistic time estimate), B. 3. เวลาของงานซึ่งจะเสร็จไดโดยสวนมาก (most likely time estimate), M. เมื่อสามารถประเมินเวลาท้ัง 3 ลักษณะของงานตาง ๆ แลว ข้ันตอนตอไปจะเปนการหาคาเฉล่ีย (mean) และ

    คาแปรเปลี่ยน (variance) ซ่ึงจากคุณสมบัติการกระจายแบบเบตา มีสูตรการคํานวณดังน้ี

    ET = A+4M+B --------------------------------------------------(1)

    Page 2 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • จากคาเฉล่ียและคาแปรเปลี่ยนที่คํานวณไดนําไปใชในการหางานวิกฤติและสายงานวิกฤติตามวิธีการเดียวกับ CPM ตอไป และจากเวลางานวิกฤติที่คํานวณไดนําไปหาความนาจะเปนที่โครงการจะเสร็จตามกําหนดเวลาที่ตั้งไวดวยสูตร

    3. ประโยชนของ CPM และ PERT

    1.ข้ันตอนการวางแผนโดยใช CPM และ PERT ผูวางแผนและผูเกี่ยวของอื่น ๆ มีเวลาในการคาดคะเนถึงปญหาตาง ๆ ที่เกิดข้ึนในการปฏิบัติงาน และหาทางแกไขปญหาเหลาน้ันไวลวงหนา ตลอดจนมีเวลารวบรวมขอมูลและรายละเอียดตาง ๆ ที่เปนประโยชนในการวางแผนและบันทึกไวในรูปขอโครงขาย

    2.เมื่อบันทึกขอมูลและแผนการตาง ๆ ไวในรูปของโครงขายแลวผูวางแผนงานและผูเกี่ยวของไมจําเปนตองจดจํา และกังวลใจเกี่ยวกับการวางแผนอีกอาจใชเวลาเพื่อการปรับปรุงแกไขโครงขายใหดีย่ิงข้ีน

    3.ทําใหสามารถทราบจํานวนและชนิดของทรัพยากรตาง ๆ ที่ตองการใชตามระยะเวลาตั้งแตเริ่มโครงการ จนเสร็จส้ินโครงการ ทําใหผูรับผิดชอบโครงการสามารถทราบวาทรัพยากรตาง ๆ ที่มีอยูจะเพียงพอตอการดําเนินงานหรือไม

    4.CPM และ PERT มีระบบควบคุมและติดตามผลอยางมีประสิทธิภาพทุกคร้ังที่มีการปรับปรุงแกไข ก็จะทราบไดทันทีวาโครงการจะเสร็จตามกําหนดหรือไม หรือวาจะเสร็จเร็วข้ึนหรือชาไปจากกําหนดเดิมกี่วัน

    5.โครงการใหญ ๆ ที่มีจํานวนงานยอยมาก ๆ หลังจากทําการเขียนโครงขายและคํานวณวันที่แลวเสร็จของโครงการแลว ทําใหทราบสายงานวิกฤติของโครงขายซ่ึงเปนหัวใจของ CPM และ PERT เมื่อทราบสายงานวิกฤติแลวก็จะทราบวา งานวิกฤติประกอบดวยงานใดบาง

    6.เมื่อโครงการเสร็จส้ินแลว ทําใหสามารถทราบสถิติของงานแตละงานเกี่ยวกับจํานวนทรัพยากรตาง ๆ เวลาที่ใช เพื่อใชเปนขอมูลสนับสนุนในการวางแผนโครงการอื่น ๆ ตอไป

    4. ขอจํากัดของ CPM และ PERT

    1. เน่ืองจากทั้ง CPM และ PERT ตางก็ตองอาศัยการเขียนโครงขายในการวางแผนโครงการ ซึ่งการเขียนโครงขายใหถูกตองน้ันเปนเรื่องยุงยากและใชเวลามาก การกําหนดลําดับของงานและเวลาที่ใชในแตละงานในโครงการมัก จะเกิดขอผิดพลาดไดงายและเสมอ ๆ

    2. การประมาณเวลาที่ใชในการทํางานนั้นเปนเรื่องยุงยาก โดยเฉพาะกับวิธีการ PERT ซ่ึงตองประมาณเวลาถึง 3 คาดวยกัน

    3. ในข้ันตอนของการกําหนดเวลางานในโครงการ จะพบวางานที่ไมใชงานวิกฤติอาจกลายมาเปนงานวิกฤติในข้ัน ของการดําเนินการของโครงการได ทั้งน้ีเน่ืองมาจากผลของความไมแนนอนของสถานการณ ทําใหขอมูลที่ไดมาเดิมเปลี่ยนแปลงไป เชน ทําใหเวลาที่ใชในการปฏิบัติงานตองลาชาออกไป จํานวนทรัพยากรไมเปนไปตามที่คาดไว เปนตน

    4. ในการวิเคราะหโครงขายของการปฏิบัติงานมักจะสมมติวาทรัพยากรที่เปนปจจัยสําคัญในการดําเนินงานโครงการมีอยู อยางพรอมเพรียงตลอดเวลา แตในทางปฏิบัติและความเปนจริง จํานวนทรัพยากรมักไมสอดคลองกับ

    VT = --------------------------------------------------(2)

    ซ่ึง ET = เวลาเฉลี่ย (คาเฉล่ีย)VT = คาความแปรปรวนของเวลา (คาแปรเปลี่ยน)A = เวลาของงานซึ่งจะเสร็จไดเร็วสุดB = เวลาของงานซึ่งจะเสร็จไดชาที่สุดM = เวลาของงานซึ่งจะเสร็จไดโดยสวนมาก

    Z = -------------------------------------------(3)

    โดยที่ Z = คาตัวแปรสุมของการแจกแจงแบบปกติมาตรฐาน

    T = กําหนดเวลาที่ตั้งไววาโครงการจะเสร็จTcp = เวลาที่คาดวาโครงการจะเสร็จ หรือเวลาเฉลี่ยของสายงานวิกฤติ

    = คาเบี่ยงเบนมาตรฐานของเวลาเฉลี่ยของสายงานวิกฤติ ซึ่งหาไดจากสูตร

    =

    Page 3 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • ความตองการที่เกิดข้ึนในแตละชวงเวลา ทําใหขณะดําเนินการมักจะเกิดปญหาขึ้นอยูเสมอ จึงตองอาศัยการควบคุมและติดตามผลงานของผูควบคุมโครงการ จะตองคอยปรับจํานวนทรัพยากรใหเพียงพอตอความตองการของโครงการเสมอ

    5. ตัวอยางการหาสายงานวิกฤติของเทคนิควิธี CPM และ PERT ดวยโปรแกรมคอมพิวเตอร

    5.1 การคํานวณดวยวิธีของ CPM โปรแกรมสําหรับวิธี CPM น้ี สามารถรับจํานวนโครงการยอยไดสูงสุด 50 โครงการยอย และจุดวงกลม หรือ

    node ของเวลาเริ่มตนและเวลาสิ้นสุดของงาน รับไดสูงสุด 60 node การตั้งหมายเลข node ใหใชเลขตํ่าสําหรับจุดเริ่มตน และเลขสูงกวาสําหรับ node ส้ินสุดของแตละโครงการยอยเสมอ นอกจากนี้โครงการหรือแผนผังที่จะนํามาพิจารณา ตองมี node เริ่มตนและ node ส้ินสุดเพียงอยางละ 1 node เทาน้ัน

    ลําดับการปอนขอมูลและการทํางาน มีดังน้ี 1. ตองการใหแสดงรายละเอียดและแนะนําการปอนขอมูลหรือไม ถาตองการใหกดแปน Y 2. ช่ือของโครงการนี้ 3. จํานวนโครงการยอยทั้งหมดในแผนผัง (Network) ซ่ึงตองมีอยางนอย 2 โครงการยอยและมี ไดสูงสุด 50

    โครงการยอย 4. จํานวน node หรือจุดเริ่มตนและจุดส้ินสุดของแตละโครงการยอยทั้งหมด มีไดสูงสุด 60 node 5. วันที่เริ่มตนทําโครงการ ซึ่งกําหนดไดนอยสุดเทากับ 1 เทาน้ัน หรือกําหนดมากกวา 1 ก็ได 6. ตองการทราบจํานวนวัน ที่จะใหโครงการทําเสร็จตามที่กําหนดไวหรือไม โดยผูใชโปรแกรมเปนคนกําหนด

    เอง ถาตองการกดแปน Y 7. กําหนดจํานวนวัน ที่จะใหโครงการทําเสร็จตามกําหนด 8. ปอนขอมูลของโครงการยอยแตละโครงการ โดยผุใชจะตองปอนคาดังน้ี - เลขท่ี node เริ่มตนของโครงการยอย (node I) - เลขท่ี node ส้ินสุดของโครงการยอย (node J) - เวลาที่ใชทําโครงการยอย (Duration) ระหวาง node I-J จากนั้นเครื่องคอมพิวเตอรจะทําการประมวล เมื่อประมวลผลเสร็จแลวก็จะใหผูใชปอนคําส่ังตาง ๆ ถาเรายังไม

    ทราบวามีคําส่ังใดบาง ก็ใหพิมพคําวา HELP จากนั้นก็จะแสดงรายละเอียดของคําส่ังใหดูทางหนาจอภาพรายละเอียด ของคําส่ังมีดังน้ี

    - HELP แสดงรายละเอียดของขอความและคําส่ังที่ใช - TABLE แสดงตารางตามกําหนดการ ตามที่ผูใชจัดลําดับไว - SORT เปนการจัดลําดับของแตละ ROW ซ่ึงจะจัดเรียงจากนอยไปหามาก โดยเครื่องจะใหผูใช ปอนเลขที่

    ของ COLUMN ที่จะใชอางอิงในการเรียง ซ่ึงมีอยูทั้งหมด 10 COLUMNS การปอน เลขที่ COLUMN ตองปอนคร้ังละ 2 COLUMNS

    - BAR แสดงรูป Bar Chart ใหทราบถึงเวลาเริ่มตนเร็วสุด เวลาสิ้นสุดเร็วสุด และเวลาที่ใชในแต ละโครงการยอย

    - RESTART เปนการเริ่มตนใหมในการแกปญหาหรือปอนขอมูลใหมน้ันเอง - EXIT ออกจากโปรแกรม CPM ที่กําลังใชงานอยู และจะกลับไปโปรแกรม MENU เพื่อใหผูใชโปรแกรมได

    เลือกใชงานโปรแกรมอื่น ๆ ตอไป

    ตัวอยางการปอนขอมูล และการคํานวณ

    Page 4 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • รูปท่ี 2 แสดงโครงขาย ซึ่งกําหนดเวลางานตาง ๆ ไดแนนอน

    จากรูปจะเห็นไดวาโครงขายของโครงการนี้ มีโครงการยอย 14 โครงการยอย และมี node อยู 10 node เวลาของงานยอยตาง ๆ ดูไดจากรูป ลําดับการปอนขอมูลเขาเครื่องคอมพิวเตอรแสดงดังน้ี

    1. แสดงรายละเอียดในการปอนขอมูล

    Ok RUN

    NEED INTRODUCTION (Y OR N) ...? Y

    DETERMINE SCHEDULES OF ACTIVITIES IN MULTIPLE INDEPENDENT PROJECTS. LABELING OF NODES OF EVERY ACTIVITY MUST BE SUCH THAT THE START EVENT NODE IS

    SMALLER THAN THE FINISH EVENT NODE.

    IT IS SUGGESTED THAT EACH NODE BE NUMBERED SEQUENTIALLY STARTING WITH 1 AS THE START EVENT FOR THE FIRST ACTIVITY. ALL NODES MUST BE LABELED AS POSITIVE INTEGERS.

    INPUT REQUIREMENTS 1. PROJECT TITLE 2. NUMBER OF ACTIVITIES 3. THE HIGHEST NODE NUMBER 4. PROJECT START DATE 5. PROJECT DUE DATE (IF ANY) 6. ACTIVITY DATA WHICH CONSIST OF I NODE, J NODE, DURATION

    MAXIMUM NUMBER OF ACTIVITIES = 50 HIGHEST NODE NUMBER = 60

    2. ใสช่ือของโครงการนี้ เชน โครงการนี้ช่ือ SOMKIAT ENGINEERING SCHEDUALING 3. จํานวนโครงการยอยทั้งหมด ในที่น้ีเทากับ 14 โครงการยอย 4. จํานวน node สูงสุด เทากับ 10 node 5. วันเริ่มตนทําโครงการ เทากับ วันที่ 1 6. กําหนดจํานวนวัน ที่จะใหโครงการแลวเสร็จตามกําหนด ในที่น้ีไมไดกําหนด

    รายละเอียดจากขอ 2-6 มีดังน้ี ENTER PROJECT TITLE : ? SOMKIAT ENGINEERING SCHEDUALING ENTER NUMBER OF ACTIVITIES ( > = 2) ? 14 ENTER THE HIGHEST NODE NUMBER IN YOUR NETWORK ? 10 ENTER PROJECT START DATE ( > =1) ? 1 DO YOU KNOW THE PROJECT DUE DATE (Y OR N) ? N

    7. ปอนขอมูล node เริ่มตน, node ส้ินสุด และเวลาที่ใชในโครงการยอย ENTER ACTIVITY DATA ( I NODE, J NODE, DURATION) ENTER DATA FOR ACTIVITY 1 ? 1,2,6 ENTER DATA FOR ACTIVITY 2 ? 1,3,3 ENTER DATA FOR ACTIVITY 3 ? 1,4,5 ENTER DATA FOR ACTIVITY 4 ? 2,5,4 ENTER DATA FOR ACTIVITY 5 ? 2,8,5 ENTER DATA FOR ACTIVITY 6 ? 3,6,7 ENTER DATA FOR ACTIVITY 7 ? 4,6,4 ENTER DATA FOR ACTIVITY 8 ? 4,7,6 ENTER DATA FOR ACTIVITY 9 ? 5,8,3 ENTER DATA FOR ACTIVITY 10 ? 6,8,4 ENTER DATA FOR ACTIVITY 11 ? 6,9,3

    C R I T I C A L P A T H M E T H O D

    Page 5 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • ENTER DATA FOR ACTIVITY 12 ? 7,9,2 ENTER DATA FOR ACTIVITY 13 ? 8,10,6 ENTER DATA FOR ACTIVITY 14 ? 9,10,5

    8. แสดงรายละเอียดของคําส่ังตาง ๆ ใหพิมพคําส่ัง HELP หนาจอก็จะแสดงดังน้ี PLEASE ENTER COMMAND OR TYPE HELP COMMAND = => ? HELP AVAILABLE COMMANDS

    9. พิมพคําส่ัง TABLE หนาจอก็จะแสดงผลดังน้ี COMMAND = = > ? TABLE PROJECT : SOMKIAT ENGINEERING SCHEDUALING START DATE = 1 EARLIEST FINISH DATE = 20 PROJECT DURATION = 20

    จากผลการคํานวณจากคอมพิวเตอรทําใหทราบวางานที่ 1-3, 3-6, 6-8 และ 8-10 เปนงานวิกฤติ ซึ่งตองระมัดระวังเปนพิเศษจะมีผลกระทบตอโครงการทั้งหมดถาหากเกิดการลาชาข้ึน

    รายละเอียดของตารางในหัวขอที่ 9. ของคําส่ัง TABLE มีดังน้ี 1. Column ที่ 1 ( I ) คือ จุดเริ่มตนของแตละโครงการยอย ที่ node I 2. Column ที่ 2 ( J ) คือ จุดส้ินสุดของแตละโครงการยอย ที่ node j 3. Column ที่ 3 ( DU ) คือ เวลาของแตละโครงการยอย ที่ node i - j 4. Column ที่ 4 ( ES ) คือ เวลาเริ่มตนเร็วสุดของงาน ที่ node i - j 5. Column ที่ 5 ( EF ) คือ เวลาสิ้นสุดเร็วสุดของงาน ที่ node i - j 6. Column ที่ 6 ( LS ) คือ เวลาเริ่มตนลาสุดของงาน ที่ node i - j 7. Column ที่ 7 ( LF ) คือ เวลาสิ้นสุดลาสุดของงาน ที่ node i - j 8. Column ที่ 8 ( TF ) คือ TF i j = (LFj - ESi ) - D i j

    9. Column ที่ 9 ( FF ) คือ FF i j = (ESj - ESi ) - Di j

    10. Column ที่ 10 ( IF ) คือ IFi j = (ESi k - LFh i ) - Di j

    10. พิมพคําส่ัง BAR หนาจอก็จะแสดงดังน้ี COMMAND = = > ? BAR PROJECT : SOMKIAT ENGINEERING SCHEDUALING START DATE = 1 EARLIEST FINISH DATE = 20

    HELP - PRINT THIS MESSAGETABLE - GENERATE TABLE OF SCHEDULE IN SORT ORDERSORT - SORT THE ACTIVITIES ACCORDING TO THE TABLE TWO COLUMNS AT A TIMEBAR - GENERATE BAR CHART IN SORT ORDERRESTART - START A NEW PROBLEMEXIT - EXIT FROM THE PROGRAM

    Page 6 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • PROJECT DURATION = 20

    รายละเอียดของโปรแกรม CPM มีดังน้ี

    5 REM FILE NAME : CPM 10 REM CRITICAL PATH METHOD 20 REM USING I-J NOTATION (ACTIVITY ON ARROW NETWORK). 30 DIM A(50), P(10,50), E(60), F(60), P$(40), F$(4) : CLS 40 N9=60 50 M9=50 60 GOSUB 2940 70 PRINT

    90 PRINT "------------------- ------------------- ------------------------" 100 PRINT 110 PRINT "NEED INTRODUCTION (Y OR N) ... "; 120 INPUT Y$ 130 IF Y$ < > "Y" THEN 380 140 PRINT 150 PRINT "THIS PROGRAM PERFORMS CRITICAL PATH ANALYSIS TO" 160 PRINT "DETERMINE SCHEDULES OF ACTIVITIES IN MULTIPLE" 170 PRINT "INDEPENDENT PROJECTS. LABELING OF NODES OF EVERY" 180 PRINT "ACTIVITY MUST BE SUCH THAT THE START EVENT NODE" 190 PRINT "IS SMALLER THAN THE FINISH EVENT NODE." 200 PRINT 210 PRINT "IT IS SUGGESTED THAT EACH NODE BE NUMBERED SEQUENTIALLY" 220 PRINT "STARTING WITH 1 AS THE START EVENT FOR THE FIRST" 230 PRINT "ACTIVITY. ALL NODES MUST BE LABELED AS POSITIVE" 240 PRINT "INTEGERS" 250 PRINT 260 PRINT "INPUT REQUIREMENTS" 270 PRINT "-----------------" 280 PRINT " 1. PROJECT TITLE" 290 PRINT " 2. NUMBER OF ACTIVITIES" 300 PRINT " 3. THE HIGHEST NODE NUMBER" 310 PRINT " 4. PROJECT START DATE" 320 PRINT " 5. PROJECT DUE DATE (IF ANY)" 330 PRINT " 6 ACTIVITY DATA WHICH CONSIST OF" 340 PRINT " I NODE, J NODE, DURATION" 350 PRINT 360 PRINT "MAXIMUM NUMBER OF ACTIVITIES = ";M9

    80 PRINT "C R I T I C A L P A T H M E T H D"

    Page 7 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 370 PRINT "HIGHEST NODE NUMBER = ";N9 380 PRINT 390 PRINT "ENTER PROJECT TITLE :"; 400 INPUT T$ 410 PRINT 420 PRINT "ENTER NUMBER OF ACTIVITIES ( > = 2)"; 430 INPUT M 440 IF M < 2 THEN 380 450 IF M > M9 THEN 380 460 PRINT 470 PRINT "ENTER THE HIGHEST NODE NUMBER IN YOUR NETWORK"; 480 INPUT N 490 IF N < = 0 THEN 460 500 IF N > N9 THEN 460 510 PRINT 520 PRINT "ENTER PROJECT START DATE ( > = 1)"; 530 INPUT S7 540 IF S7 < 1 THEN 510 550 REM ADJUST START DATE FOR FORWARD AND BACKWARD PASS CALC

    560 S=S7-1 570 PRINT 580 PRINT "DO YOU KNOW THE PROJECT DUE DATE (Y OR N)"; 590 INPUT D$ 600 IF D$ = "Y" THEN 630 610 IF D$ = "N" THEN 660 620 GOTO 570 630 PRINT 640 PRINT "ENTER PROJECT DUE DATE"; 650 INPUT D 660 PRINT 670 PRINT "ENTER ACTIVITY DATA (I NODE, J NODE, DURATION)" 680 PRINT "----------------------------------------" 690 FOR I = 1 TO M 700 PRINT "ENTER DATA FOR ACTIVITY";I;" "; 710 INPUT P(1,I), P(2,I), P(3,I) 720 IF P(1,I) > N THEN 760 730 IF P(2,I) > N THEN 760 740 A(I)=I 750 GOTO 820 760 IF P(2,I) > N9 THEN 790 770 N=P (2,I) 780 GOTO 740 790 PRINT 800 PRINT "*** ERROR *** HIGHEST NODE LABEL EXCEEDS";N9 810 GOTO 700 820 NEXT I 830 REM SORT ACTIVITIES IN TOPOLOGICAL SEQUENCE 840 FOR I=1 TO M-1 850 FOR J=I + 1 TO M 860 IF P(1,A(I)) < > P(2,A(J)) THEN 930 870 A1=A(J) 880 FOR K=J TO I + 1 STEP -1 890 A(K) = A(K-1) 900 NEXT K 910 A(I)=A1

    Page 8 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 920 GOTO 850 930 NEXT J 940 NEXT I 950 REM T = CRITICAL PATH DURATION 960 REM E(.) = EARLIEST START TIME OF EVENTS (NODES) 970 T = 0 980 FOR I=1 TO N 990 E(I)=S 1000 NEXT I 1010 REM F O R W A R D P A S S 1020 REM ----------------- 1030 REM DETERMINE ES, EF OF EACH ACTIVITY 1040 FOR I=1 TO M 1050 K=A(I) 1060 I1=P(1,K) 1070 J1=P(2,K) 1080 P(4,K)=E(I1) 1090 P(5,K)=E(I1)+P(3,K) 1100 IF P(5,K) < = E(J1) THEN 1120 1110 E(J1)=P(5,K) 1120 IF P(5,K) < = T THEN 1140 1130 T=P(5,K) 1140 NEXT I 1150 REM IF PROJECT DUE DATE IS KNOWN -- SET THE LATEST FINISH 1160 REM DATE OF THE INDEPENDENT FINISH ACTIVITIES TO THE DUE 1170 REM DATE. OTHERWISE, ASSIGN THE LATEST FINISH DATE AS THE 1180 REM LONGEST PATH OBTAINED FROM THE FORWARD PASS. 1190 D9=D 1200 IF D$ = "Y" THEN 1220 1210 D9=T 1220 FOR I=1 TO N 1230 F(I)=D9 1240 NEXT I 1250 REM B A C K W A R D P A S S 1260 REM --------------------- 1270 REM DETERMINE LS AND LF OF EACH ACTIVITY 1280 FOR J=1 TO M 1290 I=M-J+1 1300 K=A(I) 1310 I1=P(1,K) 1320 J1=P(2,K) 1330 P(7,K)=F(J1) 1340 P(6,K)=F(J1)-P(3,K) 1350 IF P(6,K) > = F (I1) THEN 1370 1360 F(I1)=P(6,K) 1370 NEXT J 1380 REM DETERMINE TOTAL FLOAT, FREE FLOAT AND INTERFERENCE FLOAT 1390 FOR I=1 TO M 1400 P(8,I)=P(6,I)-P(4,I) 1410 J1=P(2,I) 1420 P(9,I)=E(J1)-P(5,I) 1430 P(10,I)=P(8,I)-P(9,I) 1440 P(4,I)=P(4,I)+1 1450 P(6,I)=P(6,I)+1 1460 NEXT 1

    Page 9 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 1470 PRINT 1480 PRINT "PLEASE ENTER COMMAND OR TYPE HELP" 1490 PRINT 1500 PRINT "COMMAND - - ->";

    1510 INPUT C$ 1520 PRINT 1530 IF C$ < > "HELP" THEN 1560 1540 GOSUB 1690 1550 GOTO 1490 1560 IF C$ < > "TABLE" THEN 1590 1570 GOSUB 1800 1580 GOTO 1490 1590 IF C$ < > "SORT" THEN 1620 1600 GOSUB 2050 1610 GOTO 1490 1620 IF C$ < > "BAR" THEN 1650 1630 GOSUB 2340 1640 GOTO 1490 1650 IF C$ = "RESTART" THEN 380 1660 IF C$ = "EXIT" THEN 3130 1670 PRINT "***ERROR*** PLEASE TRY AGAIN !!!" 1680 GOTO 1490 1690 REM ***HELP COMMAND *** 1700 PRINT "AVAILABLE COMMANDS" 1710 PRINT "-------------------" 1720 PRINT "HELP -PRINT THIS MESSAGE" 1730 PRINT "TABLE -GENERATE TABLE OF SCHEDULE IN SORT ORDER" 1740 PRINT "SORT -SORT THE ACTIVITIES ACCORDING TO THE TABLE" 1750 PRINT " TWO COLUMNS AT A TIME" 1760 PRINT "BAR -GENERATE BAR CHART IN SORT ORDER" 1770 PRINT "RESTART -START A NEW PROBLEM" 1780 PRINT "EXIT -EXIT FROM THE PROGRAM" 1790 RETURN 1800 REM ***TABLE COMMAND *** 1810 GOSUB 3040 1820 L3=50 1830 GOSUB 2990 1840 PRINT 1850 FOR J=1 TO 10 1860 PRINT USING F$(1);J; 1870 NEXT J 1880 PRINT 1890 PRINT F$(2);F$(3) 1900 GOSUB 2990 1910 PRINT 1920 FOR I=1 TO M 1930 K=A(I) 1940 C$ 1950 IF P(8,K) > .00001 THEN 1970 1960 C$="CRITICAL" 1970 FOR J=1 TO 10 1980 PRINT USING F$(1);P(J,K); 1990 NEXT J 2000 PRINT C$ 2010 NEXT I

    Page 10 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 2020 PRINT 2030 PRINT 2040 RETURN 2050 REM *** SORT COMMAND *** 2060 PRINT 2070 PRINT "SELECT TWO COLUMNS IN SORT ORDER"; 2080 INPUT L,L9 2090 IF L < = 0 THEN 2060 2100 IF L > 10 THEN 2060 2110 IF L9 < = 0 THEN 2060 2120 IF L9 > 10 THEN 2060 2130 FOR I=1 TO M 2140 A(I)=I 2150 NEXT I 2160 FOR I=1 TO M-1 2170 K=A(I) 2180 B0=P(L,K) 2190 B1=P(L9,K) 2200 FOR J=I+1 TO M 2210 L1=A(J) 2220 IF B0 < P(L,L1) THEN 2300 2230 IF B0 > P(L,L1) THEN 2250 2240 IF B1 < = P(L9,L1) THEN 2300 2250 B0=P(L,L1) 2260 AO = A(I) 2270 A(I)=A(J) 2280 A(J)=A0 2290 B1=P(L9,L1) 2300 NEXT J 2310 NEXT I 2320 PRINT "TABLE SORTED!!!" 2330 RETURN 2340 REM ***BAR COMMAND *** 2350 V=INT((D9-S/40)+1 2360 GOSUB 3040 2370 PRING F$(2);" EACH * = "; 2380 PRINT USING F$ (4);V 2390 L3=27 2400 GOSUB 2860 2410 FOR I=1 TO M 2420 K=A(I) 2430 FOR J=1 TO 40 2440 P$(J) = "" 2450 NEXT J 2460 IF P(3,K)=0 THEN 2730 2470 I1=(P(4,K)-S)/V 2480 I2=INT(I1) 2490 IF I1=12 THEN 2510 2500 I1=I2+1 2510 I2=(P(5,K)-S)/V 2520 I3=INT(I2) 2530 IF I2=I3 THEN 2550 2540 I2=I3+1 2550 G$="X" 2560 IF P(8,K) > 0 THEN 2580

    Page 11 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 2570 G$="C" 2580 IF (I2-I1+1)*V-P(3,K) < V THEN 2600 2590 I2=I2-1 2600 FOR J=I1 TO I2 2610 P$(J)=G$ 2620 NEXT J 2630 IF P(8,K) < = 0 THEN 2730 2640 I3=(P(7,K)-S)/V 2650 I4=INT(I3) 2660 IF I3=I4 THEN 2680 2670 I3=I4+1 2680 IF (I3-I2 + 1)*V-P(8,K) < = V THEN 2700 2690 I3=I3-1 2700 FOR J=I2+1 TO I3 2710 P$(J)="." 2720 NEXT J 2730 FOR J=1 TO 4 2740 PRINT USING F$(1);P(J,K); 2750 NEXT J 2760 PRINT USING F$(1);P(5,K); 2770 PRINT "I"; 2780 FOR J=1 TO 40 2790 PRINT P$(J); 2800 NEXT J 2810 PRINT "I" 2820 NEXT I 2830 GOSUB 2870 2840 PRINT 2850 RETURN 2860 REM PRINT A LINE BEFORE OR AFTER THE BAR CHAT 2870 GOSUB 2990 2880 PRINT "I"; 2890 FOR J=1 TO 40 2900 PRINT "_"; 2910 NEXT J 2920 PRINT "I" 2930 RETURN 2940 REM I N I T I A L I Z A T I O N 2950 F$(1)="####" : F$(4)= "#" 2960 F$(2)=" I J DU ES EF" 2970 F$(3)=" LS LF TF EF IF" 2980 RETURN 2990 REM PRINT A LINE ACROSS A PAGE AND HOLD CR/LF 3000 FOR J=1 TO L3 3010 PRINT "-"; 3020 NEXT J 3030 NEXT J 3040 PRINT 3050 PRINT "PROJECT : "T$ 3060 PRINT "START DATE = ";S7 3070 IF D$ < > "Y" THEN 3090 3080 PRINT "DUE DATE = ";D 3090 PRINT "EARLIEST FINISH DATE = ";T+S7-1 3100 PRINT "PROJECT DURATION = ";T 3110 PRINT

    Page 12 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 3120 RETURN 3130 RUN "MENU"

    5.2 การคํานวณดวยวิธีของ PERT ตัวอยาง บริษัท แคนนอน จํากัด มีโครงการจะผลิตกลองถายรูปขนาดเล็กออกจําหนาย ผูบริหารของบริษัท

    ไดจัดตั้งคณะทํางานขึ้นเพื่อศึกษาความเปนไปไดของโครงการนี้ คณะทํางานกลุมน้ี จึงไดจําแนกงานในโครงการออกเปนงานยอยไดดัง ตารางที่ 1

    - สรางขายงานโครงการ จากตัวอยางที่ผานมาสามารถเขียขายงานไดดังรูป 3

    รูปที่ 3 โครงขายงานของ PERT ในกรณีตัวอยาง

    - ประมาณเวลาของแตละงานยอย

    หนวย : สัปดาห

    สัญลักษณ ของงานยอย รายละเอียดของงานยอย

    งานยอยท่ีตอง การทํากอน

    A B C D E F G H I J

    การออกแบบและพัฒนากลองถายรูป วางแผนเพื่อวิจัยทางดานการตลาด วางสายงานการผลิต สรางตนแบบของกลองถายรูป ทําโฆษณาเพื่อแนะนําสินคา ประมาณคาใชจายในการผลิต ทดสอบประสิทธิภาพของกลองถายรูป สํารวจความตองการของตลาด กําหนดราคาขาย และผลการคาดคะเนตลาดสรุป

    - - A A A C D B,E H F,G,I

    สัญญาลักษณ ของงานยอย

    เวลาท่ีจะเสร็จ ไดเร็วท่ีสุด (a)

    เวลาท่ีจะเสร็จ โดยสวนมาก (m)

    เวลาท่ีจะเสร็จ ไดชาท่ีสุด (b)

    A B C D E F G

    3 1 2 3 2 2

    1.5

    4 2 3 4 3 3 3

    11 3 4 11 4 4

    4.5

    Page 13 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • - คํานวณหาคาเฉล่ีย (ET) คาเฉล่ียของการแจกแจงความนาจะเปนแบบเบตา จะหาไดจากสูตรตอไปน้ี

    -คํานวณหาคาความแปรปรวนของเวลา (VT) คาความแปรปรวนของการแจกแจงความนาจะเปนแบบเบตา จะหาไดจากสูตรตอไปน้ี

    -คํานวณหาคาเวลาเริ่มตนเร็วที่สุด และคาเวลาเสร็จส้ินชาที่สุดของแตละจุดเช่ือม 1. การคํานวณหาคาเวลาเริ่มตนเร็วที่สุด (ES)

    ESj = maxi( ESi+ETij)=max( EFij)

    เมื่อ i และ j เปนจุดเช่ือมที่ i และ j ตามลําดับ หรืองานยอย i,j 2. คํานวณหาคาเวลาเสร็จส้ินชาที่สุด (LF)

    LFi=minj(LFj - ETij)=minj (LSij)

    จากตัวอยางที่ผานมาจะหาคา ES และ LF ของแตละจุดเช่ือมไดดังน้ี คํานวณหาคาเวลาเริ่มตนเร็วที่สุดของแตละจุดเช่ือม

    คํานวณหาคาเวลาเสร็จส้ินชาที่สุด แตละจุดเช่ือม

    H I J

    2.5 2 1

    3.5 3 2

    7.5 4 3

    สัญญาสักษณ ของงานยอย

    คาเฉลี่ย ( ET ) ( สัปดาห )

    ความแปรปรวน ( VT ) ( สัปดาห )2

    A B C D E F G H I J

    5 2 3 5 3 3 3 4 3 2

    1.78 0.11 0.11 1.78 0.11 0.11 0.25 0.69 0.11 0.11

    ES j = mix i ( ES i + ET i j )

    ES l = 0

    ES 2 = ES 1+ET 1 2 = 0+5 = 5

    ES 3 = ES 2+ET 2 3 = 5+3 = 8

    ES 4 = ES 2+ET 2 4 = 5+5 = 10

    ES 5 = max ( ES i + ET i 5 )

    i = 1 , 2= max ( 0 + 2 , 5 + 3 ) = 8

    ES 6 = ES 5 + ET 5 6 = 8+4 = 12

    ES 7 = max ( ES i + ET i 7 )

    i = 3 ,4, 6= max ( 8+3 ,10+3 ,12+3 ) = 15

    ES 8 = ES 7+ET 7 8 =15+2 = 17

    Page 14 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • คาที่ไดจากการคํานวณหาคา ES และ LF สามารถนํามาเขียนเปนโครงขายงานไดดังน้ี

    รูปท่ี 4 โครงขายงานของ PERT เมื่อคํานวณ ES, LF

    - คํานวณหาสายงานวิกฤติของโครงการ หลักการพิจารณาวางานยอยใดเปนงานวิกฤติกระทําไดดังน้ี 1. เวลาสํารองเทากับ "ศูนย" หรือ LSi j - ESi

    2. ผลตางของคาเวลาระหวางหัวลูกศร และปลายลูกศรมีคาเทากับเวลาเฉลี่ยของงานยอยน้ัน หรือ

    จากตัวอยางที่ผานมา สายงานวิกฤติของโครงการคือ งานยอย 1-2, 2-5, 5-6, 6-7, 7-8 หรืองานยอยที่มีสัญลักษณ A-E-H-I-J ซ่ึงมีสายงานวิกฤติน้ีใชเวลาทํางาน 17 สัปดาห

    ตารางการคํานวณคาเวลาตาง ๆ ของ PERT

    LF i = min j ( LFj - ETi j )

    LF 7 = LF 8 - ET7 8 = 17-2 = 15

    LF 6 = LF 7 - ET6 7 = 15-3 = 12

    LF 5 = LF 6 - ET5 6 = 12-4 = 8

    LF 4 = LF 7 - ET4 7 = 15-3 = 12

    LF 3 = LF 7 - ET3 7 = 15-3 = 12

    LF 2 = min ( LFj - ET2 j )

    j = 3,4,5= min(12 - 3 , 12 - 5 , 8 - 3 ) =5

    LF 1 = min ( LF1j - ET )

    j = 2,5= min ( 5 - 5 , 8 - 2 ) = 0

    ESj - ESi = LFj - LFi = ETij

    งานยอย ( i,j )

    เวลาเฉลี่ย ETi j

    เวลาเริ่มตน

    เร็วท่ีสุด ESi

    เวลาเสร็จส้ิน

    เร็วท่ีสุด EFi j

    เวลาเริ่มตน

    ชาท่ีสุด LSi j

    เวลาเสร็จส้ิน

    ชาท่ีสุด LFj

    เวลาสํารอง Tsi j = LSi j -

    ESi

    (1,2) (1,5) (2,3) (2,4)

    5 2 3 5

    0 0 5 5

    5 2 8 10

    0 6 9 7

    5 8 12 12

    0 6 4 2

    Page 15 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • - หาคาความนาจะเปนที่โครงการจะเสร็จตามที่กําหนดที่ตั้งไว การบริหารโครงการดวย PERT น้ีมีจุดเดนอันหน่ึง ที่การบริหารโครงการวิธีอื่นไมมีจุดเดนอันน้ีคือ สามารถหาความนาจะเปนที่โครงการ จะเสร็จตามกําหนดเวลาที่ตั้งไวได

    สูตรหาความนาจะเปน

    คํานวณความนาจะเปน โดยสมมติวาตองการหาความนาจะเปนที่โครงการนี้จะเสร็จภายใน 18 สัปดาห

    เมื่อคํานวณหาคา Z ไดแลวก็นําคาน้ีไปเปดตารางแจงแจงปกติมาตรฐานซึ่งไดความนาจะเปนเทากับ 0.7697 หรือความนาจะเปนที่โครงการนี้จะเสร็จภายใน 18 สัปดาห เทากับ 76.97%

    รูปท่ี 5 ความนาจะเปนของโครงการที่เสร็จใน 18 สัปดาห

    - การปรับปรุงโครงการแบบ PERT ใชในการบริหารที่ยืดหยุนได โดยการปรับแผนงานโยกยายทรัพยากรและปรับปรุง เวลายอยใหเสร็จเร็วข้ึน ซึ่งจะทํากี่คร้ังก็ได ชวงเวลาสํารองของงานยอยแตละงานจะสามารถทําใหลดนอยลงได ดวยการนําเอาทรัพยากรของงานยอยที่มีเวลาสํารองมาชวยงานยอยในสายงานวิกฤติใหงายข้ึน ปกติแลวจะโยกยายทรัพยากรของหนวย งานยอยที่ไมเปนสายงานวิกฤติที่มีเวลาสํารองมากท่ีสุดไปชวยงานยอยที่เปนสายงานวิกฤติ เพื่อชวยใหโครงการเสร็จเร็วย่ิงข้ึน

    (2,5) (3,7) (4,7) (5,6) (6,7) (7,8)

    3 3 3 4 3 2

    5 8 10 8 12 15

    8 11 13 12 15 17

    5 12 12 8 12 15

    8 15 15 12 15 17

    0 4 2 0 0 0

    Z =(T-Tcp) / cpเมื่อ Z = คาตัวแปรสุมของการแจกแจงแบบปกติมาตรฐาน

    T = กําหนดเวลาที่ตั้งไววาโครงการจะเสร็จTcp = เวลาที่คาดวาโครงการจะเสร็จ หรือเวลาเฉลี่ยของสายงานวิกฤติcp = คาเบี่ยงเบนมาตรฐานของเวลาเฉลี่ยของสายงานวิกฤติ ซึ่งหาไดจากสูตรcp = (VT ของงานยอยในสายงานวิกฤติ)

    Tcp = ET1 2 + ET2 5 + ET5 6 + ET6 7 + ET7 8= 5 + 3 + 4 + 3 + 2 = 17 สัปดาห

    cp = 1.78 + 0.11 + 0.69 + 0.11 + 0.11

    = 2.80 = 1.67 สัปดาหZ = (T-Tcp) / cp

    = = 0.598

    เวลาสํารอง สายงาน

    Page 16 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • การเรียกใช PROGRAM BASIC กับเครื่อง IBM

    1. เปดเครื่องพิมพ จอภาพ และ System Unit ตามลําดับ 2. ใสแผนแมเหล็ก (Diskett) ที่มีโปรแกรม Dos ลงใน Drive A ของเครืองคอมพิวเตอร แลวปดชองใหเรียบ

    รอย 3. กดปุม Ctrl และ Alt ไวแลวกดปุม Del ตอไปแลวจึงปลอยพรอมกัน 4. เครื่องจะทําการ อาน Dos จากแผน Disk แลว หนาจอคอมพิวเตอรจะปรากฎขอความดังน้ี A: \ > หมายความวา เราไดทําการ Boot เครื่องเสร็จแลว สามารถจะเขาสูโปรแกรมตาง ๆ ได 5. ในที่น้ี เราตองการใชโปรแกรมภาษาเบสิค ก็เอาแผน Dos ออกแลวนําแผน Diskett ที่มีโปรแกรมภาษาเบ

    สิคใสเขาไปแทนที่ 6. ในการเรียกใชโปรแกรมภาษเบสิค โดยการพิมพคําวา Basica ลงไป เครื่องคอมพิวเตอรจะปรากฏขอความ

    ดังน้ี A:\ > BASICA แลวเรากดปุม Enter เครื่องก็จะอานขอมูล ที่จอภาพคอมพิวเตอรจะปรากฎโปรแกรมเบสิคออกมา 7. การเรียกโปรแกรมยอยจากภาษาเบสิค โดยการกดปุม F3 ก็จะปรากฎคําวา "Load" บนหนาจอเราก็พิมพคํา

    วา Perts (หรือ CPM แลวแตเราจะเรียกใช) ตอทายแลวก็กดปุม Enter บนจอก็จะปรากฏคําวา OK หมายความวาเราได Load โปรแกรม Pert เรียบรอยแลวสามารถใชงานไดเลย

    หมายเหตุ สัญลักษณที่ใชในโปรแกรมภาษาเบสิค F1 = LIST ขอมูลที่เปนรายละเอียดของโปรแกรม F2 = RUN โปรแกรมเพื่อคํานวณ F3 = LOAD เพื่อเรียกโปรแกรมมาใช

    การใชโปรแกรมของ PERT ในการวางแผนงาน

    เมื่อปอนโปรแกรมคอมพิวเตอรภาษาเบสิค สําหรับบริหารโครงการดวย PERT เขาเครื่องไมโครคอมพิวเตอรเสร็จเรียบรอยแลว เมื่อส่ังใหเครื่องปฏิบัติการตามคําส่ัง (RUN) ที่จอภาพจะปรากฎชื่อโปรแกรมพรอมทั้งรายละเอียดตาง ๆ ดังตอไปนี้

    PROGRAM EVALUTION AND REVIEW TECHNIQUE PERT BY

    MR. SOMKIAT JONGPRASITHPORN DEPARTMENT OF MATERIALS HANDLING TECHNOLOGY

    FACULTY OF ENGINEERING KING MONGKUT'S INSTITUTE OF TECHNOLOGY

    หลังจากน้ันที่จอภาพปรากฎขอความเพื่อบอกใหปอนจํานวนงานยอยทั้งหมดในตัวอยางที่ผานมามีจํานวนงานยอยทั้งหมด 10 งานยอย ดังน้ันจึงปอนตัวเลข 10 ลงไป เม่ือปอนเสร็จที่จอภาพจะปรากฎขอความดังน้ี

    ENTER THE NUMBER OF ACTIVITIES IN THIS NETWORK ? 10 ตอจากนั้นที่จอภาพจะปรากฎขอความ เพื่อบอกใหปอนสัญญลักษณของงานยอยแรกเปน A ดังน้ันจึงปอนตัว

    อักษร A ลงไป ตอมาเครื่องจะปรากฎขอความเพื่อบอกใหปอน จุดเริ่มตนและจุดส้ินสุดของงานยอย A ในตัวอยางนี้งานยอยน้ีมีจุดเริ่มตนเปน 1 และจุดส้ินสุดเปน 2 ดังน้ันจึงปอนตัวเลข 1 และ 2 ลงไปตามลําดับ ตอจากนั้นเครื่องจะปรากฎขอความเพื่อบอกใหปอนเวลาที่จะเสร็จไดเร็ว ที่สุด (a) เวลาที่จะเสร็จโดยสวนมาก (m) และเวลาที่จะเสร็จไดชาที่สุด (b) ของงานยอย A ในตัวอยางนี้งานยอยน้ีมีเวลา a = 3,m = 4 และ b = 11 สัปดาห ดังน้ันจึงปอนตัวเลข 3,4 และ 11 ลงไปตามลําดับ ในทํานองเดียวกันก็ปอนขอมูลตาง ๆ ของงานยอยที่เหลือลงไปตามลําดับกอนหลัง เมื่อปอนขอมูลเสร็จที่จอภาพจะปรากฎขอความเปนดังน้ี

    ACTIVITY SYMBOL ? A ENTER START NODE AND END NODE ? 1,2

    0 2 4 6

    1 - 2 - 5 - 6 - 7 - 8 2 - 4 - 7 2 - 3 - 7 1 - 5

    Page 17 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 3,4,11

    ACTIVITY SYMBOL ? B ENTER START NODE AND END NODE ? 1,5 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 1,2,3

    ACTIVITY SYMBOL ? C ENTER START NODE AND END NODE ? 2,3 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 2,3,4

    ACTIVITY SYMBOL ? D ENTER START NODE AND END NODE ? 2,4 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 3,4,11

    ACTIVITY SYMBOL ? E ENTER START NODE AND END NODE ? 2,5 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 2,3,4

    ACTIVITY SYMBOL ? F ENTER START NODE AND END NODE ? 3,7 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 2,3,4

    ACTIVITY SYMBOL ? G ENTER START NODE AND END NODE ? 4,7 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 1.5,3,4.5

    ACTIVITY SYMBOL ? H ENTER START NODE AND END NODE ? 5,6 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 2.5,3.5,7.5

    ACTIVITY SYMBOL ? I ENTER START NODE AND END NODE ? 6,7 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 2,3,4

    ACTIVITY SYMBOL ? J ENTER START NODE AND END NODE ? 7,8 ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY OPT. , M.L. , PESS. ? 1,2,3

    เมื่อเครื่องไดขอมูลของงานยอยครบทุกงานแลว ก็เริ่มทําการคํานวณเพื่อหาคาเวลาเฉลี่ย, คาความแปรปรวนของเวลา, เวลาเริ่มตนเร็วที่สุด, เวลาเริ่มตนชาที่สุด, เวลาเสร็จส้ินเร็วที่สุด, เวลาเสร็จชาที่สุด และเวลาสํารองของงานยอยแตละงาน พรอมกันน้ี ก็จะคํานวณหาวางานยอยใดเปนงานวิกฤติ จากนั้นเครื่องก็จะนําเอาคาตาง ๆ ที่คํานวณไดมาสรางเปนตาราง PERT เมื่อสรางตารางนี้เสร็จก็จะคํานวณหาเวลาเฉลี่ยของสายงานวิกฤติ หรือเวลาเฉล่ียที่จะทําโครงการนี้เสร็จและคาเบี่ยงเบนมาตรฐานของ เวลาเฉลี่ยของสายงานวิกฤติ เมื่อคํานวณคาตาง ๆ เสร็จแลวก็จะปรากฏขอความออกมาที่จอภาพ ดังน้ี

    Page 18 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • PERT TABLE

    THE CRITICAL PATH LENGTH IS 17 STANDARD DEVIATION OF CRITICAL ACTIVITIES IS 1.674813

    ตอจากนั้นที่จอภาพจะปรากฏขอความใหเลือกวาจะใหเครื่องทําอะไรตอไป ทางเลือกมี 3 ทางคือ 1) ปอนขอมูลใหม 2) เปลี่ยนแปลงกําหนดเวลาที่ใหโครงการเสร็จ 3) ออกจากโปรแกรม หรือจบโปรแกรม สมมุติวาในที่น้ีตองการเปลี่ยนแปลงกําหนดเวลาที่จะใหโครงการเสร็จก็ปอนตัวเลข 2 ลงไป เม่ือปอนเสร็จที่

    จอภาพจะปรากฎขอความเปนดังน้ี NEXT STEP TO BE PERFORMED

    1 = INPUT NEW DATA 2 = CHANGE COMPLETION TIME 3 = EXIT PROGRAM

    INPUT CHOICE ? 2 ตอจากนั้นเครื่องก็จะปรากฏขอความเพื่อบอกใหปอนกําหนดเวลาที่โครงการนี้จะเสร็จเทากับ 18 สัปดาห ดัง

    น้ันจึงปอนตัวเลข 18 ลงไป จากนั้นเครื่องก็จะคํานวณหาคาความนาจะเปนที่โครงการนี้จะเสร็จภายในเวลา 18 สัปดาห เมื่อคํานวณเสร็จก็จะปรากฎขอความที่จอภาพดังน้ี ENTER DESIRED COMPLETION TIME ? 18 PROBABILITY OF COMPLETION WITH DURATION OF 18 IS .7697006

    จากนั้นที่จอภาพจะปรากฏขอความใหเลือกวา จะใหเครื่องทําอะไรตอไปอีก ในที่น้ีสมมุติวาตองการจบโปรแกรมก็ปอนตัวเลข 3 ลงไป เม่ือปอนเสร็จที่จอภาพก็จะปรากฏขอความเปนดังน้ี NEXT STEP TO BE PERFORMED

    1 = INPUT NEW DATA 2 = CHANGE COMPLETION TIME 3 = EXIT PROGRAM

    INPUT CHOICE ? 3 Ok

    สรุป

    จากการศึกษาการบริหารโครงการดวย PERT มาพอสมควรแลว จะเห็นไดวาเทคนิคน้ีมีประโยชนตอการบริหารโครงการสมัยใหม เปนอยางย่ิง ซึ่งสามารถสรุปเปนขอ ๆ ไดดังน้ี

    1. ชวยใหการวางแผนโครงการเปนไปอยางมีหลักเกณฑย่ิงข้ึน 2. ชวยใหการกําหนดขอบขายงานรัดกุมย่ิงข้ึน 3. ชวยใหทราบวางานสวนใดตองรีบเรง และงานสวนใดยังมีเวลายืดหยุนได 4. มีการแสดงผลงานทั้งหมดของโครงการออกมาในรูปของโครงขายงาน ซ่ึงชวยใหงายแกการทําความเขาใจ

    ถึงความสัมพันธ ของงานยอยในข้ันตอนตาง ๆ ของโครงการ 5. ชวยใหการคาดคะเนกําหนดการตาง ๆ แมนยําย่ิงข้ึน 6. ชวยประหยัดงบประมาณเน่ืองจากมีการวางแผนที่รอบคอบขึ้น การใชเครื่องไมโครคอมพิวเตอรชวยในการบริหารโครงการดวย PERT จะทําใหผูบริหารสามารถวิเคราะหและ

    บริหารโครงการไดรวดเร็วย่ิงข้ึน ซึ่งจะชวยทําใหไดเปรียบและมีโอกาสทํากําไรใหกับธุรกิจ นั้นมากย่ิงข้ึนในยุคของการแขงขันเชนน้ี

    Page 19 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • รายละเอียดของโปรแกรม PERT มีดังน้ี

    10 REM ** PROGRAM EVALUATION AND REVIEW TECHNIQUE ** 20 REM 'A' ARRAY = START AND END NODES FOR EACH ACTIVITY 30 REM 'S' ARRAY = EARLY START TIMES FOR EACH ACTIVITY 40 REM 'F' ARRAY = LATE FINISH TIMES FOR EACH ACTIVITY 50 REM 'E' ARRAY = EXPECTED DURATIONS AND VARIANCES OF ACTIVITIES 60 REM 'B$' ARRAY = ACTIVITY SYMBOL 70 DIM A(100,2), S(100), E(100,2), B$(100) 80 PRINT CHR$ (12) : CLEAR 90 PRINT "------------------------------------------------------------------------" : PRINT 100 PIRNT " PROGRAM EVALUTION AND REVIEW TECHNIQUE " 110 PRINT " PERT " ; PRINT 120 PRINT " BY " 130 PRINT " MR. SOMKIAT JONGPRASITHPORN " 140 PRINT "DEPARTMENT OF MATERIALS HANDLING TECHNOLOGY" 150 PRINT " FACULTY OF ENGINEERING " 160 PRINT " KING MONGKUT' S INSTITUTE OF TECHNOLOGY" 170 PRINT "--------------------------------------------------------------------------" : PRINT 180 PRINT "ENTER THE NUMBER OF ACTIVITIES IN THIS NETWORK" ; 190 INPUT N : PRINT 200 FOR I = 1 TO N 210 PRINT 220 PRINT "ACTIVITY SYMBOL" ;: INPUT B$(I) 230 PRINT "ENTER START NODE AND END NODE"; 240 INPUT A(I,1), A(I,2) 250 IF A(I,1) > = A(I,2) THEN 270 260 IF A(I,2) < = N THEN 310 270 PRINT "START NODE MUST BE NUMBERED LOWER THAN END NODE" 280 PRINT "AND END NODE MUST BE LESS THAN THE NUMBER OF ACTIVITIES." 290 PRINT "*** TRY ENTRY AGAIN ***" 300 GOTO 210 310 PRINT "ENTER THREE TIME ESTIMATES FOR THIS ACTIVITY" 320 PRINT "OPT. , M.L. , PESS. " ;: INPUT A1,M,B 330 E(I,1) = INT ((A1+4*M+B)/6*1000! + .5)/1000! 340 E(I,2) = INT ((B-A1)/6^2*1000! + .5)/1000! 350 S(I) = 0 360 F(I) = 0 370 NEXT I 380 REM **** LOOP TO FIND EARLY TIME FOR NETWORK *** 390 FOR I = 1 TO N 400 IF S(A(I,2)) > = S(A(I,1))+E(I,1) THEN 420 410 S(A(I,2)) = S(A(I,1))+E(I,1) 420 NEXT I 430 F(A(N,2)) = S(A(N,2)) 440 REM **** LOOP TO CALCULATE FINISH TIMES FOR NETWORK **** 450 FOR I = N TO 1 STEP -1 460 IF F(A(I,1)) = 0 THEN 490 470 IF F(A(I,1)) > F(A(I,2))-E(I,1) THEN 490 480 GOTO 500 490 F(A(I,1)) = F(A(I,2))-E(I,1) 500 NEXT I : PRINT : PRINT 510 V = 0 520 C = 0 530 L = 0

    Page 20 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • 540 PRINT TAB(30); "PERT TABLE" : PRINT : GOSUB 1050 550 PRINT "ACTIVITY" ; TAB(10) ; "FROM-TO" ; TAB(20); "EARLIEST"; 560 PRINT TAB(30); "LATEST" ; TAB(38); "EARLIEST" ; TAB(48); "LATEST"; 570 PRINT TAB(57); "SLACK" ; TAB(64); "CRITICAL" 580 PRINT "SYMBOL" ; TAB(12); "NODE" ; TAB(22); "START" ; TAB(31); "START"; 590 PRINT TAB(39); "FINISH" ; TAB(48); "FINISH" ; TAB(58); "TIME"; 600 PRINT TAB(66); "PATH" : GOSUB 1050 : PRINT 610 F$ = "##.### ##.### ##.### ##.### ##.###" 620 FOR I = 1 TO N 630 REM **** CALCULATE SLACK TIME IN 'S1' 640 S1 = INT((F(A(I,2))-S(A(I,1))-E(I,1))*1000 + .5)/1000 650 FE = F(A(I,2))-E(I,1) : SE = S(A(I,1)) + E(I,1) 660 PRINT TAB(4);B$(I);TAB(10);A(I,1); "-" ;A(I,2); 670 PRINT TAB(21) ; USING F$;S(A(I,1),FE,SE,F(A(I,2)),S1; 680 IF S1 < = 0 THEN PRINT TAB(67); "**" 690 IF S1 > 0 THEN PRINT 700 REM **** ACCUMULATE PATH LENGHT IN 'L', VARIANCE IN 'V' 710 IF S1 > 0 THEN 750 720 IF L > = F(A(I,2)) THEN 740 730 L = F(A(I,2)) 740 V = V+E(I,2) 750 NEXT I:PRINT : GOSUB 1050 760 PRINT 770 PRINT "THE CRITICAL PATH LENGTH IS";L 780 PRINT "STANDARD DEVIATION OF CRITICAL ACTIVITIES IS" ;SQR(V) 790 PRINT : PRINT 800 PRINT "NEXT STEP TO BE PERFORMED" : PRINT 810 PRINT TAB(5);"1 = INPUT NEW DATA" 820 PRINT TAB(5);"2 = CHANGE COMPLETION TIME" 830 PRINT TAB(5);"3 = EXIT PROGRAM" 840 PRINT : PRINT "INPUT CHOICE" ;: INPUT X : PRINT 850 IF X = 1 THEN 80 860 IF X = 2 THEN GOSUB 900 870 IF X = 3 THEN 890 880 GOTO 790 890 END 900 REM *************** SUBROUTINE *************** 910 REM **** CALCULATE CUMULATIVE AREA UNDER NORMAL DISTRIBUTION 920 PRINT "ENTER DESIRED COMPLETION TIME" ;: INPUT D 930 IF D < = 0 THEN 1040 940 REM *** CALCULATE Z-SCORE FOR DESIRED DURATION 950 Y = (D-L)/SQR(V) 960 REM *** CALCULATE CUMULATIVE AREA UNDER NORMAN DISTRIBUTION 970 R = EXP(-Y^2)/2.5066282746# 990 Y = 1/(1+.33267*ABS(Y)) 1000 T = 1-R*(.436184*Y-.120168*Y^2+.937298*Y^3) 1010 IF Z > = 0 THEN 1030 1020 T = 1-T 1030 PRINT "PROBABILITY OF COMPLETION WITH DURATION OF" ; D; "IS";T 1040 RETURN 1050 FOR H = 1 TO 72 : PRINT "-" ;: NEXT H : PRINT : RETURN

    เอกสารอางอิง

    Page 21 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html

  • ดร.กองเกียรติ โอภาสวงการ "รวมโปรแกรมสําเร็จรูป MBASIC" บ.ซีเอ็ดยูเคช่ัน จํากัด, 2530 วารสาร สสท. 11, 58 หนา 43-53, มีค.-เมย. 2527.

    วิจิตร ตัณฑสุทธิ์ วันชัย ริจิรวนิช ศิริจันทร ทองประเสริฐ, "การวิจัยดําเนินงาน" หนา 151-173, พิมพคร้ังที่ 1 พ.ศ. 2522

    This document was last modified on

    Page 22 of 22Pert/Cpm. กับการวางแผนและควบคุมงาน

    16/8/2549http://202.28.17.1/article/atc34/atc00115.html