คำถามติดแท็ก symbolic-computation

17
มีตัวแก้ปัญหาการเขียนโปรแกรมแบบไม่เชิงเส้นคุณภาพสูงสำหรับ Python หรือไม่?
ฉันมีปัญหาการเพิ่มประสิทธิภาพทั่วโลกที่ไม่ท้าทายเพื่อแก้ปัญหา ปัจจุบันผมใช้กล่องเครื่องมือเพิ่มประสิทธิภาพของ MATLAB (โดยเฉพาะfmincon()กับอัลกอริทึม = 'sqp') ซึ่งมีประสิทธิภาพมาก อย่างไรก็ตามรหัสของฉันส่วนใหญ่อยู่ใน Python และฉันก็ชอบที่จะเพิ่มประสิทธิภาพใน Python ด้วยเช่นกัน มีตัวแก้ NLP ที่มีการผูก Python ที่สามารถแข่งขันได้fmincon()หรือไม่ มันจะต้อง สามารถรับมือกับความไม่เสมอภาคและความไม่เท่าเทียมกันได้ ไม่ต้องการให้ผู้ใช้จัดหายาโคบ ไม่เป็นไรหากไม่รับประกันว่าจะมีประสิทธิภาพระดับโลก ( fmincon()ไม่) fmincon()ฉันกำลังมองหาบางสิ่งบางอย่างที่ทนทานลู่ไปยังท้องถิ่นที่เหมาะสมแม้สำหรับความท้าทายปัญหาและแม้ว่ามันจะช้ากว่าเล็กน้อย ฉันได้พยายามแก้หลายที่ให้บริการผ่าน OpenOpt และพบว่าพวกเขาจะด้อยกว่าของ fmincon/sqpMATLAB เพียงเพื่อเน้นฉันมีสูตรเวิ้งว้างและแก้ปัญหาที่ดี เป้าหมายของฉันคือการเปลี่ยนภาษาเพื่อให้เวิร์กโฟลว์มีความคล่องตัวมากขึ้น เจฟฟ์ชี้ให้เห็นว่าคุณลักษณะบางอย่างของปัญหาอาจเกี่ยวข้องกัน พวกเขาคือ: 10-400 ตัวแปรการตัดสินใจ 4-100 ข้อ จำกัด ความเท่าเทียมกันของพหุนาม (ดีกรีพหุนามมีช่วงตั้งแต่ 1 ถึงประมาณ 8) จำนวนข้อ จำกัด ของความไม่เท่าเทียมกันที่มีเหตุผลเท่ากับจำนวนตัวแปรการตัดสินใจประมาณสองเท่า ฟังก์ชั่นวัตถุประสงค์เป็นหนึ่งในตัวแปรการตัดสินใจ ชาวจาโคเบียนแห่งข้อ จำกัด ความเท่าเทียมมีความหนาแน่นสูงเช่นเดียวกับชาวจาโคเบียนแห่งข้อ จำกัด …

6
แพคเกจซอฟต์แวร์สัญลักษณ์สำหรับการแสดงออกของเมทริกซ์?
เรารู้ว่านั้นสมมาตรและเป็นบวกแน่นอน เรารู้ว่าเป็นมุมฉาก:BAA\mathbf ABB\mathbf B คำถาม:สมมาตรและเป็นบวกแน่นอน? คำตอบ: ใช่B⋅A⋅B⊤B⋅A⋅B⊤\mathbf B \cdot\mathbf A \cdot\mathbf B^\top คำถาม: คอมพิวเตอร์บอกเราได้ไหม คำตอบ: อาจเป็นไปได้ มีระบบพีชคณิตเชิงสัญลักษณ์ (เช่น Mathematica) ที่จัดการและเผยแพร่ข้อเท็จจริงเกี่ยวกับเมทริกซ์หรือไม่? แก้ไข: เพื่อความชัดเจนฉันถามคำถามนี้เกี่ยวกับเมทริกซ์ที่นิยามไว้อย่างเป็นนามธรรม คือฉันไม่มีรายการที่ชัดเจนสำหรับและฉันเพิ่งรู้ว่าพวกเขาทั้งเมทริกซ์และมี attribues เฉพาะเช่น symetric บวกแน่นอน ฯลฯ ...BAAABBB

8
มีซอฟต์แวร์โอเพ่นซอร์สหรือซอฟต์แวร์ที่เข้าถึงได้ง่ายซึ่งสามารถลดความซับซ้อนของนิพจน์พีชคณิตเช่น
ฉันคำนวณสิ่งต่าง ๆ ด้วยมือเสมอ แต่ตอนนี้สหายของฉันเริ่มน่ารังเกียจและทำแบบฝึกหัดซ้ำ ๆ มากมายที่เกี่ยวข้องเพียงแค่เสียบสิ่งต่าง ๆ ในลักษณะที่แสดงออกมาด้านบน ฉันสนใจซอฟต์แวร์โอเพนซอร์ซเช่น Python หรือ R เพื่อทำให้สมการเหล่านี้ง่ายขึ้น ฉันพยายามใช้ Wolfram Alphaแต่ฉันไม่ประสบความสำเร็จ ชุดซอฟต์แวร์โอเพนซอร์ซใดที่สามารถทดแทนนิพจน์ในสมการx 2 +2x+3และทำให้ผลลัพธ์ง่ายขึ้นหรือไม่ โดยเฉพาะฉันกำลังมองหาแพคเกจซอฟต์แวร์ที่มีคำสั่งบางอย่างx = 2-√t - 1x=2เสื้อ-1x=\sqrt{2}t-1x2+ 2 x + 3x2+2x+3x^{2}+2x+3simplify

2
การสร้างจุดรวมและตุ้มน้ำหนักอัตโนมัติสำหรับรูปสามเหลี่ยมและเตตราดรา
โดยทั่วไปแล้วเราจะปรึกษากระดาษหรือหนังสือเพื่อหาจุดรวมและน้ำหนักสำหรับหน่วยสามเหลี่ยมและเตตราฮัดรา ฉันกำลังมองหาวิธีในการคำนวณคะแนนและน้ำหนักดังกล่าวโดยอัตโนมัติ ตัวอย่างโค้ดMathematicaต่อไปนี้คำนวณน้ำหนักและคะแนนการรวมสำหรับองค์ประกอบหน่วยบรรทัด (รูปสี่เหลี่ยม / รูปหกเหลี่ยม): unitGaussianQuadraturePoints[points_] := Sort[x /. Solve[Evaluate[LegendreP[points, x] == 0], {x}], ! OrderedQ[N[{#1, #2}]] &]; unitGaussianQuadratureWeights[points_] := Module[{gps, f, int, integr, vars, eqns}, gps = unitGaussianQuadraturePoints[points]; f[0, 0] := 1; f[0., 0] := 1.; f[x_, n_] := x^n; int = Integrate[f[x, #], x] & /@ Range[0, …

3
มาตรฐานสำหรับฐานGröbnerและโซลูชันระบบพหุนาม
ในคำถามล่าสุดของระบบการแก้สมการพีชคณิตเชิงเส้น 7 สัญลักษณ์สัญลักษณ์ Brian Borchers ได้ทำการทดลองยืนยันว่า Maple สามารถแก้ปัญหาระบบพหุนามที่ Matlab / Mupad ไม่สามารถจัดการได้ ฉันเคยได้ยินในอดีตจากคนที่ทำงานในสาขาที่ Maple มีการใช้งานฐานGröbnerและอัลกอริธึมที่มีคุณภาพสูง ดังนั้นฉันถูกล่อลวงให้แนะนำ "Matlab ช้าในปัญหาประเภทนี้เปลี่ยนเป็น Maple" แต่ฉันต้องการให้มีข้อมูลสำรองคำสั่งนี้ มีชุดของผลการเปรียบเทียบเปรียบเทียบความเร็วและประสิทธิผลของการใช้งานพื้นฐานของGröbnerและโซลูชั่นระบบพหุนามในระบบพีชคณิตคอมพิวเตอร์ต่าง ๆ หรือไม่? (Maple, Mathematica, กล่องเครื่องมือสัญลักษณ์ของ Matlab และอื่น ๆ )

5
วิธีจัดการกับความซับซ้อนในรหัสตัวเลขเช่นเมื่อต้องรับมือกับเมทริกซ์จาโคเบียนขนาดใหญ่?
ฉันกำลังแก้ไขระบบที่ไม่ใช่เชิงเส้นของสมการคู่และได้คำนวณจาโคเบียนของระบบที่แยกส่วน ผลลัพธ์มีความซับซ้อนมากด้านล่างคือ (เท่านั้น!) 3 คอลัมน์แรกของเมทริกซ์3 × 93×93\times 9 (ความซับซ้อนเกิดขึ้นส่วนหนึ่งเนื่องจากโครงร่างตัวเลขต้องมีการปรับแบบเอ็กซ์โปเนนเชียลเพื่อความมั่นคง) ฉันมีคำถามทั่วไปเกี่ยวกับการใช้รหัสตัวเลขโดยใช้ Jacobians ฉันสามารถไปข้างหน้าและนำเมทริกซ์นี้มาใช้ในโค้ด แต่สัญชาตญาณของฉันบอกให้ฉันคาดหวังว่าจะมีการดีบักน่าเบื่อสองสามวัน (อาจเป็นสัปดาห์!) เนื่องจากความซับซ้อนที่แท้จริงและความหลีกเลี่ยงไม่ได้ในการแนะนำข้อผิดพลาด ใครจะรับมือกับความซับซ้อนเช่นนี้ในรหัสตัวเลขดูเหมือนว่าหลีกเลี่ยงไม่ได้! คุณใช้การสร้างรหัสอัตโนมัติจากแพ็คเกจสัญลักษณ์ (จากนั้นปรับแต่งโค้ดด้วยมือ)? ก่อนอื่นฉันวางแผนที่จะดีบัก Jacobian เชิงวิเคราะห์ด้วยการประมาณความแตกต่างอัน จำกัด ฉันควรทราบถึงข้อผิดพลาดหรือไม่? คุณจัดการกับปัญหาที่คล้ายกันในรหัสของคุณได้อย่างไร ปรับปรุง ฉันกำลังเขียนโค้ดนี้ใน Python และใช้sympyเพื่อสร้าง Jacobian บางทีฉันสามารถใช้คุณสมบัติการสร้างรหัสได้หรือไม่

5
การแก้ปัญหาเชิงสัญลักษณ์ของระบบสมการไม่เชิงเส้น 7 ตัว
ฉันมีระบบของสมการเชิงอนุพันธ์สามัญ - 7 สมการและพารามิเตอร์ ~ 30 ที่ควบคุมพฤติกรรมของพวกเขาเป็นส่วนหนึ่งของแบบจำลองทางคณิตศาสตร์ของการแพร่กระจายของโรค ฉันชอบที่จะหารัฐที่มั่นคงสำหรับสมการเหล่านั้นเปลี่ยนdx/dt = rest of the equationไป0 = equationสำหรับแต่ละสมการทำให้มันเป็นปัญหาพีชคณิตตรงไปตรงมา สิ่งนี้สามารถทำได้ด้วยมือ แต่ฉันไม่ดีที่การคำนวณแบบนั้น ฉันได้ลองใช้ Mathematica ซึ่งสามารถจัดการกับปัญหานี้ในรุ่นที่เล็กกว่า ( ดูที่นี่ ) แต่ Mathematica กำลังจะหยุดปัญหานี้ มีวิธีที่มีประสิทธิภาพ / ประสิทธิผลมากกว่าในการเข้าถึงสิ่งนี้ ระบบคณิตศาสตร์เชิงสัญลักษณ์ที่มีประสิทธิภาพมากขึ้น? ข้อเสนอแนะอื่น ๆ ? อัพเดตเล็กน้อย (21 มีนาคม): เป้าหมายคือการแก้ปัญหาเชิงสัญลักษณ์ - คำตอบเชิงตัวเลขนั้นดีแต่ในตอนนี้เป้าหมายสุดท้ายคือรุ่นสัญลักษณ์ มีอย่างน้อยหนึ่งดุลยภาพ ฉันยังไม่ได้นั่งลงและพิสูจน์สิ่งนี้ แต่จากการออกแบบมันควรมีอย่างน้อยหนึ่งเรื่องที่ไม่มีใครติดเชื้อในตอนเริ่มต้น อาจไม่มีอะไรเลยนอกเหนือจากนั้น แต่นั่นจะทำให้ฉันเป็นเนื้อหาเป็นอย่างอื่น ด้านล่างคือชุดของสมการที่แท้จริงที่ถูกพูดถึง โดยสรุปฉันกำลังมองหานิพจน์สัญลักษณ์สำหรับการแก้ปัญหาของระบบของ 7 สมการกำลังสองใน 7 ตัวแปร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.