一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

構(gòu)建大規(guī)模Simulink模型的標(biāo)準(zhǔn)化最佳實踐

MATLAB ? 來源:MATLAB ? 2025-04-24 13:03 ? 次閱讀

| 作者 Brad Hieb 和 Erick Saldana Sanvicente,MathWorks

(本文采用了機器翻譯)

隨著系統(tǒng)規(guī)模和復(fù)雜性的增長,工程團隊面臨著一系列在小規(guī)模上不存在的全新挑戰(zhàn)。

規(guī)模的大幅擴大幾乎總是需要方法的轉(zhuǎn)變,不僅是范圍上的,而且是種類上的。此原則也適用于使用基于模型的設(shè)計處理 Simulink 模型時。如果不遵循最佳實踐,從簡單的概念驗證模型過渡到具有數(shù)十萬個塊的大規(guī)模模型時,一系列問題開始出現(xiàn),包括模型架構(gòu)、數(shù)據(jù)管理、接口、文件管理和仿真性能不佳的問題。這些大型模型的構(gòu)成要素可能很小,通常由不同的個人、團隊甚至部門開發(fā)。當(dāng)有標(biāo)準(zhǔn)化并且遵循最佳實踐時,這些模型可以順利擴大規(guī)模。

本文介紹了一組最佳實踐,用于解決在 Simulink 中處理大型復(fù)雜模型時經(jīng)常遇到的挑戰(zhàn)。由于這個主題本身相當(dāng)廣泛,這里的目標(biāo)不是提供詳細(xì)的規(guī)定性指導(dǎo),而是介紹每種最佳實踐的基礎(chǔ)知識以及可供探索的其他資源的鏈接,以便更深入地了解如何應(yīng)用它。

使用模型引用進行模型組件化

當(dāng)我們與客戶合作時,經(jīng)常會看到大型模型缺乏有意義的組件化。團隊從一個簡單的模型開始測試想法;隨著時間的推移,新的元素或特性被添加,所有的工作都在一個單一的、整體的模型文件

中完成,而這個模型文件很快就會變得難以處理。在 Simulink 中,有幾種方法可以組件化大型模型,最佳方法將取決于所考慮的具體用例。例如,如果一個團隊只是想直觀地組織一組塊或組件,他們可能會選擇模型內(nèi)虛擬子系統(tǒng)。對于想要創(chuàng)建廣泛使用且不經(jīng)常更改的實用程序的其他團隊來說,鏈接子系統(tǒng)(或庫)是一個更好的選擇。如果目標(biāo)是開發(fā)或仿真一個組件作為獨立模型,那么模型參考是最好的方法。

對于大規(guī)模模型來說,模型引用也是組件化的關(guān)鍵。原因之一是 Simulink 中的模型引用使團隊能夠?qū)⒔M件作為獨立模型并行開發(fā)。每個組件都具有完整的功能且可仿真,并保存在自己的 SLX 文件中,因此每個團隊都可以獨立工作而不會干擾其他團隊的工作 - 當(dāng)整個設(shè)計都捕獲在一個文件中時,這幾乎是不可能做到的。同樣重要的是,這些獨立的參考模型可以放置在更大的模型內(nèi),以便于集成(圖 1)。該架構(gòu)可以使用參考模型的緩存實例和增量構(gòu)建來減少構(gòu)建時間。它還允許使用加速器和快速加速器模式,下面關(guān)于性能的部分將詳細(xì)介紹。

28fd8f92-1aab-11f0-9310-92fbcf53809c.png

圖 1. 模型 BMS_Software 和 Battery_Model 可以獨立開發(fā),然后放置(或引用)在 BMS_ClosedLoop 模型。

使用模型引用進行模型組件化

讓我們重新考慮一下導(dǎo)致組件化問題的相同場景:一個團隊從一個簡單的模型開始作為早期的概念證明,然后隨著時間的推移不斷對其進行完善。對于一個簡單的模型,許多工程師會將變量、參數(shù)和其他數(shù)據(jù)存儲在基礎(chǔ)工作區(qū)。這種方法適用于非正式工作流程、快速參數(shù)調(diào)整、快速原型設(shè)計、單一開發(fā)人員工程或需要參數(shù)普遍可見性的用例。然而,隨著模型范圍和復(fù)雜性的增加,依賴基礎(chǔ)工作區(qū)進行數(shù)據(jù)管理會帶來一些缺點。例如,由于每次工程師關(guān)閉會話時基礎(chǔ)工作區(qū)都會被清除,因此必須手動保存為 MATLAB 代碼 (.m) 或 MATLAB 文件 (.mat)。

數(shù)據(jù)字典比基礎(chǔ)工作區(qū)更適合管理涉及大型模型、分布式開發(fā)或范圍數(shù)據(jù)的工程數(shù)據(jù)。出現(xiàn)這種情況的原因有幾個(見圖2)。第一是數(shù)據(jù)持久化。數(shù)據(jù)以特定的文件格式保存在數(shù)據(jù)字典 (.sldd) 文件中,使團隊能夠獨立于模型和基礎(chǔ)工作區(qū)定義、管理和更新數(shù)據(jù)。其次,團隊可以將數(shù)據(jù)分成多個字典,以進一步改善數(shù)據(jù)組織。第三,數(shù)據(jù)字典在變更跟蹤工作流中運行良好,團隊可以查看進行了哪些更改、何時進行更改以及由誰進行更改,甚至可以在需要時恢復(fù)到早期版本。

291b9d48-1aab-11f0-9310-92fbcf53809c.jpg

圖 2. 處理大型模型時數(shù)據(jù)字典的優(yōu)勢。

這里需要注意的是,使用基礎(chǔ)工作區(qū)和數(shù)據(jù)字典之間的選擇并不是全有或全無的。這兩種方法可以共存,因此團隊可以隨著時間的推移逐漸從基礎(chǔ)工作區(qū)遷移到一個或多個數(shù)據(jù)字典。

簡化與總線的接口

在組件化、分層模型中連接子系統(tǒng)時,最初可能看起來最直接的方法是針對從一個組件傳遞到另一個組件的每個元素使用單獨的信號線。當(dāng)然,這適用于簡單的界面,但這種方法很快就會導(dǎo)致模型變得比必要的更復(fù)雜、更混亂、更難管理。

在 Simulink 中,總線可以通過用一條線表示一組信號(或元素)來簡化界面并減少混亂,就像幾根電線捆綁在一起一樣。通過一個簡單的例子很容易看出它的價值。考慮一個用于識別電池系統(tǒng)中異常情況的故障檢測組件。該組件有 11 種不同的輸入,包括最大和最小電池電壓、最大和最小電池溫度、接觸器狀態(tài)、電池組電壓和電流以及電流限制。雖然創(chuàng)建具有 11 個獨立輸入端口的組件是可能的,但將輸入分成邏輯組并為每個組使用一個總線更為清晰。例如,由于電池電壓和電池溫度信號均來自同一組件且彼此相關(guān),因此將它們分組為單個四元件總線是有意義的(圖 3)。顯然,這是一個相對簡單的例子,但它說明了如何使用總線來簡化組件接口,而且更廣泛地說,簡化復(fù)雜模型。

292d7360-1aab-11f0-9310-92fbcf53809c.png

圖 3. 故障檢測組件已更新,使用總線而不是單獨的信號作為輸入。

利用工程改善文件管理

遵循迄今為止概述的最佳實踐的一個副作用是必須管理的文件數(shù)量增加。當(dāng)整個設(shè)計都采用單一模型時,團隊需要管理的文件集相對較小,但當(dāng)積極采用組件化和數(shù)據(jù)字典時,文件集就會迅速增長。如果沒有文件管理策略,文件的激增就會帶來問題。

在 Simulink 中工作時,團隊可以使用工程來幫助自動化文件管理活動,這樣他們就有更多時間花在建模、仿真和其他高價值活動上。例如,在設(shè)置工程時,團隊將指定工程路徑中的文件夾。當(dāng)工程打開時,這些文件夾會被添加到搜索路徑中(當(dāng)工程關(guān)閉時,這些文件夾會被刪除),以確保工程的所有用戶都可以訪問其中的文件。團隊還可以指定用于自動設(shè)置項目環(huán)境的啟動文件,以及通過撤銷設(shè)置步驟(例如)來清理環(huán)境的關(guān)閉文件。此外,可以配置工程以在啟動時打開常用文件并為常用任務(wù)創(chuàng)建快捷方式。

工程還可以幫助團隊避免常見的錯誤。例如,在復(fù)雜的模型層次結(jié)構(gòu)中,兩個同名的模型文件存在于不同的目錄中是很常見的。當(dāng)使用工程時,工程師將看到以下警告:檢測到影子文件。此外,當(dāng)工程關(guān)閉時,系統(tǒng)會提示工程師保存任何未保存的更改,以幫助避免工作丟失。

最后,工程有助于簡化源代碼控制,其中刷新、提交、推送、拉取、獲取等常見操作以及其他常見操作可直接從用戶界面訪問(圖 4)。

2944d2e4-1aab-11f0-9310-92fbcf53809c.png

圖 4. 源代碼控制操作可直接從工程選項卡的源代碼控制部分找到。

優(yōu)化仿真性能

到目前為止我們所介紹的最佳實踐主要集中于大型模型的結(jié)構(gòu)及其相關(guān)的數(shù)據(jù)和文件。在與實施了這些最佳實踐的客戶的對話中,我們經(jīng)常被問及如何提高仿真性能:“現(xiàn)在我們有了更好的方法來構(gòu)建大型模型,我們?nèi)绾尾拍茏屗鼈兎抡娴酶炷?”

有多種工具可用于提高仿真性能。作為第一步,我們建議性能顧問,它運行一系列檢查來識別可能減慢仿真速度的配置設(shè)置。接下來,對于任何包含初始化 MATLAB 代碼的模型(例如,在回調(diào)中),運行 MATLAB 探查器來確定 MATLAB 花費時間最多的地方是個不錯的主意。Simulink 探查器評估模型執(zhí)行時間并識別可能導(dǎo)致仿真性能不佳的問題。最后,對于使用可變步長求解器的團隊,我們建議運行求解器探查工具來分析求解器行為,以識別潛在問題(例如求解器重置或極小的時間步長),并提供解決這些問題的建議。有關(guān)每種工具的指南,包括如何使用以及何時使用,請參閱排除故障并提高仿真性能指南(見表)。

已將大型模型組件化的團隊可以使用加速器模式或快速加速器模式加速仿真,此種模式用生成的代碼替換 Simulink 仿真中通常使用的解釋代碼。在模型初始化期間, Simulink 會檢查緩存中是否存在已生成代碼的組件。這種增量構(gòu)建過程極大地減少了具有許多組件的大型模型的初始化時間,因為只有自上次仿真以來發(fā)生變化的組件才需要重建(并添加到緩存中)。

減少初始化時間的另一種方法是使用快速重啟。當(dāng)團隊執(zhí)行多次仿真運行而沒有對模型進行任何結(jié)構(gòu)性更改時,快速重啟可以通過執(zhí)行仿真而無需編譯模型并每次終止仿真來加快該過程。相反,在第一次仿真時,模型被編譯和初始化,然后在每次后續(xù)仿真中捕獲模型操作點的快照(圖 5)。

295fc7f2-1aab-11f0-9310-92fbcf53809c.png

圖 5. 優(yōu)化模型以實現(xiàn)更快的仿真。

總之,當(dāng)工程團隊?wèi)?yīng)對擴展 Simulink 模型的復(fù)雜性時,遵循最佳實踐變得至關(guān)重要。本文概述了模型組件化、數(shù)據(jù)管理和性能優(yōu)化的基本策略,強調(diào)了結(jié)構(gòu)化方法對模型開發(fā)的重要性。通過利用性能顧問、MATLAB 探查器和求解器探查工具等工具,團隊可以增強仿真性能并提高生產(chǎn)力。這些實踐確保大型模型仍然可管理、高效且適應(yīng)性強。隨著基于模型的設(shè)計領(lǐng)域不斷發(fā)展,這些指南將幫助團隊構(gòu)建強大的模型,以滿足日益復(fù)雜的工程挑戰(zhàn)的需求。為了進一步探索,我們鼓勵讀者參與本文重點介紹的額外資源和培訓(xùn)機會。

本文的內(nèi)容基于我們在 MathWorks 北美汽車會議上發(fā)表的演講,題為“從組件到復(fù)雜系統(tǒng)構(gòu)建大型模型的最佳實踐”(請可以點擊“閱讀原文”觀看此英語演講)。

正如我們一開始所說的,這是一個龐大的話題,無法在一篇文章或一次演講中詳盡地涵蓋。歡迎您報名我們 2025 年 5 月在上海和北京召開的 MATLAB EXPO 中國用戶大會,關(guān)注我們的建模、仿真、測試和實現(xiàn)分會場與汽車專場分會場演講,或者來現(xiàn)場與我們的專家進行面對面的交流。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • matlab
    +關(guān)注

    關(guān)注

    187

    文章

    2990

    瀏覽量

    232811
  • Simulink
    +關(guān)注

    關(guān)注

    22

    文章

    538

    瀏覽量

    63432
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3464

    瀏覽量

    49816

原文標(biāo)題:構(gòu)建大規(guī)模 Simulink 模型的標(biāo)準(zhǔn)化最佳實踐

文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    名單公布!【書籍評測活動NO.30】大規(guī)模語言模型:從理論到實踐

    ,在大模型實踐和理論研究的過程中,歷時8個月完成 《大規(guī)模語言模型:從理論到實踐》 一書的撰寫。希望這本書能夠幫助讀者快速入門大
    發(fā)表于 03-11 15:16

    大規(guī)模語言模型:從理論到實踐】- 每日進步一點點

    非常推薦大家去讀 【大規(guī)模語言模型:從理論到實踐】這本書,系統(tǒng)的講解了大模型的前世今生,對各個環(huán)節(jié)知識進行了普及。 今天跟我一起學(xué)習(xí)歸一
    發(fā)表于 05-31 19:54

    EPON標(biāo)準(zhǔn)化進展

    業(yè)務(wù)和傳統(tǒng)TDM(時分多路復(fù)用)業(yè)務(wù)。因此,采用EPON技術(shù),運營商不僅可以在同一傳輸平臺上根據(jù)用戶的需要隨時開通多種業(yè)務(wù),而且易于向全IP業(yè)務(wù)網(wǎng)絡(luò)過渡。文章介紹了EPON的標(biāo)準(zhǔn)化組織,分析了EPON
    發(fā)表于 04-24 09:08

    封裝如何標(biāo)準(zhǔn)化

    封裝標(biāo)準(zhǔn)化封裝標(biāo)準(zhǔn)化封裝標(biāo)準(zhǔn)化
    發(fā)表于 11-07 15:45

    大規(guī)模特征構(gòu)建實踐總結(jié)

    背景一般大公司的機器學(xué)習(xí)團隊,才會嘗試構(gòu)建大規(guī)模機器學(xué)習(xí)模型,如果去看百度、頭條、阿里等分享,都有提到過這類模型。當(dāng)然,大家現(xiàn)在都在說深度學(xué)習(xí),但在推薦、搜索的場景,據(jù)我所知,ROI并
    發(fā)表于 11-19 09:35

    python變量的標(biāo)準(zhǔn)化

    python 數(shù)據(jù)分析基礎(chǔ) day17-對模型自變量進行標(biāo)準(zhǔn)化
    發(fā)表于 10-21 14:40

    構(gòu)建大規(guī)模MIMO的難點在哪?

    構(gòu)建大規(guī)模MIMO的難點在哪?高功率硅開關(guān)的應(yīng)用案列分析
    發(fā)表于 03-11 07:05

    AUTOSAR分層模型標(biāo)準(zhǔn)化的應(yīng)用接口有哪些

    AUTOSAR是什么?AUTOSAR分層模型標(biāo)準(zhǔn)化的應(yīng)用接口有哪些?
    發(fā)表于 12-24 06:50

    EPON技術(shù)的標(biāo)準(zhǔn)化與測試

    EPON技術(shù)的標(biāo)準(zhǔn)化與測試 隨著寬帶業(yè)務(wù)的飛速發(fā)展,IPTV 等新型寬帶業(yè)務(wù)逐漸被大家所重視和期待,這些寬帶業(yè)務(wù)的大規(guī)模應(yīng)用無疑離不開寬帶接入網(wǎng)技術(shù)的
    發(fā)表于 03-24 16:03 ?17次下載

    NVIDIA聯(lián)合構(gòu)建大規(guī)模模擬和訓(xùn)練 AI 模型

    Champollion 超級計算機位于格勒諾布爾,由慧與和 NVIDIA 聯(lián)合構(gòu)建,它將為全球科學(xué)和工業(yè)領(lǐng)域的用戶創(chuàng)建大規(guī)模模擬和訓(xùn)練 AI 模型。
    的頭像 發(fā)表于 06-14 14:56 ?1981次閱讀

    加快部署 5G 基站的最佳實踐:RF 前端大規(guī)模 MIMO 入門

    加快部署 5G 基站的最佳實踐:RF 前端大規(guī)模 MIMO 入門
    的頭像 發(fā)表于 12-26 10:16 ?2075次閱讀
    加快部署 5G 基站的<b class='flag-5'>最佳</b><b class='flag-5'>實踐</b>:RF 前端<b class='flag-5'>大規(guī)模</b> MIMO 入門

    部署Linux的最佳實踐探索

    編者按:本文節(jié)選自節(jié)選自《基于Linux的企業(yè)自動》第五章?!暗?章,使用Ansible構(gòu)建用于部署的虛擬機模板,通過構(gòu)建虛擬機模板來探索部署Linux的最佳
    的頭像 發(fā)表于 05-16 09:35 ?703次閱讀

    使用Ansible構(gòu)建虛擬機部署Linux的最佳實踐

    編者按:本文節(jié)選自節(jié)選自《基于Linux的企業(yè)自動》第五章?!暗?章,使用Ansible構(gòu)建用于部署的虛擬機模板,通過構(gòu)建虛擬機模板來探索部署Linux的最佳
    的頭像 發(fā)表于 05-16 15:13 ?1297次閱讀

    大規(guī)模語言模型的基本概念、發(fā)展歷程和構(gòu)建流程

    大規(guī)模語言模型(Large Language Models,LLM),也稱大規(guī)模語言模型或大型語言模型,是一種由包含數(shù)百億以上參數(shù)的深度神經(jīng)
    的頭像 發(fā)表于 12-07 11:40 ?5127次閱讀
    <b class='flag-5'>大規(guī)模</b>語言<b class='flag-5'>模型</b>的基本概念、發(fā)展歷程和<b class='flag-5'>構(gòu)建</b>流程

    大規(guī)模神經(jīng)網(wǎng)絡(luò)優(yōu)化:超參最佳實踐規(guī)模

    從理論分析入手把握大規(guī)模神經(jīng)網(wǎng)絡(luò)優(yōu)化的規(guī)律,可以指導(dǎo)實踐中的超參數(shù)選擇。反過來,實踐中的超參數(shù)選擇也可以指導(dǎo)理論分析。本篇文章聚焦于大語言模型,介紹從 GPT 以來大家普遍使用的訓(xùn)練超
    的頭像 發(fā)表于 12-10 21:45 ?1192次閱讀