อ่าน 2 นาที
ซีพีเล็กซ์
IBM ILOG CPLEX Optimization Studio (มักเรียกกันอย่างไม่เป็นทางการว่า CPLEX ) เป็นซอฟต์แวร์แพ็ก เกจ สำหรับการเพิ่มประสิทธิภาพ
ซีพีเล็กซ์
| ซีพีเล็กซ์ | |
|---|---|
| นักพัฒนา | ไอบีเอ็ม |
| เวอร์ชันเสถียร | 22.1.2 [ 1 ] |
| พิมพ์ | การคำนวณทางเทคนิค |
| ใบอนุญาต | กรรมสิทธิ์ |
| เว็บไซต์ | www.ibm.com/products/ilog-cplex-optimization-studio |
IBM ILOG CPLEX Optimization Studio (มักเรียกกันอย่างไม่เป็นทางการว่าCPLEX ) เป็นซอฟต์แวร์แพ็ก เกจ สำหรับการเพิ่มประสิทธิภาพ
ประวัติศาสตร์
โปรแกรมเพิ่มประสิทธิภาพ CPLEX ได้รับการตั้งชื่อตามวิธีการซิมเพล็กซ์ที่นำมาใช้ในภาษาการเขียนโปรแกรม Cอย่างไรก็ตาม ปัจจุบันยังรองรับการเพิ่มประสิทธิภาพทางคณิตศาสตร์ ประเภทอื่น ๆ และมีอินเทอร์เฟซอื่นนอกเหนือจาก C ด้วย เดิมทีได้รับการพัฒนาโดยRobert E. Bixbyและวางจำหน่ายในเชิงพาณิชย์ในปี 1988 โดย CPLEX Optimization Inc. ซึ่งต่อมาถูกซื้อกิจการโดยILOGในปี 1997 และ ILOG ก็ถูกซื้อกิจการโดยIBMในเดือนมกราคม 2009 [ 2 ] CPLEX ยังคงได้รับการพัฒนาอย่างต่อเนื่องโดย IBM
คุณสมบัติ
IBM ILOG CPLEX Optimizer แก้ ปัญหา การเขียนโปรแกรมจำนวนเต็ม ปัญหา การเขียนโปรแกรมเชิงเส้นขนาดใหญ่มาก[ 3 ] โดยใช้รูปแบบดั้งเดิมหรือคู่ของวิธีซิมเพล็กซ์หรือวิธีจุดภายใน กั้น ปัญหา การเขียนโปรแกรมกำลังสองแบบนูนและไม่นูนและปัญหาที่มีข้อจำกัดกำลังสองแบบนูน (แก้ไขผ่านการเขียนโปรแกรมกรวยลำดับที่สองหรือ SOCP)
โปรแกรม CPLEX Optimizer มีเลเยอร์การสร้างแบบจำลองที่เรียกว่า Concert ซึ่งมีอินเทอร์เฟซสำหรับ ภาษา C++ , C#และJava นอกจากนี้ ยังมี อินเทอร์เฟซภาษา Pythonที่พัฒนามาจากอินเทอร์เฟซภาษา C และสุดท้าย มีไฟล์ปฏิบัติการ Interactive Optimizer แบบสแตนด์อะโลนสำหรับใช้ในการดีบักและวัตถุประสงค์อื่นๆ
CPLEX Optimizer สามารถเข้าถึงได้ผ่านระบบการสร้างแบบจำลองอิสระ เช่นAIMMS , AMPL , GAMS , OptimJและTOMLABนอกจากนี้ AMPL ยังมีอินเทอร์เฟซสำหรับ CPLEX CP Optimizer อีกด้วย
IBM ILOG CPLEX Optimization Studio ฉบับเต็มประกอบด้วย CPLEX Optimizer สำหรับการเขียนโปรแกรมทางคณิตศาสตร์, CP Optimizer สำหรับการเขียนโปรแกรมข้อจำกัด, [ 4 ]ภาษาการเขียนโปรแกรมการเพิ่มประสิทธิภาพ (OPL) และ IDE ที่ผสานรวมอย่างแน่นหนา
ประวัติการเผยแพร่
ก่อนที่ IBM จะเข้าซื้อ ILOG ทีม CPLEX ได้เผยแพร่ประวัติการเผยแพร่ของ CPLEX [ 5 ]
| เวอร์ชั่น | วันที่วางจำหน่าย | คุณสมบัติหลัก |
|---|---|---|
| 22.1.1 | ธันวาคม พ.ศ. 2565 | ยกเลิกการรองรับ Python 3.7 เพิ่มพารามิเตอร์ตัวแก้ปัญหาใหม่[ 6 ] |
| 22.1.0 | มีนาคม พ.ศ. 2565 | เพิ่มการรองรับ Python 3.9 และ 3.10 เพิ่มพารามิเตอร์ตัวแก้ปัญหาใหม่[ 7 ] |
| 20.1 | ธันวาคม พ.ศ. 2563 | การปรับปรุงประสิทธิภาพ MIP โหมด 'emphasis MIP 5' ใหม่ ฯลฯ[ 8 ] |
| 12.10 | ธันวาคม พ.ศ. 2562 | การปรับปรุงประสิทธิภาพของ MIP และการเพิ่มฟังก์ชันเรียกกลับแบบแยกสาขา (branching callback) ทั่วไป นอกเหนือจากฟังก์ชันเรียกกลับทั่วไปอื่นๆ ที่มีในเวอร์ชัน 12.8 |
| 12.9 | มีนาคม 2562 | รองรับการเพิ่มประสิทธิภาพแบบหลายเป้าหมายโดยตรง และปรับปรุงฟังก์ชันการเรียกกลับ (callback) |
| 12.8 | ธันวาคม พ.ศ. 2560 | ฟังก์ชันเรียกกลับทั่วไป, ตัวบันทึก API เพื่อช่วยในการดีบัก, พารามิเตอร์ควบคุม subMIP, และฟังก์ชันดาวน์โหลดและใช้งานได้ทันที (Download and Go) |
| 12.7 | พฤศจิกายน 2559 | การแยกส่วนประกอบ Bender อัตโนมัติ เครื่องมือช่วยสร้างแบบจำลอง คำสั่ง runseeds เพื่อประเมินความแปรปรวนของประสิทธิภาพได้ดียิ่งขึ้น |
| 12.6.2 | มิถุนายน 2558 | การปรับปรุงประสิทธิภาพ (โดยเฉพาะสำหรับ SOCP, MISOCP และ QP ที่ไม่นูน) และรองรับการเพิ่มประสิทธิภาพบนระบบคลาวด์ |
| 12.6 | ธันวาคม พ.ศ. 2556 | รองรับ QP และ MIQP ที่ไม่นูน, MIP แบบขนานแบบกระจาย และการทำงานแบบขนานที่มากขึ้นที่โหนดรากสำหรับ MIP |
| 12.5 | ตุลาคม พ.ศ. 2555 | การปรับปรุงประสิทธิภาพของ MIP, พารามิเตอร์เมล็ดพันธุ์สุ่มเพื่อแก้ไขความแปรปรวนของประสิทธิภาพ, อ็อบเจ็กต์ระยะไกล, คู่สำหรับ QCP, เครื่องมือปรับแต่งแบบกำหนดได้ |
| 12.4 | พฤศจิกายน 2554 | รองรับการจำกัดเวลาแบบกำหนดได้, การหาค่าคู่สำหรับ SOCPs, API สำหรับนิพจน์กำลังสองใน Concert, การปรับปรุงประสิทธิภาพในทุกอัลกอริธึม โดยเฉพาะอย่างยิ่ง MIP |
| 12.3 | มิถุนายน 2554 | รองรับการนับค่าที่ไม่เป็นศูนย์ขนาดใหญ่ที่ต้องการการจัดทำดัชนี 64 บิต, ค่าเหมาะสมที่สุดเฉพาะที่สำหรับ QP ที่ไม่นูน และการครอบคลุมทั่วโลก |
| 12.2 | มิถุนายน 2553 | มีการประมวลผลแบบขนานมากขึ้นที่โหนดราก การเพิ่มประสิทธิภาพ LP แบบขนานพร้อมกันเชิงกำหนด พร้อมด้วยการปรับปรุงประสิทธิภาพของตัวกั้นเพิ่มเติม และเครื่องมือเพิ่มเติมสำหรับการวินิจฉัยเมทริกซ์ฐานที่มีสภาพไม่ดีใน MIPs |
| 12.0 | เมษายน พ.ศ. 2552 | เวอร์ชันแรกหลังจากที่ IBM เข้าซื้อกิจการ ILOG ประกอบด้วยตัวเชื่อมต่อสำหรับ Python, MATLAB และ Excel รวมถึงตัวกั้นการทำงานแบบขนานเชิงกำหนด (Deterministic parallel barrier) ด้วย |
| 11.0 | ตุลาคม พ.ศ. 2550 | ประสิทธิภาพที่เพิ่มขึ้นอย่างก้าวกระโดดสำหรับแบบจำลองการเขียนโปรแกรมจำนวนเต็มแบบผสม (MIP) และการเพิ่มประสิทธิภาพการเพิ่มประสิทธิภาพ MIP แบบขนาน มีการแนะนำคุณสมบัติพูลโซลูชัน MIP และยูทิลิตี้การปรับแต่งประสิทธิภาพ |
| 10.0 | มกราคม พ.ศ. 2549 | มีการปรับปรุงประสิทธิภาพในวิธีการซิมเพล็กซ์และบาเรียร์แบบดั้งเดิม รวมถึงตัวเพิ่มประสิทธิภาพ MIP มีการนำข้อจำกัดตัวบ่งชี้และฮิวริสติกส์สำหรับการปรับปรุงคำตอบมาใช้ และมีการปรับปรุงการวิเคราะห์ความเป็นไปไม่ได้ |
| 9.0 | ธันวาคม พ.ศ. 2546 | มีการปรับปรุงประสิทธิภาพในวิธีการซิมเพล็กซ์แบบดั้งเดิมและแบบคู่ รวมถึงตัวเพิ่มประสิทธิภาพ MIP นอกจากนี้ยังมีเทคโนโลยี ILOG Concert สำหรับผู้ใช้ .NET และรองรับโปรแกรมที่มีข้อจำกัดเชิงกำลังสอง |
| 8.0 | กรกฎาคม พ.ศ. 2545 | การปรับปรุงประสิทธิภาพของ MIP และการรองรับโปรแกรมกำลังสองแบบจำนวนเต็มผสม |
| 7.5 | ธันวาคม พ.ศ. 2544 | เทคโนโลยี ILOG Concert สำหรับผู้ใช้ Java |
| 7.0 | ตุลาคม พ.ศ. 2543 | เทคโนโลยี ILOG Concert สำหรับผู้ใช้ C++ |
| 6.5 | มีนาคม พ.ศ. 2542 | มีการปรับปรุงประสิทธิภาพอย่างมีนัยสำคัญในวิธีการซิมเพล็กซ์แบบดั้งเดิมและแบบคู่ รวมถึงตัวเพิ่มประสิทธิภาพจำนวนเต็มแบบผสม ILOG CPLEX |
| 6.0 | เมษายน พ.ศ. 2541 | มีการปรับปรุงประสิทธิภาพอย่างมีนัยสำคัญในวิธีการซิมเพล็กซ์แบบดั้งเดิมและแบบคู่ รวมถึง CPLEX Barrier Optimizer |
| 5.0 | กันยายน พ.ศ. 2540 | รูปแบบหน่วยความจำใหม่เพื่อการผสานรวม C++ ที่ง่ายขึ้น |
| 4.0.5 | มีนาคม พ.ศ. 2539 | มีการนำเสนอ Parallel CPLEX Mixed Integer Solver |
| 4.0 | ธันวาคม พ.ศ. 2538 | ปรับปรุงการออกแบบอินเทอร์เฟซการเขียนโปรแกรมขั้นสูง (API) เพื่อรองรับแอปพลิเคชันที่ปลอดภัยต่อการทำงานแบบมัลติเธรด |
| 3.0.8 | มีนาคม พ.ศ. 2538 | มีการนำเสนอ Parallel CPLEX Barrier Solver |
| 3.0 | เมษายน พ.ศ. 2537 | มีการเปิดตัว CPLEX Barrier Solver แล้ว |
| 2.1 | มีนาคม พ.ศ. 2536 | แนะนำอัลกอริธึม CPLEX Presolve |
| 2.0 | เมษายน พ.ศ. 2535 | การปรับปรุงประสิทธิภาพ |
| 1.2 | 1991 | รองรับวิธีการซิมเพล็กซ์คู่และตัวเพิ่มประสิทธิภาพจำนวนเต็มผสม CPLEX |
| 1.0 | 1988 | วิธีซิมเพล็กซ์ดั้งเดิม |
ดูเพิ่มเติม
ลิงก์ภายนอก
- หน้าหลักของ IBM ILOG CPLEX Optimizer
- โฮมเพจ IBM ILOG CPLEX CP Optimizer
- ภาษาการเขียนโปรแกรมเพื่อการเพิ่มประสิทธิภาพ (OPL)
- ทดลองใช้งาน IBM ILOG CPLEX Optimization Studio เวอร์ชันพรีวิวฟรี
- ฟอรัมการเพิ่มประสิทธิภาพ IBM ILOG
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ซีพีเล็กซ์
IBM ILOG CPLEX Optimization Studio (มักเรียกกันอย่างไม่เป็นทางการว่า CPLEX ) เป็นซอฟต์แวร์แพ็ก เกจ สำหรับการเพิ่มประสิทธิภาพ
ประวัติศาสตร์
โปรแกรมเพิ่มประสิทธิภาพ CPLEX ได้รับการตั้งชื่อตาม วิธีการซิมเพล็กซ์ ที่นำมาใช้ใน ภาษาการเขียนโปรแกรม C อย่างไรก็ตาม ปัจจุบันยังรองรับ การเพิ่มประสิทธิภาพทางคณิตศาสตร์ ประเภทอื่น ๆ และมีอินเทอร์เฟซอื่นนอกเหนือจาก C ด้วย เดิมทีได้รับการพัฒนาโดย Robert E.
คุณสมบัติ
IBM ILOG CPLEX Optimizer แก้ ปัญหา การเขียนโปรแกรมจำนวนเต็ม ปัญหา การเขียนโปรแกรมเชิงเส้น ขนาดใหญ่มาก [ 3 ] โดยใช้รูปแบบดั้งเดิมหรือคู่ของ วิธีซิมเพล็กซ์ หรือ วิธีจุดภายใน กั้น ปัญหา การเขียนโปรแกรมกำลัง สองแบบนูนและไม่นูนและปัญหาที่มีข้อจำกัดกำลังสองแบบนูน...
ประวัติการเผยแพร่
ก่อนที่ IBM จะเข้าซื้อ ILOG ทีม CPLEX ได้เผยแพร่ประวัติการเผยแพร่ของ CPLEX [ 5 ]