Коли оптимізація одного об'єкта коштує іншому
Система з двома цілями продуктивності — скажімо, продуктивність підсистеми A (P_A) і продуктивність підсистеми B (P_B) — має допустиму область: набір пар (P_A, P_B), досяжних з урахуванням спільних ресурсів.
У межах допустимої області Парето-фронтир — це межа, де ви не можете поліпшити P_A без погіршення P_B, чи навпаки. Кожна точка на цьому фронтирі є дійсним оптимумом системи, залежно від ваг, виділених кожній цілі.
Оптимум компонента 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 (у МГц) і показник шумівності NF (у дБ). Швидкість передачі даних C = B · log₂(1 + P/(N₀ · B · 10^(NF/10))), де N₀ — рівень шумів.
Система має три обмеження: P ≤ 10 W (бюджет потужності), B ≤ 20 МГц (розподіл спектра), NF ≤ 6 дБ (апаратний ліміт). Цілю є максимізація 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 повідомлень на секунду.