EDA2算法速通(編者崩潰版)

這個內容是用來回憶一下EDA2涉及的算法和解題的主要步驟:

有疑問或發現錯誤可以私信來討論

高級綜合概述

柏拉圖優化:這個是來判斷是否有哪些節點能完全被其他節點優化掉。比如(1,2)這個節點就可以完全優化(3,4)(3,2)這些節點。判斷的方式就是兩個值都比已經存在的其他節點大或相等(也可以使用坐標系向坐標軸做垂線,如果完全某節點的區域完全包裹另外一個就說明它會被優化)

操作調度

最小延遲無約束調度

沒有約束可以直接理解為沒有處理機資源數量的限制,只考慮先后次序

ASAP?從前向后

這個算法就是針對有向圖,從前向后先把無前驅的節點標成1,之后根據后繼順序依次標為2、3、4直到完成所有節點的標注

ALAP?從后向前

這個算法會給出一個時間限制,是從最后一個節點按照這個根據這個時間限制的數值來進行標注。

看一下上圖F的區別,就可以看出來前向后調度和后向前調度的區別

上述的ALAP和ASAP是下面這些算法中的一種調度思路

有約束調度

有約束和上面

Hu調度算法

這個算法針對的有限個是同種處理機資源進行的調度

1.?劃分出優先級(使用ALAP)

2.根據優先級進行調度(考慮每個時刻處理機的使用量)

列表調度

這個算法是針對不同處理機進行的調度,有MR-LCS(對時間有具體限制,處理機數量是未知量表示)與ML-RCS(對處理機數量有明顯顯示,但是對于時間并無要求)。

這個調度會使用下面的ILP進行數字化處理(畫的圖用于對ILP的唯一約束化簡)

ILP優化(x?數值上只能為1或0)

ML-RCS中有三個約束

1.唯一約束:每個節點只被調度一次??

2.順序約束:后繼節點時間必須大于等于 前驅節點時間+處理前驅節點所用時間

3.資源約束:在同一時刻某一類資源被調度的數量必須小于等于該類資源的處理機的數量

對于這種題的做法就是根據上面的列表調度,使用ALSP算法畫圖,對唯一限制的式子進行優化

MR-LCS中有三個約束

1.唯一約束:每個節點只被調度一次??

2.順序約束:后繼節點時間必須大于等于 前驅節點時間+處理前驅節點所用時間

3.時間約束:最終的時間必須小于 給出時間+1(調度最后一個節點的時間)

對于這種題需要將處理機數量設置為a1?a2這種,之后進行類型資源約束的寫法,之后按照ML-RCS的方法進行化簡

MIN 權重*資源數量+權重*資源數量(這個是最終的表達式,列出來化簡就行,不用全算出來)

時間分析

關鍵節點關鍵性

這種題的步驟:
1.標出:需要時間/到達時間(第一個節點前后都有、后面節點的都是后面)

2.裕量=需要時間-到達時間

3.裕量為零的節點是關鍵節點,這些節點形成的路徑是關鍵路徑

4.關鍵性=1-(裕量/圖中最大裕量)

綁定問題

兼容圖和沖突圖

這個也是針對有向圖,一般是使用優化算法處理過的

兼容圖:節點之間不存在并發關系(說白了就是在ASAP這種圖里面不在同一排)

沖突圖:兼容圖的補圖

左邊緣算法

放兩張圖就明白了

兩級邏輯優化

優化目標

假設一家公司有很多人,有會前端和后端的、有會后端和運維的......

最小覆蓋:裁員之后在所有技術棧都被覆蓋的情況下剩余的人數最少

非冗余覆蓋:不一定人數最少,但每個人都不可或缺(再裁誰就必然會有某個技術棧沒被覆蓋)

單個蘊含項下的非冗余覆蓋:一個人被另一個人完全替代(技術棧被完全包括)

精確兩級優化邏輯

Quine算法

On數組(1),Off數組(0),Dc數組(非0也非1)

比如F=abcd+ab(非c)d+a(非b)cd這種形式,要求出其一次的最小蘊涵項:

1.枚舉出可以使F=1的情況,比如abcd就是1111,ac(非c)d就是1101

2.兩兩對比,找出可以概括的項合并為*,比如1111和1101可以合并成11*1

3.再次合并直到無法合并為止

列出合并的最終結果和合并過程中沒有合并進去的列在一起

分支優化

這個不會考遞歸那個式子,考的是矩陣的縮減

1.?按照題目給出蘊涵項那一列(打勾),劃掉那一列所含1所在的行

2.之后進行列之間的支配(1被全覆蓋),不打勾

3.之后掃描每一列,發現進出現一個1的話就這一列打勾,并且劃掉那一列所含1所在的行

4.直到不存在1為止

打勾的行頭部的式子就是蘊含式

啟發式兩級優化邏輯

矩陣表示法

首先兩個操作:

1.Intersection:同1才為1

2.supercube:存1即為1

之后有一個操作:

求余子式Fa

F先對a進行Inter操作、操作結果對a取反的結果進行supercube操作

重言式:

1.余子式存在全為1的一行

2.對于唯一決定項,每一列都不全為0

非重言式:

對于唯一決定項,存在一列都全為0

單調性:

對于F中的某一個元素,比如是a,若只存在a即a為單調增,若只存在(非a)則a為單調減

操作

取反

使用德摩根律和矩陣計算對F去某一個因子的反,如果算不出來就接著取

拓展

會讓嘗試拓展某一項

1.F取反

2.檢查F中某一個項是否可以簡化,比如abc是否可以簡化成ab(F反和ab進行Inter運算)

3.若運算結果為空(存在00項的話該行直接劃掉),則可以拓展

4.之后可以進一步拓展,比如ab可否簡化為a,即F反與a進行Inter運算,看結果是否為空

縮減

其實是增加了字母(抽象程度降低)

下面這個例子說的很明白,這是者怒地某一個元素進行的縮減嘗試

1.對剩余子式取反

2.之后求該反式對a取余因子的結果

3.之后對于該結果進行supercube運算

4.最后看選出項和3的運算結果交集是否等于選出項

5.若相等說明無法化簡,不相等更新原函數該項

去冗余

非冗余覆蓋是Rp中的元素+Er中的元素

Er存放必須存在的項(處理之后不是重言式)

Rp存放不存在的項(處理之后無法判斷不是重言式)

1.在F中去除一個項

2.剩余項對該項取余子式

3.余子式不是重言式的話就放入Er,反之先放入Rp

Rt

對于Rp中的元素進行如下判定:

1.H=Rp中的元素+Er中的元素-選出來接受判定的元素

2.H對該元素求余因子,若結果不是重言式,就不可以去掉該元素

3.去掉的元素放入Rt,并從Rp中刪去

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/85959.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/85959.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/85959.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

雷池waf配置第三方登錄-釘釘配置詳細教程

雷池waf配置第三方登錄-釘釘配置詳細教程 前往釘釘開放平臺https://open.dingtalk.com/ 選擇一個登錄方式登錄釘釘開放平臺 選擇一個自己所管理的組織 登錄成功后點擊我的后臺 選擇應用開發 在釘釘應用下點擊創建應用 填寫應用名稱和應用描述后點擊保存 點擊網頁…

神經網絡中的均方誤差(Mean Squared Error)詳解

引言 在機器學習和神經網絡領域,損失函數(Loss Function)是衡量模型預測值與真實值之間差異的關鍵指標。均方誤差(Mean Squared Error, MSE)作為一種經典的損失函數,因其簡單性、可解釋性和數學上的優良性…

day036-lsyncd實時同步服務與網站存儲架構

文章目錄 1. 實時同步工具2. lsyncd 實時同步服務2.1 環境準備2.2 rsync準備2.2.1 服務端檢查2.2.2 客戶端檢查2.2.3 備份測試 2.3 配置lsyncd2.3.1 安裝軟件2.3.2 編寫配置文件 2.4 測試 3. 案例-網站存儲架構3.1 rsync服務配置3.1.1 服務端配置3.1.2 客戶端配置 3.2 lsyncd服…

React Native WebView鍵盤難題:如何讓輸入框不被鍵盤遮擋?

寫在前面 “明明點擊了輸入框,鍵盤卻把內容頂得不見蹤影!” —— 這可能是React Native開發者使用WebView時最頭疼的問題之一。 想象一下:你的App內嵌了一個網頁表單,用戶興奮地準備填寫信息,結果鍵盤彈出后&#xf…

Web攻防-XSS跨站瀏覽器UXSS突變MXSSVueReactElectron框架JQuery庫寫法和版本

知識點: 1、Web攻防-XSS跨站-瀏覽器&轉換-UXSS&MXSS 2、Web攻防-XSS跨站-框架和庫-VUE&React&Electron&JQuery 分類: 1、框架或三方庫的XSS(Vue、React、Electron、JQuery) 2、瀏覽器或插件的XSS(UXSS) 3、客戶端預覽內核的XSS(MXS…

PyTorch 中torch.clamp函數使用詳解和實戰示例

torch.clamp 是 PyTorch 中的一個非常有用的函數,它可以將張量的每個元素限制在一個指定的范圍內,超出范圍的元素將被裁剪為邊界值。 函數簽名: torch.clamp(input, minNone, maxNone, outNone)參數說明: input:輸入…

詳解Redis數據庫和緩存不一致的情況及解決方案

數據庫與緩存不一致是分布式系統中常見問題,本質是數據在緩存層和存儲層出現版本差異。 一、并發寫操作導致不一致(最常見) 場景描述 線程A更新數據庫 → 線程B更新數據庫 → 線程B更新緩存 → 線程A更新緩存 結果:緩存中存儲的…

湖北理元理律師事務所:企業債務危機的“急診科”式應對方案

當企業陷入債務危機時,傳統“頭痛醫頭”的應對往往加速死亡。本方案基于企業債務重組實務,提煉出 “止血-清創-修復”三階急救體系,助力企業守住生存底線。 第一階段:精準止血(0-30天關鍵期) 目標&#x…

華為云Flexus+DeepSeek征文|基于Dify構建智能票據信息識別助手

華為云FlexusDeepSeek征文|基于Dify構建智能票據信息識別助手 一、構建智能票據信息識別助手前言二、構建智能票據信息識別助手環境2.1 基于FlexusX實例的Dify平臺2.2 基于MaaS的模型API商用服務 三、構建智能票據信息識別助手實戰3.1 配置Dify環境3.2 配置Dify工具…

Python實例題:基于聯邦學習的隱私保護 AI 系統(分布式學習、隱私計算)

目錄 Python實例題 題目 問題描述 解題思路 關鍵代碼框架 難點分析 擴展方向 Python實例題 題目 基于聯邦學習的隱私保護 AI 系統(分布式學習、隱私計算) 問題描述 開發一個基于聯邦學習的隱私保護 AI 系統,包含以下功能&#xff…

點點(小紅書AI搜索):生活場景的智能搜索助手

1. 產品概述 點點是小紅書于2024年12月正式推出的AI搜索助手,由上海生動詩章科技有限公司開發,定位為生活場景搜索工具,聚焦交通、美食、旅游、購物等日常需求,旨在通過即時信息和真實用戶分享幫助用戶“精準避坑”。 核心特點 …

軟件工程概述:核心概念、模型與方法全解析

一、軟件工程定義與誕生背景 定義 將系統化、規范化、可度量的方法應用于軟件開發、運行和維護的過程(IEEE標準)。 核心目標:在可控成本下,生產高質量、可維護、滿足需求的軟件產品。 - 軟件開發:需求 → 設計 → 編碼…

LVS+Keepalived+nginx

LVSKeepalivednginx 1 安裝依賴 sudo yum install ipvsadm keepalived -y 查詢是否安裝成功 rpm -q -a keepalived 2 配置虛擬IP并安裝ipvsadm /etc/sysconfig/network-scripts cp ifcfg-ens33 ifcfg-ens33:1 修改里面配置文件 TYPE"Ethernet" PROXY_METHOD"n…

數據分析實操篇:京東淘寶商品實時數據獲取與分析

在電商行業蓬勃發展的當下,數據已然成為驅動決策的核心要素。無論是商家精準把控市場需求、制定營銷策略,還是消費者做出明智的購物抉擇,都離不開對電商平臺商品數據的深入剖析。京東和淘寶作為國內電商領域的兩大巨頭,匯聚了海量…

微信小程序掃碼添加音頻播放報錯{errCode:10001, errMsg:“errCode:602,err:error,not found param“}

主要流程代碼如下: let innerAudioContext wx.createInnerAudioContext() // 提示音 innerAudioContext.autoplay true innerAudioContext.src ../images/scan.mp3 innerAudioContext.onError(function(res){ console.log(onError 開始監聽:,res) }) innerAudi…

SVN合并指南,從dev合并部分revision到release指南

dev合并到release 1.進入release的工作區,右擊選擇Merge 點擊Next 2.確認merge來源分支和當前分支 點擊Show Log,挑選需要合并的單號 3. 選擇需要合并的commit 注意點擊Hide no-mergeable revisions,來隱藏掉已經合并的commit 4.選擇需…

《計算機網絡:自頂向下方法(第8版)》Chapter 8 課后題

復習題 8.1節 R1. 機密性是攻擊者截獲原始明文消息的密文加密后無法確定原始明文的屬性。消息完整性是接收方可以檢測發送的消息(無論是否加密)在傳輸過程中是否又被更改的屬性。 因此,這兩者是不同的概念,可以獨立存在。一個在傳…

抖音小程序開發:ttml和傳統html的區別

1 傳統 Web 中 HTML 的角色 HyperText Markup Language&#xff1a;用來描述頁面結構——標題、段落、圖片、表單…… 只負責“放什么元素、排在什么層級”&#xff0c;真正的行為靠 JS&#xff0c;視覺靠 CSS。 <!-- 傳統網頁&#xff1a;結構 class 交給 CSS --> &…

Unity2D 街機風太空射擊游戲 學習記錄 #12QFramework引入

概述 這是一款基于Unity引擎開發的2D街機風太空射擊游戲&#xff0c;筆者并不是游戲開發人&#xff0c;作者是siki學院的涼鞋老師。 筆者只是學習項目&#xff0c;記錄學習&#xff0c;同時也想幫助他人更好的學習這個項目 作者會記錄學習這一期用到的知識&#xff0c;和一些…

Proteus如何創建第一個工程

視頻教程&#xff1a; [最詳細]Proteus新建第一個工程與快捷鍵設置 操作步驟 1打開Proteus后&#xff0c;左上角點擊文件然后點擊新建工程。 2新建工程后&#xff0c;彈出以下界面&#xff0c;選擇修改自己的工程名字&#xff0c;&#xff08;工程名的后綴“.pdspsj”不要修改…