เวลาที่จะใช้และไม่ใช้วิธีการใด ๆ ในการเพิ่มประสิทธิภาพสูงสุดนั้นขึ้นอยู่กับประเภทข้อมูลที่คุณมี nlm
จะทำงานได้ดีถ้าพื้นผิวที่มีโอกาสไม่ได้เป็น "หยาบ" เป็นพิเศษ nlminb
จัดเตรียมวิธีการ จำกัด ค่าพารามิเตอร์ให้กับกล่องขอบเขตเฉพาะ optim
ซึ่งอาจเป็นเครื่องมือเพิ่มประสิทธิภาพที่ใช้มากที่สุด ตัวอย่างเช่น BFGS, L-BFGS-B และการหลอมจำลอง (ผ่านตัวเลือก SANN) ซึ่งอาจมีประโยชน์หากคุณมีปัญหาในการปรับให้เหมาะสมยาก นอกจากนี้ยังมีตัวเพิ่มประสิทธิภาพจำนวนมากใน CRAN rgenoud
ตัวอย่างเช่นให้อัลกอริทึมทางพันธุกรรมสำหรับการเพิ่มประสิทธิภาพDEoptim
ใช้รูทีนการเพิ่มประสิทธิภาพทางพันธุกรรมที่แตกต่างกัน อัลกอริธึมทางพันธุกรรมอาจช้าไปบรรจบกัน แต่โดยปกติจะรับประกันว่าจะมาบรรจบกัน (ในเวลา) แม้ว่าจะมีความไม่ต่อเนื่องในโอกาส ฉันไม่รู้DEoptim
แต่rgenoud
ถูกตั้งค่าให้ใช้snow
สำหรับการประมวลผลแบบขนานซึ่งช่วยได้บ้าง
ดังนั้นคำตอบที่ค่อนข้างน่าพอใจก็คือคุณควรใช้nlm
หรือเครื่องมือเพิ่มประสิทธิภาพอื่น ๆ หากมันใช้ได้กับข้อมูลที่คุณมี หากคุณมีความเป็นไปได้ที่จะทำตามขั้นตอนใด ๆ ที่ได้รับจากoptim
หรือnlm
จะให้ผลลัพธ์แบบเดียวกัน บางคนอาจเร็วกว่าคนอื่น ๆ ซึ่งอาจหรือไม่สำคัญขึ้นอยู่กับขนาดของชุดข้อมูลและอื่น ๆ สำหรับจำนวนของพารามิเตอร์ที่รูทีนเหล่านี้สามารถจัดการได้ฉันไม่รู้ แต่ก็อาจจะค่อนข้างน้อย แน่นอนยิ่งคุณมีพารามิเตอร์มากเท่าใดคุณก็ยิ่งมีแนวโน้มที่จะประสบปัญหาการลู่เข้าหากันมากขึ้นเท่านั้น