อ่าน 5 นาที
การเขียนโปรแกรมเชิงเส้นเศษส่วน
ในการหาค่าเหมาะสมที่สุดทางคณิตศาสตร์การเขียนโปรแกรมเชิงเส้นเศษส่วน ( LFP ) เป็นการขยายความของการเขียนโปรแกรมเชิงเส้น (LP)
การเขียนโปรแกรมเชิงเส้นเศษส่วน
ในการหาค่าเหมาะสมที่สุดทางคณิตศาสตร์การเขียนโปรแกรมเชิงเส้นเศษส่วน ( LFP ) เป็นการขยายความของการเขียนโปรแกรมเชิงเส้น (LP) ในขณะที่ฟังก์ชันเป้าหมายในการเขียนโปรแกรมเชิงเส้นเป็นฟังก์ชันเชิงเส้นฟังก์ชันเป้าหมายในการเขียนโปรแกรมเชิงเส้นเศษส่วนจะเป็นอัตราส่วนของฟังก์ชันเชิงเส้นสองฟังก์ชัน การเขียนโปรแกรมเชิงเส้นสามารถพิจารณาได้ว่าเป็นกรณีพิเศษของการเขียนโปรแกรมเชิงเส้นเศษส่วน โดยที่ตัวส่วนเป็นฟังก์ชันคงที่ 1
ในทางทฤษฎี โปรแกรมเชิงเส้นเศษส่วนถูกนิยามว่าเป็นปัญหาของการเพิ่มค่าสูงสุด (หรือลดค่าต่ำสุด) ของอัตราส่วนของฟังก์ชันเชิงเส้นบนทรง หลายเหลี่ยม
โดยที่แทนเวกเตอร์ของตัวแปรที่จะกำหนดและเป็นเวกเตอร์ของสัมประสิทธิ์ (ที่ทราบ) เป็นเมทริกซ์ของสัมประสิทธิ์ (ที่ทราบ) และเป็นค่าคงที่ ข้อจำกัดต้องจำกัดขอบเขตที่เป็นไปได้ไว้ที่ นั่นคือ ขอบเขตที่ตัวส่วนเป็นบวก[ 1 ] [ 2 ]หรืออีกทางหนึ่ง ตัวส่วนของฟังก์ชันเป้าหมายจะต้องเป็นลบอย่างเคร่งครัดในขอบเขตที่เป็นไปได้ทั้งหมด
แรงจูงใจเมื่อเปรียบเทียบกับการเขียนโปรแกรมเชิงเส้น
ทั้งการเขียนโปรแกรมเชิงเส้น (Linear Programming) และการเขียนโปรแกรมเชิงเส้นเศษส่วน (Linear-Fractional Programming) ต่างก็เป็นปัญหาการหาค่าที่เหมาะสมที่สุดโดยใช้สมการเชิงเส้นและอสมการเชิงเส้นซึ่งสำหรับแต่ละกรณีของปัญหาจะกำหนดเซตที่เป็นไปได้การเขียนโปรแกรมเชิงเส้นเศษส่วนมีชุดฟังก์ชันเป้าหมายที่หลากหลายกว่า โดยทั่วไปแล้ว การเขียนโปรแกรมเชิงเส้นจะคำนวณนโยบายที่ให้ผลลัพธ์ที่ดีที่สุด เช่น กำไรสูงสุดหรือต้นทุนต่ำสุด ในทางตรงกันข้าม การเขียนโปรแกรมเชิงเส้นเศษส่วนใช้เพื่อให้ได้อัตราส่วนผลลัพธ์ต่อต้นทุนที่สูงที่สุด ซึ่งอัตราส่วนนี้แสดงถึงประสิทธิภาพสูงสุด ตัวอย่างเช่น ในบริบทของการเขียนโปรแกรมเชิงเส้น เราจะเพิ่มฟังก์ชันเป้าหมายกำไร = รายได้ − ต้นทุนให้สูงสุด และอาจได้กำไรสูงสุด 100 ดอลลาร์ (= รายได้ 1100 ดอลลาร์ − ต้นทุน 1000 ดอลลาร์) ดังนั้น ในการเขียนโปรแกรมเชิงเส้น เราจะมีประสิทธิภาพ 100/1000 = 0.1 แต่หากใช้การเขียนโปรแกรมเชิงเส้นเศษส่วน เราอาจได้ประสิทธิภาพ 10/50 = 0.2 โดยมีกำไรเพียง 10 ดอลลาร์ แต่ต้องการเงินลงทุนเพียง 50 ดอลลาร์เท่านั้น
การแปลงเป็นโปรแกรมเชิงเส้น
โปรแกรมเชิงเส้นเศษส่วนใดๆ สามารถแปลงเป็นโปรแกรมเชิงเส้น ได้โดยสมมติว่าขอบเขตที่เป็นไปได้ไม่ว่างเปล่าและมีขอบเขตจำกัด โดยใช้การแปลง Charnes–Cooper [ 1 ] แนวคิดหลักคือการแนะนำตัวแปรที่ไม่เป็นลบตัวใหม่ให้กับโปรแกรม ซึ่งจะใช้ในการปรับขนาดค่าคงที่ที่เกี่ยวข้องในโปรแกรม ( ) วิธีนี้ทำให้เราสามารถกำหนดให้ตัวส่วนของฟังก์ชันวัตถุประสงค์ ( ) เท่ากับ 1 ได้ (เพื่อให้เข้าใจการแปลง ควรพิจารณากรณีพิเศษที่ง่ายกว่าด้วย)
ในทางทฤษฎี โปรแกรมเชิงเส้นที่ได้จากการแปลง Charnes–Cooper ใช้ตัวแปรที่แปลงแล้วดังนี้:
วิธีแก้ปัญหาของโปรแกรมเชิงเส้นเศษส่วนดั้งเดิมสามารถแปลงเป็นวิธีแก้ปัญหาของโปรแกรมเชิงเส้นที่แปลงแล้วได้โดยใช้สมการ
ในทางกลับกัน วิธีแก้ปัญหาสำหรับและของโปรแกรมเชิงเส้นที่แปลงแล้วสามารถแปลเป็นวิธีแก้ปัญหาของโปรแกรมเชิงเส้นเศษส่วนดั้งเดิมได้โดยใช้
ความเป็นสองด้าน
ให้ตัวแปรคู่ที่เกี่ยวข้องกับข้อจำกัดและแทนด้วยและตามลำดับ จากนั้นคู่ของ LFP ข้างต้นคือ[ 3 ] [ 4 ]
ซึ่งเป็น LP และสอดคล้องกับคู่ของโปรแกรมเชิงเส้นที่เทียบเท่ากันซึ่งได้มาจากการแปลง Charnes–Cooper
คุณสมบัติและอัลกอริธึม
ฟังก์ชันวัตถุประสงค์ในปัญหาเชิงเส้นเศษส่วนเป็นทั้งกึ่งเว้าและกึ่งนูน (ดังนั้นจึงเป็นกึ่งเชิงเส้น) พร้อมคุณสมบัติโมโนโทนความนูนเทียมซึ่งเป็นคุณสมบัติที่แข็งแกร่งกว่าความนูนเทียมฟังก์ชันวัตถุประสงค์เชิงเส้นเศษส่วนเป็นทั้งกึ่งนูนและกึ่งเว้า ดังนั้นจึงเป็นกึ่งเชิงเส้นเนื่องจาก LFP สามารถแปลงเป็น LP ได้ จึงสามารถแก้ไขได้โดยใช้วิธีการแก้ปัญหา LP ใดๆ เช่นอัลกอริทึมซิมเพล็กซ์ (ของGeorge B. Dantzig ) [ 5 ] [ 6 ] [ 7 ] [ 8 ]อั ลกอริ ทึมไขว้[ 9 ]หรือวิธีการจุดภายใน
หมายเหตุ
- ^ a b Charnes, A.; Cooper, WW (1962). "การเขียนโปรแกรมด้วยฟังก์ชันเชิงเส้นเศษส่วน" Naval Research Logistics Quarterly . 9 ( 3– 4): 181– 186. doi : 10.1002/nav.3800090303 . MR 0152370 .
- ^ Boyd, Stephen P.; Vandenberghe, Lieven (2004). การเพิ่มประสิทธิภาพเชิงนูน (PDF)สำนักพิมพ์มหาวิทยาลัยเคมบริดจ์ หน้า 151 ISBN 978-0-521-83378-3สืบค้นข้อมูลเมื่อ วัน ที่15 ตุลาคม 2554
- ↑ไชเบิล, ซิกฟรีด (1974) "โปรแกรมเทียบเท่านูนและแบบคู่ที่ไม่มีพารามิเตอร์" การวิจัยการดำเนินงาน Zeitschrift für 18 (5): 187– 196. ดอย : 10.1007/BF02026600 . คุณ0351464 . S2CID 28885670 .
- ^ Schaible, Siegfried (1976). "การเขียนโปรแกรมเศษส่วน I: ความเป็นคู่". Management Science . 22 (8): 858– 867. doi : 10.1287/mnsc.22.8.858 . JSTOR 2630017 . MR 0421679 .
- ^ บทที่ห้า: Craven, BD (1988). การเขียนโปรแกรมเศษส่วน . ชุดซิกมาในคณิตศาสตร์ประยุกต์. เล่มที่ 4. เบอร์ลิน: Heldermann Verlag. หน้า 145. ISBN 978-3-88538-404-5MR 0949209
- ^ Kruk, Serge; Wolkowicz, Henry (1999). "การเขียนโปรแกรมเชิงเส้นเทียม" SIAM Review . 41 (4): 795– 805. Bibcode : 1999SIAMR..41..795K . CiteSeerX 10.1.1.53.7355 . doi : 10.1137/S0036144598335259 . JSTOR 2653207 . MR 1723002 .
- ^ Mathis, Frank H.; Mathis, Lenora Jane (1995). "อัลกอริทึมการเขียนโปรแกรมแบบไม่เชิงเส้นสำหรับการจัดการโรงพยาบาล" SIAM Review . 37 (2): 230– 234. doi : 10.1137/1037046 . JSTOR 2132826 . MR 1343214 . S2CID 120626738 .
- ^ Murty (1983 , บทที่ 3.20 (หน้า 160–164) และหน้า 168 และ 179)
- ↑อิลเลส, ติบอร์; เซอร์ไม, อาคอส; เทอร์ลากี, ทามาส (1999) "วิธีกากบาดแบบจำกัดสำหรับการเขียนโปรแกรมไฮเปอร์โบลิก" วารสารการวิจัยเชิงปฏิบัติการแห่งยุโรป . 114 (1): 198– 214. CiteSeerX 10.1.1.36.7090 . ดอย : 10.1016/S0377-2217(98)00049-6 . สบีแอล0953.90055 . การพิมพ์ แบบPostscript
แหล่งที่มา
- Murty, Katta G. (1983). "3.10 การเขียนโปรแกรมเศษส่วน (หน้า 160–164)". การเขียนโปรแกรมเชิงเส้น . นิวยอร์ก: John Wiley & Sons, Inc. หน้า xix+482. ISBN 978-0-471-09725-9MR 0720547
อ่านเพิ่มเติม
- Bajalinov, EB (2003). การเขียนโปรแกรมเชิงเส้นเศษส่วน: ทฤษฎี วิธีการ การประยุกต์ใช้ และซอฟต์แวร์บอสตัน: สำนักพิมพ์ Kluwer Academic Publishers
- Barros, Ana Isabel (1998). เทคนิคการเขียนโปรแกรมแบบไม่ต่อเนื่องและเศษส่วนสำหรับแบบจำลองตำแหน่งการเพิ่มประสิทธิภาพเชิงการจัดเรียง เล่ม 3 ดอร์เดรชท์: สำนักพิมพ์ Kluwer Academic Publishers หน้า xviii+178 ISBN 978-0-7923-5002-6MR 1626973
- Martos, Béla (1975). การเขียนโปรแกรมเชิงไม่เชิงเส้น: ทฤษฎีและวิธีการ . อัมสเตอร์ดัม-อ็อกซ์ฟอร์ด: สำนักพิมพ์นอร์ทฮอลแลนด์ หน้า 279. ISBN 978-0-7204-2817-9MR 0496692
- Schaible, S. (1995). "การเขียนโปรแกรมเศษส่วน" ใน Reiner Horst และ Panos M. Pardalos (บรรณาธิการ). คู่มือการหาค่าเหมาะสมที่สุดทั่วโลกการหาค่าเหมาะสมที่สุดแบบไม่นูนและการประยุกต์ใช้ เล่ม 2. Dordrecht: Kluwer Academic Publishers. หน้า 495–608 . ISBN 978-0-7923-3120-9MR 1377091 .
- Stancu-Minasian, IM (1997). การเขียนโปรแกรมเศษส่วน: ทฤษฎี วิธีการ และการประยุกต์ใช้คณิตศาสตร์และการประยุกต์ใช้ เล่มที่ 409 แปลโดย Victor Giurgiutiu จากฉบับภาษาโรมาเนียปี 1992 ดอร์เดรชต์: Kluwer Academic Publishers Group หน้า viii+418 ISBN 978-0-7923-4580-0MR 1472981
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การเขียนโปรแกรมเชิงเส้นเศษส่วน
ในการหาค่าเหมาะสมที่สุดทางคณิตศาสตร์การเขียนโปรแกรมเชิงเส้นเศษส่วน ( LFP ) เป็นการขยายความของการเขียนโปรแกรมเชิงเส้น (LP)
แรงจูงใจเมื่อเปรียบเทียบกับการเขียนโปรแกรมเชิงเส้น
ทั้งการเขียนโปรแกรมเชิงเส้น (Linear Programming) และการเขียนโปรแกรมเชิงเส้นเศษส่วน (Linear-Fractional Programming) ต่างก็เป็นปัญหาการหาค่าที่เหมาะสมที่สุดโดยใช้สมการเชิงเส้นและ อสมการเชิงเส้น ซึ่งสำหรับแต่ละกรณีของปัญหาจะกำหนด เซตที่เป็นไปได้...
การแปลงเป็นโปรแกรมเชิงเส้น
โปรแกรมเชิงเส้นเศษส่วนใดๆ สามารถแปลงเป็นโปรแกรมเชิงเส้น ได้ โดยสมมติว่าขอบเขตที่เป็นไปได้ไม่ว่างเปล่าและมีขอบเขตจำกัด โดยใช้ การแปลง Charnes–Cooper [ 1 ] แนวคิดหลักคือการแนะนำตัวแปรที่ไม่เป็นลบตัวใหม่ให้กับโปรแกรม...
ความเป็นสองด้าน
ให้ ตัวแปรคู่ ที่เกี่ยวข้องกับข้อจำกัดและแทนด้วยและตามลำดับ จากนั้นคู่ของ LFP ข้างต้นคือ [ 3 ] [ 4 ] A y − b t ≤ 0 {\displaystyle A\mathbf {y} -\mathbf {b} t\leq \mathbf {0} } d T y + β t − 1 = 0 {\displaystyle \mathbf {d} ^{T}\mathbf {y} +\beta t-1=0} u...