Sebastianpeitz/quasimodo

ساخت وبلاگ

این تعهد متعلق به هیچ شعبه ای در این مخزن نیست و ممکن است متعلق به یک چنگال در خارج از مخزن باشد.

نام در حال استفاده

یک برچسب در حال حاضر با نام شاخه ارائه شده وجود دارد. بسیاری از دستورات GIT نام برچسب و شاخه را می پذیرند ، بنابراین ایجاد این شاخه ممکن است باعث رفتار غیر منتظره شود. آیا مطمئن هستید که می خواهید این شاخه را ایجاد کنید؟

  • محلی
  • مکاشه

با استفاده از URL وب از Git یا Checkout با SVN استفاده کنید.

با CLI رسمی ما سریع کار کنید. بیشتر بدانید.

ورود به سیستم لازم

لطفاً برای استفاده از برنامه های کد وارد سیستم شوید.

راه اندازی دسک تاپ GitHub

اگر هیچ اتفاقی نمی افتد ، دسک تاپ GitHub را بارگیری کنید و دوباره امتحان کنید.

راه اندازی دسک تاپ GitHub

اگر هیچ اتفاقی نمی افتد ، دسک تاپ GitHub را بارگیری کنید و دوباره امتحان کنید.

راه اندازی Xcode

اگر هیچ اتفاقی نمی افتد ، Xcode را بارگیری کنید و دوباره امتحان کنید.

راه اندازی کد ویژوال استودیو

فضای کد شما یک بار آماده خواهد شد.

مشکلی برای تهیه فضای کدگذاری شما وجود داشت ، لطفاً دوباره امتحان کنید.

آخرین تعهد

آمار git

فایل ها

بارگیری آخرین اطلاعات متعهد انجام نشد.

readme. md

نویسندگان: سباستین پیتز و کاترینا بیکر (گروه ریاضیات ، دانشگاه پادربورن)

یک اسکریپت مستقل intorudctory را می توان در نوت بوک Jupyter standalone_duffing_edmd. ipynb در پوشه اصلی یافت.

نمونه های مختلف (از جمله نمونه های مقاله) در پوشه تست ها موجود است. مدل های مرتبط را می توان در پوشه مدل ها یافت یا در مورد ODE ها - مستقیماً در پرونده اصلی اجرا می شوند.

الگوریتم quasimodo برای تبدیل جهانی مدلهای پیش بینی کننده به سیستم های کنترل زمان گسسته با ورودی های مداوم و یک عملکرد هدف از نوع ردیابی طراحی شده است. برای دستیابی به این هدف ، ما از چندین تحول از مشکل بهینه سازی استفاده می کنیم:

  1. کمیت مجموعه کنترل U به یک مجموعه محدود V با ورودی های مختلف کنترل ثابت ، تبدیل سیستم کنترل غیر خودمختار به سیستم های خودمختار M. این یک مشکل کنترل بهینه و مخلوط مخلوط (MIOCP) را به همراه دارد ،
  2. شبیه سازی (یعنی جمع آوری داده ها) از سیستم های خودمختار M با ورودی های ثابت ،
  3. مدل سازی سیستم های M با استفاده از یک تکنیک مدل سازی جانشین دلخواه ،
  4. آرامش MIOCP به یک مشکل کنترل مداوم ،
  5. بهینه سازی مشکل آرام.

تمام ویژگی های اصلی در quasimodo. py پیاده سازی شده است ، و برخی از عملکردهای یاور برای تجسم در تجسم . py اجرا می شوند. برای اطلاعات بیشتر در مورد گزینه های مختلف هنگام ایجاد مدل ها یا مجموعه داده ها ، لطفاً به نظرات مقدماتی تعاریف کلاس مختلف مراجعه کنید.

مدل هایی برای سیستم واقعی

پرونده های مدل معمولاً در مدل های زیر پوشه ایجاد می شوند. آنها باید تابعی به نام Simulatemodel (Y0 ، T0 ، U ، Model) داشته باشند ، جایی که ورودی ها حالت اولیه Y0 در زمان اولیه T0 هستند و کنترل آرایه ای از اندازه (P + 1 ، DIM (U)) است ، کجاP تعداد مراحل پیش بینی (یعنی افق زمانی) است. آخرین مدل ورودی از نوع کلاس کلاس است و شامل پارامترهای افزودنی و همچنین جزئیات لازم در مورد گسستهای عددی و غیره است. باید در پرونده اصلی ایجاد شود ، مثالها را ببینید. این عملکرد به ترتیب Y ، Z ، T و مدل را برمی گرداند ، جایی که Y و Z به ترتیب وضعیت کامل و مقدار مشاهده شده است.

هنگام شروع یک کلاس مدل با فراخوانی کلاس کلاس ، باید چندین متغیر مشخص شود:

  • ورودی مدل ، که می تواند یک تماس عملکردی باشد (به عنوان مثال ، سمت راست یک ODE) یا نام یک فایل PY ذخیره شده در مدل ها (به عنوان مثال ، "Burgers. py")
  • مرحله H H برای راه حل عددی مدل
  • محدودیت های کنترل Umin و Umax
  • پارامترهای اضافی (اختیاری)
  • ابعاد مشاهده ، یعنی Dimz
  • نوع اندازه گیری کنترل از طریق Typeugrid ("مکعب" ، "Cubecenter" ، "Centerstar" یا "OneSidedstar" ، توضیحات را در quasimodo. py برای جزئیات مشاهده کنید) و ngridu (که تعداد نقاط گسسته سازی را در هر بعد فضایی توصیف می کند)

مدل های Surrogate معمولاً در Surrogatemodels زیر پوشه ایجاد می شوند. آنها باید توابع را مهار کنند

  • برنامه زمانبندی
  • Creatsurrogatemodel
  • به روزرسانی هایورگاتمودل (اختیاری)

TimetMap (Z0 ، T0 ، IU ، ModelData) (یعنی نقشه زمان-T مدل کاهش یافته) ، جایی که Z0 و T0 شرایط اولیه هستند و IU از آن است و شاخص سیستم خودمختار مورد استفاده را نشان می دهد. ModelData از نوع Classsurrogatemodel است و شامل تمام اطلاعات مدل جانشین لازم است. باید از قبل ایجاد شود. روال Z ، T و ModelData را برمی گرداند

CreateSurrogatemodel (ModelData ، Data) روال است که در آن مدل جانشین با استفاده از داده هایی که از طریق داده های نوع Classcontroldataset ارائه می شود ، در ModelData ایجاد و ذخیره می شود. عملکرد THE و نسخه به روز شده ModelData.

به روزرسانی هایورگاتمودل (ModelData ، Z ، U ، IU) برای به روزرسانی یک یا چند مدل در طول روال MPC با استفاده از داده های جمع آوری شده استفاده می شود. در اینجا ، Z ، U و IU سری زمانی هستند که برای به روزرسانی مدل استفاده می شوند.

داده ها در متغیر نوع کلاس ClassControldataset ، به عنوان مثال ، DataSet = ClassControldataset (H = 0. 1 ، T = 10) ذخیره می شوند ، که در آن مسیر 10 ثانیه با افزایش زمان 0. 1 ثانیه است.

مسیرهای ورودی با فراخوانی ، به عنوان مثال ، uTrain ، iUtrain = dataSet. CreateControlance (مدل ، typesequence = 'piecewiseconstant' ، nhmin = 1 ، nhmax = 5) ایجاد می شوند. در این حالت ، ورودی به صورت ثابت ثابت است ، ورودی ها در طی یک تا پنج مرحله زمانی ثابت باقی می مانند.

داده ها توسط شبیه سازی هنگام فراخوانی CreateATA (به عنوان مثال ، DataSet. CreateData (مدل = مدل ، u = utrain ، savePath = pathdata) ایجاد می شود ، جایی که مدل به همراه مجموعه ای از مسیرهای ورودی و یک مسیر بالقوه برای ذخیره سازی به روال منتقل می شود. داده ها برای استفاده بعدی).

داده های منتقل شده به مدل سازی جانشین می توانند با فراخوانی آماده شده ، به عنوان مثال ، data = dataset. preparedata (مدل ، روش = 'dx' ، rawdata = dataset. rawdata ، nlag = nlag ، ndelay = 0) تهیه شود. در اینجا ، متغیر روش می گوید چگونه داده ها را پردازش کنیم (در این حالت ، ما مسیرهای X و مشتقات زمان آنها DX را دریافت می کنیم ؛ اگر "Y" را می نویسیم ، مسیرها و نسخه زمان تغییر آنها را می گیریم. افزایش زمان تعریف می شودتوسط فاکتور nlag که در آن مرحله ساعت H ضرب می شود.

OpenFoam (فقط روی سیستم های لینوکس کار می کند (آزمایش شده با اوبونتو 18. 04 و 20. 04)

مثالهای دینامیک سیال همه از حل کننده منبع باز OpenFoam استفاده می کنند. این کد با نسخه OpenFoam v1912 آزمایش شده است. عملکرد مورد نیاز در پرونده های موجود در زیر پوشه OpenFoam اجرا می شود. برای استفاده از OpenFoam ، پیکربندی در ConfigOpenfoam. py باید با مسیرهای صحیح سازگار شود. تنظیمات مختلف مشکل در پوشه های جداگانه در OpenFoam/مشکلات ذخیره می شوند و ورودی کنترل باید از طریق پرونده های ASCII با Names Control0 ، Control1 ، تحقق یابد. که در پوشه اصلی تنظیم مشکل قرار دارند.

جعبه ابزار D3S توسط Stefan Klus نیز گنجانده شده است. مدل های Surrogate با استفاده از EDMD و Generator EDMD از برخی از روالهای اجرا شده در D3S استفاده می کنند.

در باره

ساخت سیستم های کنترل از مدلهای پیش بینی از طریق کمیت ، شبیه سازی ، مدل سازی ، بهینه سازی

سیگنالهای معاملاتی...
ما را در سایت سیگنالهای معاملاتی دنبال می کنید

برچسب : نویسنده : عارف لرستانی بازدید : 52 تاريخ : پنجشنبه 10 فروردين 1402 ساعت: 17:40