2025中科院2區SCI-狀態優化算法Status-based Optimization-附Matlab免費代碼

近年來,現實世界的優化問題變得越來越復雜,挑戰了傳統確定性方法的有效性。本文介紹了基于狀態的優化(SBO),這是一種受人類對地位提升的渴望啟發的高效算法。通過模擬個人如何接近、學習或從高地位人物那里獲得資源,SBO將這些社會模式轉化為一種強大的方法,以挑戰優化任務。2025年在線發表在JCR 1區,中科院2區 SCI計算機類期刊 Neurocomputing 。

3. 提出的基于地位的優化

本文重點介紹了SBO算法的暴露,詳細說明了其數學建模和計算復雜性。

3.1. SBO靈感

SBO算法模擬了人類攀登社會階梯的基本驅動力——一種植根于我們自我提升需求的行為[43]。這種雄心壯志反映了優化的核心目標:迭代改進。像人們通過與成功的同伴聯系獲得優勢一樣[44],SBO代理從表現良好的解決方案中學習以提高搜索效率。

認知科學和行為經濟學的研究證實,從高地位個體中學習可以提高復雜場景中的問題解決能力。SBO將此轉化為計算術語,創建了一種集體智能,其中:

  • 代理共享知識(類似于人類網絡)
  • 多樣化策略自然出現
  • 系統平衡探索和開發

簡而言之,我們可以這樣說SBO的工作方式:

  1. 精英參與(探索):

    • 代理跟隨表現最好的個體以發現有前景的區域
    • 類似于在社會等級中尋找導師
  2. 資源階段(開發)

    • 采集:從精英中收集信息
    • 評估:像專業人士一樣改進解決方案以提高技能

幾種受人類地位驅動的社會行為和教育互動啟發的優化算法已經成功解決了復雜問題。基于人類行為的優化(HBBO)算法[45]模擬了合作、競爭、模仿和社會學習的集體人類行為。HBBO通過模仿、創新和協作等機制平衡社會學習與個體創造力,使其適用于動態或多目標問題。

同樣,教育競爭優化器(ECO)[46]模擬了競爭學習環境,其中解決方案競爭并從表現最好的個體中學習,由最佳解決方案指導,類似于教師。這種方法促進了快速收斂和適應性,在受限優化場景中展示了其效率,例如學術性能建模和博弈論。

通過正式化地位尋求行為,SBO優于前身:

  • 平衡全局/局部搜索
  • 減少手動參數調整
  • 擴展到高維問題

3.2. SBO的數學建模

從人類地位尋求行為中汲取靈感,SBO算法將優化框架為個人和社會發展過程。它首先生成兩個不同的代理種群——代表來自不同社會背景的個體——然后通過模擬社會精英指導的過程來發展他們。

關鍵階段如下:

  1. 精英追求:代理識別并轉向表現良好的解決方案(“導師”)
  2. 資源采集:他們獲得有價值的信息(社會資本)
  3. 策略整合:代理批判性地評估并僅采用最有益的改進

這反映了人們如何:

  • 通過向成功的同伴學習在社會上進步
  • 選擇性地采用增強他們地位的行為
  • 通過積累優勢系統地攀登等級

算法通過整合這些改進來提供最優解——數學上表示地位成就的頂峰。(后續部分將詳細介紹完整的數學細節。)

3.2.1. 初始化

初始化階段為SBO算法奠定了基礎,通過生成兩個種群 X 1 X^1 X1 X 2 X^2 X2。在此模型中,每個索引 i i i對應一個獨特的家庭,其中 X 1 X^1 X1 X 2 X^2 X2中的相同索引的個體代表具有不同知識水平和社會地位的家庭成員。這種雙種群設計確保每個家庭至少由兩個個體表示,從而捕獲家族內多樣性并使算法迭代時精英成員動態更新。

[ x 1 x 2 ? x N ] N × D = [ x 1 , 1 x 1 , j ? x 1 , N x i , 1 x i , j ? x i , D x N , 1 x N , j ? x N , D ] N × D (1) \begin{bmatrix} x_1 \\ x_2 \\ \vdots \\ x_N \end{bmatrix}_{N \times D} = \begin{bmatrix} x_{1,1} & x_{1,j} & \cdots & x_{1,N} \\ x_{i,1} & x_{i,j} & \cdots & x_{i,D} \\ x_{N,1} & x_{N,j} & \cdots & x_{N,D} \end{bmatrix}_{N \times D} \tag{1} ?x1?x2??xN?? ?N×D?= ?x1,1?xi,1?xN,1??x1,j?xi,j?xN,j??????x1,N?xi,D?xN,D?? ?N×D?(1)

每個個體的狀態由公式(2)定義:

x i , j = U ( b j , u b ) (2) x_{i,j} = U(b_j, \quad u_b) \tag{2} xi,j?=U(bj?,ub?)(2)

其中 x i , j x_{i,j} xi,j?是第 i i i個個體的第 j j j個決策變量, D D D是決策變量的數量, b j b_j bj? u b u_b ub?分別是下界和上界。這種統一初始化在 N × D N \times D N×D矩陣中為兩個種群建立了問題的多維特性,并確保了多樣化的起點。

在初始化之后,選擇過程為每個家庭的精英種群 X ? X^* X?識別精英成員。具體來說,對于第 i i i個家庭:

x i e = { x i 1 if? f o b j ( x i 1 ) < f o b j ( x i 2 ) x i 2 otherwise (3) x_i^e = \begin{cases} x_i^1 & \text{if } fobj(x_i^1) < fobj(x_i^2) \\ x_i^2 & \text{otherwise} \end{cases} \tag{3} xie?={xi1?xi2??if?fobj(xi1?)<fobj(xi2?)otherwise?(3)

其中 f o b j ( ? ) fobj(\cdot) fobj(?)是目標函數。

x i new = { x i + K f [ ( x i ? 1 ? x i + 1 ) + ( x r ? x i ) ] if? f ( x i ) > f ( x r ) x i otherwise (4) x_i^{\text{new}} = \begin{cases} x_i + K_f \left[ (x_{i-1} - x_{i+1}) + (x_r - x_i) \right] & \text{if } f(x_i) > f(x_r) \\ x_i & \text{otherwise} \end{cases} \tag{4} xinew?={xi?+Kf?[(xi?1??xi+1?)+(xr??xi?)]xi??if?f(xi?)>f(xr?)otherwise?(4)

這種雙種群方法不僅僅是在每個組中找到表現最好的個體——它反映了現實世界的社交流動性,其中進步取決于個人優點和戰略聯系。普通個體 x i x_i xi?與其精英對應物 x i e x_i^e xie?之間的互動模擬了現實世界中的地位導向社交網絡,說明了精英如何促進進步和在家庭內部及跨家庭單位的知識共享。

3.2.2. 精英參與

在精英參與階段,SBO算法復制了人類社會結構的復雜動態,以增強對最優解的搜索。此階段模擬了尋求高地位導師指導的個體——算法中的精英代理——以加快他們的進步。與孤立的家庭框架不同,這種進展通過建立不同社會單位之間的聯系,創建了更具適應性和魯棒性的搜索空間。

為了模擬這種行為,SBO算法使用輪盤賭選擇方法[47]從種群中選擇個體。此子集代表種群中不同家庭中最成功的成員。這種子集選擇過程確保個體不僅僅依賴于單一的主導同伴,而是考慮多個有影響力的代理,反映了人類網絡不可預測但戰略性的本質。

選定的個體,表示為 x i e x_i^e xie?,以及種群中的最佳個體 x a x_a xa?,共同定義了一個高地位圈——一個在解決方案空間中具有象征意義但計算上重要的區域,代理旨在融入其中。這種動態表示的社會流動性確保個體系統地過渡到搜索空間中更有希望的區域。

為了數學上闡明這種行為,公式(4)和圖2描述了個體 x i x_i xi?在高地位圈內的生成。這個高地位圈代表了一個自適應區域,其中個體導航到更好的解決方案,平衡了結構化進展和探索性隨機性。個體的運動由以下公式控制:

x i = { ( 1 ? w 1 ? w 2 ) × x i + w 1 × x a + w 2 × z b if?rand < w 3 w 4 × ( ( 1 ? w 1 ? w 2 ) × x i + w 1 × x a e + w 2 × z b ) otherwise (4) x_i = \begin{cases} (1 - w_1 - w_2) \times x_i + w_1 \times x_a + w_2 \times z_b & \text{if } \text{rand} < w_3 \\ w_4 \times ((1 - w_1 - w_2) \times x_i + w_1 \times x_a^e + w_2 \times z_b) & \text{otherwise} \end{cases} \tag{4} xi?={(1?w1??w2?)×xi?+w1?×xa?+w2?×zb?w4?×((1?w1??w2?)×xi?+w1?×xae?+w2?×zb?)?if?rand<w3?otherwise?(4)

其中 x i x_i xi?表示種群中的第 i i i個個體, x a e x_a^e xae?表示通過 X e X^e Xe種群的輪盤賭方法選擇的下一個時間步的精英個體, z b z_b zb?是迄今為止找到的最佳個體。公式(4)中的運動策略確保個體受到其自身位置、表現良好的同伴和最佳已知解決方案的影響。

x i , j e = x i , j e , if? m j = 1 (5) x_{i,j}^e = x_{i,j}^e, \quad \text{if } m_j = 1 \tag{5} xi,je?=xi,je?,if?mj?=1(5)

其中行向量 m m m最初為零,并在社交互動之前更新為:

m ( ( 1 : c e i l ( rand × D ) ) ) = 1 (6) m((1:ceil(\text{rand} \times D))) = 1 \tag{6} m((1:ceil(rand×D)))=1(6)

其中 u = randperm ( D ) u = \text{randperm}(D) u=randperm(D)提供對決策變量索引的隨機排列。

如圖3所示,此階段將種群引導至解決方案空間中更有希望的區域,以最大化探索。

圖3(a):成功個體通過使用高地位代理的資源來改進其位置。

圖3(b):掙扎的個體通過使用資源來自我改進。
在這里插入圖片描述

圖2. SBO的精英參與階段。

參數 w 1 w_1 w1? w 2 w_2 w2?使用 randn \text{randn} randn生成,提供正態分布的隨機性以加權 x i x_i xi? x a e x_a^e xae? z b z_b zb?的貢獻。這些值引入了隨機性,同時確保運動保持在邏輯范圍內,促進了受控且多樣化的搜索。

相比之下, w 3 w_3 w3? w 4 w_4 w4?是設計參數,動態調整高地位圈對探索和開發的影響。 w 3 w_3 w3?的計算如下:

w 3 = tanh ? ( ( MaxFEs ? randn × FEs i ) FEs MaxFEs ) (7) w_3 = \tanh \left( \left( \frac{\sqrt{\text{MaxFEs} - \text{randn} \times \text{FEs}}}{i} \right)^{\frac{\text{FEs}}{\text{MaxFEs}}} \right) \tag{7} w3?=tanh ?(iMaxFEs?randn×FEs ??)MaxFEsFEs? ?(7)

其中 MaxFEs \text{MaxFEs} MaxFEs表示函數評估的最大數量, FEs \text{FEs} FEs是當前評估數量, i i i是個體的索引。這種公式允許 w 3 w_3 w3?根據優化進展進行調整,決定是否應用標準更新規則或更隨機的搜索模式。

如果 rand ≥ w 3 \text{rand} \geq w_3 randw3?,則使用公式(4)中的第二個公式,其中 w 2 w_2 w2?作為縮放因子,生成在 [ ? w 3 , w 3 ] [-w_3, w_3] [?w3?,w3?]之間的均勻分布隨機數。這種機制增加了探索多樣性,通過啟用步進大小調整,特別是在逃避局部最優時。

w 4 = uni_frmd ( ? w 3 , w 3 ) (8) w_4 = \text{uni\_frmd}(-w_3, \quad w_3) \tag{8} w4?=uni_frmd(?w3?,w3?)(8)

通過整合這些組件,SBO算法模擬了現實世界的決策——個體在戰略性地探索非常規路徑以優化結果的同時,追求成功的同伴。公式(4)中的戰略計算了高地位圈內的最佳位置,反映了個體如何獲得有影響力的網絡以獲得更好的前景。通過進化計算,代理逐漸改進,向搜索空間中更有希望的區域移動。

相比之下,第二個公式引入了一個隨機縮放因子,范圍從 [ ? w 3 , w 3 ] [-w_3, w_3] [?w3?,w3?],允許算法探索超出直接有希望區域的區域。這種特征防止了過早收斂,同時使SBO能夠發現未探索區域中潛在優越的解決方案。這種平衡反映了人類決策。人們有時會偏離既定路徑,無論是通過職業變化還是創新冒險,以找到傳統方法錯過的機會。

通過結合結構化學習和探索靈活性,SBO在探索和開發之間實現了最佳平衡。這使算法能夠有效地適應復雜的優化景觀。由此產生的方法是提高解決方案質量,同時在多樣化問題中保持魯棒性,證明了SBO在高性能計算中的能力。

3.2.3. 資源采集

資源采集階段對于從探索過渡到開發至關重要,通過獲取和利用有價值的見解——類似于人類網絡中的社會資本。在此階段,在 X X X種群中的所有個體中創建一個標志向量,最初設置為1以表示初步的地位相關成功。此標志在資源評估階段更新,作為個體地位改進的動態指標。

資源采集機制根據地位相關成功而變化。對于社會上成功的個體,資源通過從同一家庭單元中的精英個體和種群中的整體最佳個體平均輸入來選擇性地獲取。這種資源更新如下:

x i , j e = x i , j e + x a , j e + x b , j e 2 (9) x_{i,j}^e = x_{i,j}^e + \frac{x_{a,j}^e + x_{b,j}^e}{2} \tag{9} xi,je?=xi,je?+2xa,je?+xb,je??(9)

其中 i , j = randi ( D ) i,j = \text{randi}(D) i,j=randi(D)對于 i , d = 1 , 2 , 3 , . . . , D i,d = 1,2,3,...,D i,d=1,2,3,...,D,反映了家庭和外部精英影響的融合。

x i , j e = x i , j e , if? m j = 1 (10) x_{i,j}^e = x_{i,j}^e, \quad \text{if } m_j = 1 \tag{10} xi,je?=xi,je?,if?mj?=1(10)

其中行向量 m m m最初為零,并在社交互動之前更新為:

m ( ( 1 : c e i l ( rand × D ) ) ) = 1 (11) m((1:ceil(\text{rand} \times D))) = 1 \tag{11} m((1:ceil(rand×D)))=1(11)

其中 u = randperm ( D ) u = \text{randperm}(D) u=randperm(D)提供對決策變量索引的隨機排列。
在這里插入圖片描述

如圖3所示,此階段將種群引導至解決方案空間中更有希望的區域,以最大化探索。

圖3(a):成功個體通過使用高地位代理的資源來改進其位置。

圖3(b):掙扎的個體通過使用資源來自我改進。

3.2.4. 資源評估

在資源評估階段,算法評估所獲得的資源是否增強了個體的適應度。使用之前建立的標志向量,它跟蹤進展:

  • 1 = 適應度改進(成功)
  • 0 = 無改進(失敗)

實際上,如果更新后的個體 x i e x_i^e xie?的目標函數值優于原始 x i x_i xi?,則保留新狀態:

x i = x i e if? f o b j ( x i e ) < f o b j ( x i ) (10) x_i = x_i^e \quad \text{if } fobj(x_i^e) < fobj(x_i) \tag{10} xi?=xie?if?fobj(xie?)<fobj(xi?)(10)

同時,標志向量刷新如下:

flag i = { 1 if? f o b j ( x i e ) < f o b j ( x i ) 0 otherwise (11) \text{flag}_i = \begin{cases} 1 & \text{if } fobj(x_i^e) < fobj(x_i) \\ 0 & \text{otherwise} \end{cases} \tag{11} flagi?={10?if?fobj(xie?)<fobj(xi?)otherwise?(11)

表現無改進的個體保持當前位置,而成功的個體則轉移到更優越的位置。這種選擇性過程反映了現實世界的社交進步,其中只有有價值的資源,那些明顯提高代理地位的資源,才會被保留。這種改進逐步引導搜索朝著最優解的方向發展。

3.2.5. 整合

當滿足終止標準時,整合階段激活,無論是在達到最大函數評估次數或實現足夠優化的解決方案(通過增強指標驗證)。在此之前,算法通過其核心階段反復循環:

  • 精英參與
  • 資源采集
  • 資源評估

每個階段模擬地位驅動的互動,逐步改進解決方案。

實現細節:

  • 算法1提供了偽代碼。
  • 圖4顯示了工作流程。
    在這里插入圖片描述

圖4顯示了SBO的工作流程。

在整合期間,算法:

  • 編譯并評估結果是否符合目標
  • 生成一個體現基于地位的啟發式的最終解決方案
  • 確保高效的資源使用和詳細的文檔記錄用于分析/應用
  • 在這里插入圖片描述

3.3 完整代碼

% 📜 Status-based Optimization (SBO) source codes (version 1.0)
% 🌐 Website and codes of SBO:  The Status-based Optimization: Algorithm and comprehensive performance analysis:% 🔗 https://aliasgharheidari.com/SBO.html% 👥 Jian Wang, Yi Chen, Ali Asghar Heidari, Zongda Wu, Huiling Chen% 📅 Last update: 06 10 2025% 📧 E-Mail: jona.wzu@gmail.com, aliasghar68@gmail.com, chenhuiling.jlu@gmail.com% 📜 After use of code, please users cite the main paper on SBO: 
% The Status-based Optimization: Algorithm and comprehensive performance analysis
% Jian Wang, Yi Chen, Ali Asghar Heidari, Zongda Wu, Huiling Chen
% Neurocomputing, 2025%----------------------------------------------------------------------------------------------------------------------------------------------------%
% 📊 You can use and compare with other optimization methods developed recently:
%     - (SBO) 2025: 🔗 https://aliasgharheidari.com/SBO.html
%     - (ESC) 2024: 🔗 https://aliasgharheidari.com/ESC.html
%     - (MGO) 2024: 🔗 https://aliasgharheidari.com/MGO.html
%     - (PLO) 2024: 🔗 https://aliasgharheidari.com/PLO.html
%     - (FATA) 2024: 🔗 https://aliasgharheidari.com/FATA.html
%     - (ECO) 2024: 🔗 https://aliasgharheidari.com/ECO.html
%     - (AO) 2024: 🔗 https://aliasgharheidari.com/AO.html
%     - (PO) 2024: 🔗 https://aliasgharheidari.com/PO.html
%     - (RIME) 2023: 🔗 https://aliasgharheidari.com/RIME.html
%     - (INFO) 2022: 🔗 https://aliasgharheidari.com/INFO.html
%     - (RUN) 2021: 🔗 https://aliasgharheidari.com/RUN.html
%     - (HGS) 2021: 🔗 https://aliasgharheidari.com/HGS.html
%     - (SMA) 2020: 🔗 https://aliasgharheidari.com/SMA.html
%     - (HHO) 2019: 🔗 https://aliasgharheidari.com/HHO.html
%----------------------------------------------------------------------------------------------------------------------------------------------------%function [bestFitness, best_pos, Convergence_curve] = SBO(N, MaxFEs, lb, ub, dim, fobj)%% INITIALIZATIONFEs = 0;bestFitness = inf; % Change to -inf for maximization problemsbest_pos = zeros(1, dim);Convergence_curve = [];iter = 1;% Initialize populationscurrent_X = initialization(N, dim, ub, lb);localElite_X = initialization(N, dim, ub, lb);% Initialize fitness valuescurrent_Fitness = inf * ones(N, 1);localElite_Fitness = inf * ones(N, 1);% Calculate initial fitness and determine initial best solutions (local and global)for i = 1:Ncurrent_Fitness(i, 1) = fobj(current_X(i, :));FEs = FEs + 1;temp_localElite_Fitness = fobj(localElite_X(i ,:));FEs = FEs + 1;% Determine the initial local eliteif current_Fitness(i, 1) < temp_localElite_FitnesslocalElite_X(i, :) = current_X(i, :);localElite_Fitness(i, 1) = current_Fitness(i, 1);elselocalElite_Fitness(i, 1) = temp_localElite_Fitness;end% Update the initial global bestif localElite_Fitness(i, 1) < bestFitnessbestFitness = localElite_Fitness(i, 1);best_pos = localElite_X(i, :);endend%% Sort the local elite fitness for the first Roulette Wheel Selection[sorted_localElite_Fitness, ~] = sort(localElite_Fitness);%% Social success flag and social fitness initializationflag = ones(N, 1);social_Fitness = inf * ones(N, 1);%% MAIN LOOPwhile FEs < MaxFEs%% Select an individual from the localElite population based on Roulette selectionRoulette_index = RouletteWheelSelection(1./(sorted_localElite_Fitness + eps));if Roulette_index == -1  Roulette_index = 1; % Default to the best if selection failsend%% Update the current populationfor i = 1:Nw1 = randn;w2 = randn;w3 = tanh((sqrt(abs(MaxFEs - randn * FEs))/i)^(FEs/MaxFEs));w4 = unifrnd(-w3, w3);if rand < w3for j = 1:dimcurrent_X(i, j) = (1 - w1 - w2) * current_X(i, j) + w1 * localElite_X(Roulette_index, j) + w2 * best_pos(j);endelsefor j = 1:dimcurrent_X(i, j) = w4 * ((1 - w1 - w2) * current_X(i, j) + w1 * localElite_X(Roulette_index, j) + w2 * best_pos(j));endendend%% Boundary controlcurrent_X = BoundaryControl(current_X, lb, ub);%% Upward social strategysocial_X = current_X;% One-dimension source exchange for socially successful individualsfor i = 1:Nif flag(i) == 1social_X1_val = localElite_X(i, randi(dim));social_X2_val = best_pos(randi(dim));social_X(i, randi(dim)) = (social_X1_val + social_X2_val) / 2;endend% Multi-dimension source exchange for socially failed individualsm = zeros(1, dim);u = randperm(dim);m(u(1:ceil(rand * dim))) = 1;for i = 1:Nif flag(i) == 0for j = 1:dimif m(j)social_X(i, j) = localElite_X(i, j);endendendend%% Greedy selection and current population updatefor i = 1:N% Evaluate new and social positionsif FEs < MaxFEscurrent_Fitness(i, 1) = fobj(current_X(i, :));FEs = FEs + 1;endif FEs < MaxFEssocial_Fitness(i, 1) = fobj(social_X(i, :));FEs = FEs + 1;end% Greedy selectionif social_Fitness(i, 1) < current_Fitness(i, 1)% Social success: update position and set flagflag(i, 1) = 1;current_X(i, :) = social_X(i, :);current_Fitness(i, 1) = social_Fitness(i, 1);else% Social fail: keep current position and set flagflag(i, 1) = 0;endend%% Update local elite populationfor i = 1:Nif current_Fitness(i, 1) < localElite_Fitness(i, 1)localElite_Fitness(i, 1) = current_Fitness(i, 1);localElite_X(i, :) = current_X(i, :);endend%% Sort local elite fitness and update the global best position[sorted_localElite_Fitness, idx] = sort(localElite_Fitness);if sorted_localElite_Fitness(1) < bestFitnessbestFitness = sorted_localElite_Fitness(1);best_pos = localElite_X(idx(1), :);end%% Record the best fitness for the convergence curveConvergence_curve(iter) = bestFitness;iter = iter + 1;end
end  %% Helper Functions% Enforce boundary constraints on agent positions
function X = BoundaryControl(X, low, up)[N, dim] = size(X);if isscalar(low)low = repmat(low, 1, dim);endif isscalar(up)up = repmat(up, 1, dim);endfor i = 1:Nfor j = 1:dim                k = rand < rand; % 50% chance for either clipping or re-initializingif X(i,j) < low(j) if kX(i,j) = low(j); % Clipping to the boundaryelseX(i,j) = rand * (up(j) - low(j)) + low(j); % Re-initializingend end        if X(i,j) > up(j)  if kX(i,j) = up(j); % Clipping to the boundaryelseX(i,j) = rand * (up(j) - low(j)) + low(j); % Re-initializingend endendend
end% Roulette wheel selection mechanism
function choice = RouletteWheelSelection(weights)% Normalize weights to handle negative values if any, although 1/fitness should be positiveif any(weights<0)weights = weights + min(weights);endaccumulation = cumsum(weights);if accumulation(end) == 0choice = -1;return;endp = rand() * accumulation(end);chosen_index = -1;for index = 1:length(accumulation)if (accumulation(index) > p)chosen_index = index;break;endendchoice = chosen_index;
end

Jian Wang, Yi Chen, Chenglang Lu, Ali Asghar Heidari, Zongda Wu, Huiling Chen,The Status-based Optimization: Algorithm and comprehensive performance analysis,Neurocomputing,2025,130603,https://doi.org/10.1016/j.neucom.2025.130603.

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

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

相關文章

MySQL 啟動報錯 “The server quit without updating PID file“ 的全面解決方案(適用于 5.7/8.0 全版本)

摘要 在 MySQL 數據庫運維中&#xff0c;"The server quit without updating PID file" 是常見且棘手的啟動錯誤。本文結合 MySQL 官方文檔及實戰經驗&#xff0c;系統梳理該錯誤的 10 大核心成因與解決方案&#xff0c;覆蓋權限、配置、磁盤、SELinux 等多維度&…

運行時安全引擎RSE

安全之安全(security)博客目錄導讀 目錄 一、RSE 通信層 1.1 消息結構 1.2 源代碼文件 1.3 MHU 通信的 API 二、RSE 提供的運行時服務 2.1 運行時服務 API 2.2 軟件與 API 層次結構 三、基于 RSE 的 Measured Boot&#xff08;度量啟動&#xff09; 3.1 Measured Boo…

Elasticsearch、Faiss、Milvus在向量索引實現上的核心差

Faiss、Elasticsearch&#xff08;ES&#xff09;和Milvus在向量索引實現上的核心差異主要體現在架構定位、索引技術、擴展性及適用場景上&#xff0c;具體對比如下&#xff1a; 一、架構設計與定位? ?維度??Faiss??Elasticsearch??Milvus??核心定位?單機向量索引…

iot-dc3 項目windows本地運行保姆喂奶級教程

一.源碼拉取 當前時間:2025年06月18日12點02分 后臺接口服務:https://gitee.com/pnoker/iot-dc3.git 前端:https://gitee.com/pnoker/iot-dc3-web.git 請自行拉取至本地。 二.本地環境準備 其他基礎環境先不講了,如有需要請留言。 idea + VS Code。 IntelliJ IDEA 2024.2.…

內部網關協議配置實驗

一&#xff1a;靜態路由 簡述&#xff1a;在華為路由器中&#xff0c;使用ip route-static命令配置靜態路由。一條靜態路由主要包含以下要素。 目的地址&#xff1a;數據包要到達的目標IP地址 子網掩碼&#xff1a;用于指定目的地址的網絡部分和主機部分 下一跳地址&#xff08…

大模型應用:如何使用Langchain+Qwen部署一套Rag檢索系統

一、TL&#xff1b;DR 從0-1使用qwen chat model langchain的鏈式架構搭建一套rag系統詳細介紹了Langchain的工具鏈的調用流程簡單介紹了可能會出現什么問題 二、方法 參考開源鏈接&#xff1a;https://github.com/Aphasia0515/self_llm/ 2.1 硬件和軟件依賴 類型需求備注…

決策樹:化繁為簡的智能決策利器

本文來自「大千AI助手」技術實戰系列&#xff0c;專注用真話講技術&#xff0c;拒絕過度包裝。 想象一個相親決策過程&#xff1a; 對方收入 > 30萬&#xff1f; → 是 → 見面否 → 顏值高&#xff1f; → 是 → 先聊聊否 → 放棄 這種層層遞進的判斷結構&#xff0c;正是…

html中的盒子標簽div標簽,有序列表,無序列表

div標簽 div標簽對于分析數據很重要&#xff0c;因為數據在頁面中展示是以區域的形式展示的&#xff0c;而查找數據需要先找到盒子名稱在繼續向下找。前端頁面布局中有兩種布局方式&#xff0c;一種是通過表格布局&#xff0c;一種是通過divcss來布局。 <!DOCTYPE html>…

【Redis】解碼Redis中hash類型:理解基礎命令,以及內部編碼方式和使用場景

&#x1f4da;?前言 &#x1f31f;&#x1f31f;&#x1f31f;精彩讀導 本次我們將全面剖析Redis的核心技術要點&#xff0c;包括其豐富的數據類型體系、高效的編碼方式以及秒級響應的性能奧秘。對于渴望深入理解Redis底層機制的技術愛好者&#xff0c;這是一次難得的學習機會…

AI工具在學術寫作中的倫理邊界與誠信規范的平衡

AI寫作助手的興起與爭議 人工智能技術的飛速發展&#xff0c;學境思源&#xff0c;ChatGPT、Grok、Claude 等AI寫作工具逐漸走入高校師生的視野。一鍵生成論文初稿&#xff01;從課程作業到畢業論文&#xff0c;不少學生已經嘗試讓AI參與寫作過程&#xff0c;希望借此提升效率…

課程專注度分析系統項目

前端代碼: <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>課堂專注度分析系統 - 科技…

區塊鏈是什么

區塊鏈的本質與機制 1. 核心定義 區塊鏈 加密的分布式記賬技術&#xff0c;融合密碼學、網絡學、金融學三大學科。 去中心化&#xff1a;數據存儲于全網節點&#xff08;如百萬臺計算機&#xff09;&#xff0c;而非單一數據庫。不可篡改&#xff1a;修改數據需控制全網51%以…

用可觀測工具高效定位和查找設計中深度隱藏的bug

軟件仿真擁有最佳的信號可見性和調試靈活性,被大多數工程師熟練使用,能夠高效捕獲很多顯而易見的常見錯誤。 然而,由軟件實現的數字仿真過程運行速度有限,很難做到100%代碼覆蓋。導致那些深度隱藏的設計問題,將不可避免的逃逸,只能以FPGA在線調試方式解決。 01 為什么全…

華為OD-2024年E卷-字符串化繁為簡[200分] -- python

問題描述&#xff1a; 給定一個輸入字符串&#xff0c;字符串只可能由英文字母(a~z、A~Z) 和左右小括號((、))組成。當字符串里存在小括號時&#xff0c;小括號是成對的&#xff0c;可以有一個或多個小括號對&#xff0c;小括號對不會嵌套&#xff0c;小括號對內可以包含1個或…

使用sealos安裝k8s

一、準備工作&#xff08;所有節點需執行&#xff09;? 1、系統要求 操作系統&#xff1a;本文為Ubuntu 20.0.4 配置&#xff1a;不同主機名、時間同步、SSH 免密互通、關閉防火墻/SELinux/swap。 資源&#xff1a;建議 ≥2核 CPU、2GB 內存&#xff08;生產環境需更高&am…

Pytorch 實戰四 VGG 網絡訓練

系列文章目錄 文章目錄 系列文章目錄前言一、源碼1. 解決線程沖突2.代碼框架 二、代碼詳細介紹1.基礎定義2. epoch 的定義3. 每組圖片的訓練和模型保存 前言 前面我們已經完成了數據集的制作&#xff0c;VGG 網絡的搭建&#xff0c;現在進行網絡模型的訓練。 一、源碼 import t…

課程專注度分析系統文檔

一、項目概述 本項目基于 Flask 框架開發&#xff0c;結合計算機視覺技術&#xff08;利用 YOLOv10 等模型 &#xff09;&#xff0c;實現對課堂視頻的智能分析。可檢測視頻中學生手機使用情況、面部表情&#xff08;專注、分心等 &#xff09;&#xff0c;統計專注度、手機使…

中國設計 全球審美 | 安貝斯新產品發布會:以東方美學開辟控制臺仿生智造新紀元

6月17日&#xff0c;安貝斯&#xff08;武漢&#xff09;控制技術有限公司&#xff08;以下簡稱“安貝斯”&#xff09;在武漢隆重舉行“新產品發布暨協會聯合創新峰會”。近百位來自政府機構、行業協會、行業用戶及戰略合作伙伴的嘉賓齊聚現場&#xff0c;共同見證以“中國設計…

在微信小程序wxml文件調用函數實現時間轉換---使用wxs模塊實現

1. 創建 WXS 模塊文件&#xff08;推薦單獨存放&#xff09; 在項目目錄下新建 utils.wxs 文件&#xff0c;編寫時間轉換邏輯&#xff1a; // utils.wxs module.exports {// 將毫秒轉換為分鐘&#xff08;保留1位小數&#xff09;convertToMinutes: function(ms) {if (typeo…

ByteMD 插件系統詳解

ByteMD 插件系統詳解 ByteMD 的插件系統是其強大擴展性的核心。它允許開發者在 Markdown 解析、AST 轉換、HTML 渲染、以及編輯器 UI 交互的各個階段注入自定義邏輯。這得益于 ByteMD 深度集成了 unified 處理器和其豐富的生態系統&#xff08;remark 用于 Markdown&#xff0c…