คำถามติดแท็ก stability

การศึกษาการแพร่กระจายของข้อผิดพลาดในอัลกอริทึมเชิงตัวเลข

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

2
จะตรวจสอบได้อย่างไรว่าโซลูชันเชิงตัวเลขไปยัง PDE กำลังแปลงเป็นโซลูชันต่อเนื่องหรือไม่?
หละหลวมเท่าเทียมทฤษฎีบทระบุว่าความมั่นคงและเสถียรภาพของโครงการเชิงตัวเลขสำหรับปัญหาค่าเชิงเส้นเริ่มต้นเป็นเงื่อนไขที่จำเป็นและเพียงพอสำหรับการบรรจบกัน แต่สำหรับปัญหาที่ไม่เชิงเส้นวิธีการเชิงตัวเลขสามารถนำมารวมกันอย่างน่าเชื่อถือมากกับผลลัพธ์ที่ไม่ถูกต้องแม้จะมีความสอดคล้องและมีเสถียรภาพ ตัวอย่างเช่นกระดาษนี้แสดงให้เห็นว่าวิธีการสั่งซื้อ Godunov วิธีแรกที่นำไปใช้กับสมการน้ำตื้นเชิงเส้น 1D มาบรรจบกับการแก้ปัญหาที่ไม่ถูกต้อง เห็นได้ชัดว่าการรวมตัวเองภายใต้ตาข่ายและการปรับแต่งขั้นตอนเวลานั้นไม่เพียงพอ แต่โดยทั่วไปการแก้ปัญหาที่แน่นอนไม่สามารถใช้กับ PDE ที่ไม่เชิงเส้นได้ดังนั้นวิธีการหนึ่งจะกำหนดได้ว่าวิธีการเชิงตัวเลข

1
การยกเลิกภัยพิบัติใน Logum
ฉันพยายามใช้ฟังก์ชันต่อไปนี้ในทศนิยมที่มีความแม่นยำสองเท่าและมีข้อผิดพลาดสัมพัทธ์ต่ำ: l o g s u m (x,y) = บันทึก( ประสบการณ์( x ) + exp( y) )logsum(x,y)=log⁡(exp⁡(x)+exp⁡(y))\mathrm{logsum}(x,y) = \log(\exp(x) + \exp(y)) สิ่งนี้ถูกใช้อย่างกว้างขวางในแอปพลิเคชันทางสถิติเพื่อเพิ่มความน่าจะเป็นหรือความหนาแน่นของความน่าจะเป็นที่แสดงในพื้นที่บันทึก แน่นอนว่าหรือสามารถโอเวอร์โฟลว์หรืออันเดอร์โฟล์วได้ง่ายซึ่งอาจจะไม่ดีเพราะพื้นที่บันทึกถูกใช้เพื่อหลีกเลี่ยงการมีอันเดอร์โฟล์ในตอนแรก นี่เป็นวิธีแก้ปัญหาทั่วไป:exp ( y )ประสบการณ์( x )exp⁡(x)\exp(x)ประสบการณ์( y)exp⁡(y)\exp(y) l o g s u m (x,y) = x + l o g 1 p ( exp( y- x ) …

3
ระยะทางแบบยุคลิดใน Octave
ฉันอยากรู้ว่ามีวิธีที่รวดเร็วในการคำนวณระยะทางแบบยุคลิดของเวกเตอร์สองตัวใน Octave หรือไม่ ดูเหมือนว่าไม่มีฟังก์ชั่นพิเศษสำหรับสิ่งนั้นดังนั้นฉันควรใช้สูตรด้วยsqrtหรือไม่

1
เมื่อใดควรใช้วิธีการโดยนัยในการบูรณาการของไฮเพอร์โบลิก PDE
วิธีการเชิงตัวเลขสำหรับการแก้ PDE (หรือ ODEs) แบ่งออกเป็นสองประเภทกว้าง ๆ : วิธีการที่ชัดเจนและโดยนัย วิธีการโดยนัยช่วยให้การประทับเวลามีเสถียรภาพมากขึ้น แต่ต้องการงานมากขึ้นต่อขั้นตอน สำหรับไฮเพอร์โบลิก PDEs ภูมิปัญญาทั่วไปคือวิธีการโดยนัยมักจะไม่จ่ายเพราะการใช้การประทับเวลาที่มีขนาดใหญ่กว่าที่ได้รับอนุญาตจากเงื่อนไข CFL นำไปสู่ผลลัพธ์ที่ไม่ถูกต้องมาก อย่างไรก็ตามมีการใช้วิธีการโดยนัยในบางกรณี สำหรับแอปพลิเคชันที่ระบุควรเลือกใช้วิธีการที่ชัดเจนหรือโดยนัยอย่างไร

1
ประโยชน์ขององค์ประกอบที่มีความเสถียรขึ้นอยู่กับตาข่าย
หลังจากทำคณิตศาสตร์บางอย่างเกี่ยวกับความมั่นคงขององค์ประกอบในปัญหา 3D Stokes ฉันก็ตกใจเล็กน้อยที่รู้ว่าP2- P1P2-P1P_2-P_1ไม่เสถียรสำหรับตาข่าย tetrahedral โดยพลการ แม่นยำยิ่งขึ้นในกรณีที่คุณมีองค์ประกอบที่โหนดทั้งหมดและสามในสี่ด้านอยู่ในขอบเขตของโดเมนที่มีเงื่อนไข Dirichlet คุณจะได้เมทริกซ์เอกพจน์ ในความเป็นจริงแล้วเป็นเรื่องเล็กน้อยที่จะสรุปจากรูปแบบที่อ่อนแอของระบบสโตกส์ ฉันทดสอบรหัส Stokes เชิงพาณิชย์เพียงตัวเดียวที่ฉันสามารถเข้าถึง (COMSOL) และอนุญาตให้ฉันสร้างตาข่ายดังกล่าว เมื่อคลิกแก้ฉันได้รับ 'ข้อผิดพลาด: เมทริกซ์เอกฐาน' ตามที่คาดไว้ (ฉันอยู่ภายใต้การแสดงผลที่ COMSOL ใช้สำหรับโมดูลการไหลแบบคืบคลาน)P2- P1P2-P1P_2-P_1 เพื่อทดสอบเพิ่มเติมว่าปัญหาไม่เกี่ยวข้องกับการกำหนดค่าอื่นฉันลองใช้ตาข่ายต่อไปนี้และทุกอย่างทำงานตามที่คาดไว้ คำถาม:ข้อ จำกัด ประเภทนี้ถูกนำมาพิจารณาในเครื่องกำเนิดตาข่าย (แบบปรับตัวหรือไม่ปรับตัว) หรือไม่? ฉันเห็นจากรายงานการวิจัยต่าง ๆ ว่าองค์ประกอบนี้ดูเหมือนจะเป็นที่นิยมมาก ความไม่แน่นอนของขอบเขตแบบนี้โดยทั่วไปไม่สนใจว่าไม่มีนัยสำคัญเมื่อเลือกวิธีการใช้หรือไม่? ที่สำคัญกว่านั้นจริง ๆ แล้วมันหมายความว่าอย่างไรที่จะมีองค์ประกอบ จำกัด แน่นอนเช่นชนิดของความไม่แน่นอนขึ้นอยู่กับตาข่ายมีมากเกินไปเพื่อให้เราสรุปได้ว่าวิธีการที่ไม่ดี?

1
ทำให้งงพูดเกี่ยวกับภูมิภาคความมั่นคงของวิธี Runge-Kutta ลำดับที่ห้า
ฉันเจอข้อความที่น่าสงสัยในกระดาษ PJ van der Houwen การพัฒนาวิธี Runge-Kutta สำหรับสมการเชิงอนุพันธ์บางส่วน, Appl Num คณิตศาสตร์. 20: 261, 1996 บนบรรทัด 8ff ในหน้า 264, van der Houwen เขียน: "สำหรับพหุนามเทย์เลอร์นี่ก็หมายความว่าช่วงเวลาความมั่นคงในจินตนาการว่างเปล่าสำหรับ "p=1,2,5,6,9,10,⋯p=1,2,5,6,9,10,⋯p = 1, 2, 5, 6, 9, 10, \cdots โดยที่พหุนามเทย์เลอร์อ้างถึงพหุนามความเสถียร (การขยายส่วนปลายของประมาณ ) ของวิธี Runge-Kutta และ p คือลำดับ (ดูหน้า 263) ฉันคิดว่าฉันเข้าใจผิดบางอย่างเพราะวิธี Runge-Kutta ลำดับที่ห้าไม่มีช่วงเวลาของเสถียรภาพในจินตนาการที่ว่างเปล่าเท่าที่ฉันรู้ จากสิ่งที่ฉันจำได้ขีด จำกัด จินตภาพนั้นประมาณ 3.4 หรือมากกว่านั้นexp(x)exp⁡(x)\exp(x)x=0x=0x=0 …

1
จาโคเบียนที่ประมาณด้วยความแตกต่างที่แน่นอนสามารถทำให้เกิดความไม่เสถียรในวิธีการของนิวตันได้หรือไม่?
ฉันใช้ตัวแก้แบบย้อนกลับ - ออยเลอร์ในไพ ธ อน 3 (โดยใช้หมายเลข) เพื่อความสะดวกของฉันและเป็นแบบฝึกหัดฉันยังเขียนฟังก์ชั่นเล็ก ๆ ที่คำนวณความแตกต่างอัน จำกัด ของการไล่ระดับสีเพื่อที่ฉันจะได้ไม่ต้องพิจารณาจาโคเบียนในเชิงวิเคราะห์ (ถ้าเป็นไปได้!) ใช้คำอธิบายที่มีให้ในAscher และ Petzold 1998ฉันเขียนฟังก์ชันนี้ซึ่งกำหนดระดับความลาดชัน ณ จุดที่กำหนด x: def jacobian(f,x,d=4): '''computes the gradient (Jacobian) at a point for a multivariate function. f: function for which the gradient is to be computed x: position vector of the point for …

2
ทางเลือกในการวิเคราะห์เสถียรภาพของ von neumann สำหรับวิธีผลต่างอันตะ จำกัด
ผมทำงานเกี่ยวกับการแก้คู่หนึ่งมิติporoelasticityสมการ (โมเดลของ Biot) ให้เป็น: ∂−(λ+2μ)∂2u∂x2+∂p∂x=0−(λ+2μ)∂2u∂x2+∂p∂x=0-(\lambda+ 2\mu) \frac{\partial^2 u}{\partial x^2} + \frac{\partial p}{\partial x} = 0 ∂∂เสื้อ[ γp + ∂ยู∂x] - κη[ ∂2พี∂x2] =q( x , t )∂∂t[γp+∂u∂x]−κη[∂2p∂x2]=q(x,t)\frac{\partial}{\partial t} \left[ \gamma p + \frac{\partial u}{\partial x}\right] -\frac{\kappa}{\eta}\left[\frac{\partial^2 p}{\partial x^2}\right] =q(x,t) บนโดเมนและด้วยเงื่อนไขขอบเขต: Ω = ( 0 , 1 )Ω=(0,1)\Omega=(0,1) p = 0 …

3
ตรวจสอบ Heuristic ของความมั่นคงเชิงตัวเลข
สมมติว่าฉันมีฟังก์ชั่นที่มีคุณค่าจริง ๆของตัวแปรบางตัวx iที่ฉันต้องการประเมินตัวเลข โดยทั่วไปสูตรสำหรับfสามารถมีผลิตภัณฑ์, ปันส่วน, ฟังก์ชั่น trancendental เป็นต้นและจะใช้เวลานานในการตรวจสอบความเสถียรเชิงตัวเลขของการวิเคราะห์ หรืออย่างน้อยก็ต้องใช้เวลาในการฝึกฝน สมมติว่าฉันไม่ได้เทียบเท่าสั้นกว่าที่มีความมั่นคง guaruanteed มีขั้นตอนวิธีการในการวิเคราะห์เสถียรภาพเชิงตัวเลขของf หรือไม่f(x1,…,xN)f(x1,…,xN)f(x_1,\ldots ,x_N)xixix_iffffff. ฉันคิดว่าการเปรียบเทียบกับผลการตกตะกอนโดยพลการที่ได้รับโดยใช้ระบบพีชคณิตของคอมพิวเตอร์ สมมติว่าฟังก์ชั่นนี้จะใช้งานใน C โดยใช้ฟังก์ชั่น stdlib และความแม่นยำเดียวหรือสองครั้ง ฉันควรเปรียบเทียบปริมาณใดกับปริมาณที่ประมาณคุณภาพของการประมาณค่าที่ จำกัด ล่วงหน้า? ฉันจะกำหนดค่าวิกฤตของตัวแปรได้อย่างไร ฉันจะเลือกคอมไพเลอร์และการปรับแต่งคอมไพเลอร์เพื่อให้ผู้อื่นสามารถสร้างผลลัพธ์ได้อย่างง่ายดายได้อย่างไร? ... ฉันรู้ว่าการตั้งค่าปัญหาน่าจะเป็นการทั่วไปเพื่อให้คำตอบที่ดี แต่ฉันก็ยังคิดว่านี่เป็นปัญหาที่พบบ่อยในวิทยาการคอมพิวเตอร์และสงสัยว่ามีการอ้างอิงที่เสนอมาตรฐานเพื่อทำการวิเคราะห์ดังกล่าว
12 stability 

1
discretizations เชิงพื้นที่อะไรสำหรับการไหลที่ไม่สามารถบีบอัดได้ด้วยตาข่ายขอบเขตแบบแอนไอโซโทรปิก
การไหลจำนวนสูงของ Reynolds ทำให้เกิดเลเยอร์ขอบเขตที่บางมาก ถ้าความละเอียดผนังจะใช้ในการวนจำลองขนาดใหญ่อัตราส่วนอาจจะอยู่ในคำสั่งของ 6 หลายวิธีไม่เสถียรในระบอบการปกครองนี้เนื่องจากค่าคงที่ inf-sup ลดลงเป็นรากที่สองของอัตราส่วนกว้างยาวหรือแย่ลง ค่าคงที่ inf-sup มีความสำคัญเนื่องจากมันจะส่งผลกระทบต่อจำนวนเงื่อนไขของระบบเชิงเส้นและคุณสมบัติการประมาณค่าของสารละลายที่ไม่ต่อเนื่อง โดยเฉพาะอย่างยิ่งต่อไปนี้ขอบเขตเบื้องต้นเกี่ยวกับข้อผิดพลาดที่ไม่ต่อเนื่องถือ (Brezzi และ Fortin 1991)10610610^6 μ ∥ ยู - ยูชั่วโมง∥H1≤ C[ μβINFv ∈ V∥ u - v ∥H1+ infQ∈ Q∥ p - q∥L2]∥ p - pชั่วโมง∥L2≤ Cβ[ μβINFv ∈ V∥ u - v ∥H1+ infQ∈ Q∥ p - q∥L2]μ‖u−uh‖H1≤C[μβinfv∈V‖u−v‖H1+infq∈Q‖p−q‖L2]‖p−ph‖L2≤Cβ[μβinfv∈V‖u−v‖H1+infq∈Q‖p−q‖L2]\begin{split} …

1
ลำดับการดำเนินการอัลกอริธึมเชิงตัวเลข
ฉันได้อ่านแล้ว (1) การปฏิบัติที่มีเงื่อนไขควรดำเนินการก่อนที่จะมีสภาพที่ดี ตัวอย่างเช่นเราควรคำนวณเป็น( x - y ) zเนื่องจากการลบนั้นไม่ได้ถูกกำหนดเงื่อนไขในขณะที่การคูณไม่ได้x z- yZxz−yzxz-yz( x - y) z(x−y)z(x-y)z อย่างไรก็ตามการวิเคราะห์ข้อผิดพลาดลำดับแรกของอัลกอริทึมทั้งสองเผยให้เห็นว่าพวกเขาแตกต่างกันเพียงปัจจัยที่สาม (*) และฉันไม่เห็นว่าทำไมคนทั่วไปสามารถสรุปสิ่งนี้กับคำสั่ง (1) และฉันไม่เข้าใจความสำคัญของ คำสั่งของการดำเนินงาน คุณคิดว่าข้อความคือ (1) เป็นกฎที่ยอมรับได้และคุณมีคำอธิบายอื่น ๆ หรือไม่? *: โดยเฉพาะอย่างยิ่งรุ่นแรกมีข้อผิดพลาดสัมพัทธ์ที่ล้อมรอบ ในขณะที่ข้อผิดพลาดสัมพัทธ์ของรุ่นที่สองถูกล้อมรอบด้วยeps + 3 | x | + | Y|| x | - | Y|epseps+3|x|+|y||x|−|y|eps\text{eps}+3\frac{|x|+|y|}{|x|-|y|}\text{eps} 3 eps + | x | + | …

2
ฉันจะหาข้อมูลอ้างอิงที่ดีสำหรับคุณสมบัติความเสถียรของวิธีการหลายวิธีในการแก้พาราโบลา PDE ได้อย่างไร
ตอนนี้ฉันมีรหัสที่ใช้อัลกอริทึม Crank-Nicholson แต่ฉันคิดว่าฉันต้องการย้ายไปยังอัลกอริทึมที่มีลำดับสูงกว่าสำหรับการจับเวลา ฉันรู้ว่าอัลกอริทึม Crank-Nicholson มีความเสถียรในโดเมนที่ฉันต้องการทำงาน แต่ฉันกังวลว่าอัลกอริทึมอื่น ๆ อาจไม่เป็นเช่นนั้น ฉันรู้วิธีคำนวณพื้นที่เสถียรภาพของอัลกอริธึม แต่มันก็เป็นความเจ็บปวด ไม่มีใครทราบถึงการอ้างอิงที่ดีสำหรับคุณสมบัติความมั่นคงของอัลกอริทึมการจับเวลาจำนวนมากสำหรับพาราโบลา PDE หรือไม่?

2
การเพิ่มมาตรฐานเพื่อทำให้ SVD มีความเสถียรเท่าไร
ฉันใช้ SVD ของ Intel MKL ( dgesvdผ่าน SciPy) และสังเกตว่าผลลัพธ์จะแตกต่างกันอย่างมากเมื่อฉันเปลี่ยนความแม่นยำระหว่างfloat32และfloat64เมื่อเมทริกซ์ของฉันมีเงื่อนไขไม่ดี / ไม่เต็มอันดับ มีแนวทางเกี่ยวกับจำนวนขั้นต่ำของการทำให้เป็นมาตรฐานที่ฉันควรเพิ่มเพื่อให้ผลลัพธ์ที่ไม่ไวต่อการเปลี่ยนแปลงfloat32-> float64หรือไม่? โดยเฉพาะการทำ A = UDVTA=UDVTA=UDV^{T}ฉันเห็นว่า L∞L∞L_\infty บรรทัดฐานของ VTXVTXV^{T}Xย้ายประมาณ 1 เมื่อฉันเปลี่ยนความแม่นยำของระหว่างและfloat32float64L2L2L_2 บรรทัดฐานของ AAA คือ 10510510^5 และมีค่าลักษณะเฉพาะประมาณ 200 ศูนย์จากทั้งหมด 784 กำลังทำ SVD λ ฉัน+ AλI+A\lambda I + A กับ λ =10- 3λ=10−3\lambda=10^{-3} ทำให้ความแตกต่างหายไป

2
การวิเคราะห์ความมั่นคงของ Von Neumann บอกอะไรเราเกี่ยวกับสมการผลต่าง จำกัด เชิงเส้น
ฉันกำลังอ่านกระดาษ[1]ซึ่งพวกเขาแก้สมการไม่เชิงเส้นต่อไปนี้ โดยใช้วิธีผลต่างอันตะ พวกเขายังวิเคราะห์เสถียรภาพของโครงร่างโดยใช้การวิเคราะห์เสถียรภาพของ Von Neumann อย่างไรก็ตามตามที่ผู้เขียนตระหนักถึงสิ่งนี้สามารถใช้ได้กับ PDE เชิงเส้นเท่านั้น ดังนั้นผู้เขียนทำงานรอบนี้ด้วย "แช่แข็ง" ระยะที่ไม่ใช่เชิงเส้นคือพวกเขาแทนที่ระยะยาวกับที่คือ "ถือว่าเป็นตัวแทนของค่าคงที่ในประเทศของ ."ยูเสื้อ+ยูx+ uยูx-ยูx x t= 0ut+ux+uux−uxxt=0\begin{equation} u_t + u_x + uu_x - u_{xxt} = 0 \end{equation}ยูยูxuuxuu_xยูยูxUuxUu_xยูUUยูuu ดังนั้นคำถามของฉันคือสองเท่า: 1: วิธีการตีความวิธีนี้และทำไมมัน (ไม่) ทำงานอย่างไร 2: เราสามารถแทนที่คำว่าด้วยคำว่าโดยที่ถูก "พิจารณาว่าเป็นตัวแทนค่าคงที่ในท้องถิ่นของ "ยูยูxuuxuu_xยูยูxuUxuU_xยูxUxU_xยูxuxu_x อ้างอิง Eilbeck, JC และ GR McGuire "การศึกษาเชิงตัวเลขของสมการคลื่นยาวแบบปกติ I: วิธีเชิงตัวเลข" วารสารฟิสิกส์เชิงคำนวณ 19.1 (1975): 43-57
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.