當最優化一個目標需要犧牲另一個目標時
一個有兩個性能目標的系統 —— 比如說,子系統 A 的性能 (P_A) 和子系統 B 的性能 (P_B) —— 有一個 可行域: 給定共享資源下可達成的 (P_A, P_B) 對的集合。
在可行域內,帕累托邊界 是一個邊界,在這裡您無法在不降低 P_B 的情況下改進 P_A,反之亦然。這個邊界上的每一點都是一個有效的系統最優點,取決於分配給每個目標的權重。
元件 A 最優點: 最大化 P_A 而不考慮 P_B。這位於最右邊的可行點 —— 在帕累托邊界上的極端點,其中 P_A 最大化而 P_B 被犧牲。
元件 B 最優點: 最大化 P_B 而不考慮 P_A。類似地,在邊界的頂部,P_B 最大化。
系統最優點: 在帕累托邊界的內部某處,平衡兩個目標。它位於兩個元件最優點之間。沒有任何元件以其個別最大值運行 —— 但整個系統的整體性能最佳。
漢明的微分分析儀: 改進的放大器最大化 P_A (放大器性能) 但將工作點移出介面設計包絡,降低了 P_B (接地/干擾性能)。系統最優點需要降低放大器性能以保持在介面的容限內。
確定系統最優點
一個系統有兩個子系統。子系統 A 的性能 P_A = 2x − x²,可達成於 x ∈ [0, 2]。子系統 B 的性能 P_B = 2(1−x) − (1−x)²,可達成於相同的 x。共享變數 x 代表共享資源 (比如說,帶寬或功率) 如何在子系統之間分配。總性能: P_total = P_A + P_B。
可行域與綁定約束
受約束的系統在參數空間的 可行域 F 內運行。約束定義了 F 的邊界。
綁定約束: 在最優點處以等式滿足的約束 (最優點位於約束邊界上)。
非綁定約束: 在最優點處以嚴格不等式滿足的約束 (最優點嚴格位於邊界內)。
最大值原則 (優化理論的一個普遍結果): 對於凸可行域上的線性目標函數,最優點總是位於可行域的頂點 —— 即在綁定約束的交點。除非目標函數在某個方向上是平的 (常數),否則最優點永遠不會位於內部。
漢明第 2 法則用幾何術語表述: 系統的邊界條件 (約束) 往往比邊界內的最優值更重要,因為最優點位於邊界,而不是內部。正確設計約束結構決定了可行域的位置;一旦有了該區域,最優點就在其邊界。
作為共享約束的介面: 兩個子系統之間的介面在兩者的聯合參數空間中定義了共享約束。改進元件 A 改變了 A 在介面處的行為 —— 它可能將介面約束推出元件 B 的可行域。
哪個約束是綁定的?
一個通訊系統有三個設計變數: 傳輸功率 P (瓦特)、帶寬 B (MHz) 和噪聲係數 NF (dB)。數據速率 C = B · log₂(1 + P/(N₀ · B · 10^(NF/10))),其中 N₀ 是噪聲底線。
系統有三個約束: P ≤ 10 W (功率預算)、B ≤ 20 MHz (頻譜分配)、NF ≤ 6 dB (硬體限制)。目標是最大化 C。
介面作為共享約束
將兩個子系統 A 和 B 建模為在它們自己的參數空間 P_A 和 P_B 中運行。它們之間的介面定義了一個 共享約束: P_A 中的參數與 P_B 中的參數之間的關係,必須保持系統正常運行。
例子: 在漢明的微分分析儀中,放大器 (子系統 A) 輸出電流 I_out。接地電路 (子系統 B) 可以承受最大電流 I_max。介面約束: I_out ≤ I_max。
當你改進子系統 A (更好的放大器) 時,I_out 增加。如果 I_out > I_max,介面約束被違反 —— 兩個子系統不再在其聯合參數空間的有效運行區域內。
介面設計原則: 介面約束定義了有效和無效操作之間的邊界。元件設計者必須知道這個邊界。系統工程師必須驗證當任何元件改變時,它不會被違反。
介面不是 A 或 B 單獨的屬性 —— 它屬於聯合系統。這就是為什麼元件級別的測試 (單獨測試 A,單獨測試 B) 會遺漏介面故障。約束只在聯合參數空間中可見。
介面故障分析
一個軟體系統有兩個服務: 服務 A (數據攝入) 和服務 B (數據處理)。服務 A 將記錄寫入消息隊列; 服務 B 從隊列讀取。介面約束: 消息隊列最多可以容納 10,000 條消息。服務 A 的吞吐量: T_A 消息/秒。服務 B 的吞吐量: T_B 消息/秒。