Formulating and Solving System Architecture Optimization Problems

Systems Architecture · Chapter 16

Aykut C. Satici

16.1 Architecture as an optimization problem

Learning objectives

  • Formulate decisions, metrics, a value function, and constraints.
  • Recognize six recurring decision patterns.
  • Explain the tradeoffs behind common architectural styles.
  • Estimate search-space size and choose an exploration method.
  • Critique encodings, decomposition, and heuristic results.

Six recurring architecting tasks

Task Decision to make
Decompose form or function Which elements belong together?
Map function to form Which objects perform which processes?
Specialize Which solution-specific concept?
Characterize Which attribute values?
Connect Which interfaces or operational relationships?
Select goals Which candidate goals define the scope?

16.2 Formulating the model

Architectures as decision vectors

For decision \(i\), choose one value from an allowed set \(D_i\):

\[A=(x_1,\ldots,x_n),\qquad x_i\in D_i.\]

An Apollo-style encoding includes:

[EOR, earthLaunch, LOR, moonArrival, moonDeparture, cmCrew, lmCrew, smFuel, lmFuel]

The dictionary and ordering give the vector meaning.

The value function

\[A\ \xrightarrow{\quad V\quad}\ M=(M_1,\ldots,M_p)\]

  • Input: a candidate architecture.
  • Model: physics, cost estimates, risk models, and documented judgments.
  • Output: metrics that reflect stakeholder needs.

Apollo: minimize launched mass and maximize mission success.

Multiple objectives and feasibility

Let \(\mathcal F\) be the architectures that satisfy all hard constraints.

\[\mathcal A^*=\{A\in\mathcal F:\nexists B\in\mathcal F\text{ with }V(B)\succ V(A)\}\]

Here \(\succ\) means dominates in the stated metric directions.

  • State the preferred direction of every metric.
  • Retain non-dominated tradeoffs.
  • Use stakeholder preferences to choose among them.

Useful metrics and traceable judgments

  • A metric should vary across the architectures under study.
  • Prefer a small, interpretable set: the book suggests 2–5, often 2–3.
  • Keep essential requirements even when they do not distinguish candidates.
  • Record the rationale behind subjective scores.
  • Examine sensitivity to aggregation and weights.

Hard and soft constraints

Constraint Treatment Example
Hard Reject the architecture LOR requires lunar-orbit arrival
Soft Retain it with a penalty A desirable range target

Illustrative penalty for shortfall below range \(r_0\):

\[C_{\mathrm{effective}}=C+\lambda\max(0,r_0-r),\qquad\lambda\geq0.\]

Combinatorial growth and model scope

For independent decision domains:

\[N_{\mathrm{raw}}=\prod_{i=1}^{n}|D_i|.\]

  • Categorical choices do not supply ordinary derivatives.
  • More options improve coverage but increase computation.
  • Constraints and duplicate encodings change the effective count.
  • Difficulty depends on the evaluator and mathematical structure.

16.3 The NEOSS example

Earth-observation architectures

Envisat spacecraft above and the A-Train satellite formation below.

Envisat and the A-Train illustrate different ways to organize Earth-observing instruments. Source: Crawley, Cameron & Selva (2016), Fig. 16.2, p. 378.

NEOSS stakeholders and candidate instruments

Scientists value resolution, accuracy, coverage, and continuous records.

Candidate instruments Candidate instruments
Radar altimeter GPS receiver
Conical microwave radiometer Infrared spectrometer
Laser altimeter / lidar Millimeter-wave sounder
Synthetic aperture radar High-resolution optical imager

Cost, schedule, and risk also enter the evaluation.

NEOSS decision groups

Group Choices
Instrument selection Which of the eight instruments?
Instrument packaging Which spacecraft, orbits, and constellations?
Mission scheduling Which launch order and dates?

Initial orbital options: 1–3 planes, 1–4 satellites per plane, true polar / sun-synchronous / tropical, 400 / 600 / 800 km.

16.4 Six patterns of architectural decisions

Patterns and architectural styles

  • Pattern: the structure of a recurring decision problem.
  • Style: a characteristic way to organize the resulting architecture.

Examples:

  • ASSIGNING admits channelized and fully cross-strapped styles.
  • PARTITIONING admits monolithic and distributed styles.
  • CONNECTING admits bus, star, ring, mesh, and tree styles.

The six patterns at a glance

Pattern Core question
DECISION-OPTION Which one option for each decision?
DOWN-SELECTING Which subset of candidates?
ASSIGNING Which links between two sets?
PARTITIONING Which non-overlapping groups?
PERMUTING Which one-to-one placement or order?
CONNECTING Which links within a fixed node set?

DECISION-OPTION: one choice per decision

\[A=(x_1,\ldots,x_n),\quad x_i\in O_i,\qquad N=\prod_i m_i.\]

Decision Option 1 Option 2 Option 3 Option 4
1 1.1 1.2 1.3
2 2.1 2.2
3 3.1 3.2 3.3 3.4

Three decisions give \(3\times2\times4=24\) raw architectures.

Two DECISION-OPTION architectures

Two selections among three decisions with respectively three, two, and four options.

The same choice sets support different architecture vectors. Source: Crawley, Cameron & Selva (2016), Fig. 16.3, p. 382.

Autonomous underwater vehicle choices

Three autonomous underwater vehicle designs with different forms.

Bluefin 12 BOSS, Nereus, and SeaExplorer illustrate alternative AUV forms. Source: Crawley, Cameron & Selva (2016), Fig. 16.4, p. 383.

AUV: ten decisions, 4,608 combinations

Decision Alternatives
Configuration Torpedo, blended wing, hybrid, rectangular
Swim / hover Yes or no for each
Navigation Dead reckoning, acoustic positioning
Propulsion Propeller, Kort nozzle, passive gliding
Motor Brushed, brushless
Power Rechargeable batteries, fuel cells, solar
Sonar / magnetometer / thermistor Yes or no for each

\(4(2)(2)(2)(3)(2)(3)(2)(2)(2)=4{,}608\) before constraints.

Aerial network: duplicate encodings

Ten candidate balloon sites. Per site:

  • Radio: type A, type B, or no balloon.
  • Altitude: low or high.

Raw encoding: \(6^{10}=60{,}466{,}176\) vectors.

With one canonical no-balloon state:

\[5^{10}=9{,}765{,}625\ \text{distinct site-choice combinations}.\]

DOWN-SELECTING: a subset of candidates

\[S\subseteq U,\qquad A=(x_1,\ldots,x_m),\ x_i\in\{0,1\}.\]

\[N=2^m\quad\text{including the empty and full subsets}.\]

Instrument order:

[radiometer, altimeter, imager, sounder, lidar, GPS, SAR, spectrometer]

[1,1,0,0,0,1,0,0] selects radiometer, altimeter, and GPS.

Two selected subsets

Two subsets of eight candidate elements shown with selected and omitted elements.

Both architectures use the same candidate set; the selected members differ. Source: Crawley, Cameron & Selva (2016), Fig. 16.5 and §16.4, pp. 385–386.

Interactions change subset value

Interaction Everyday example NEOSS example
Synergy Toothbrush with toothpaste Altimeter with radiometer
Redundancy Several similar toothpastes Overlapping topographic measurements
Interference Hot food beside a cold drink Power or orbit conflicts

A useful subset combines high synergy, low interference, and limited redundancy.

A worked subset-selection problem

Classroom data: budget \(=6\) cost units.

Item Cost Standalone benefit
A 3 4
B 3 3
C 4 8

Selecting A and B together adds a synergy bonus of 4.

Which feasible subset has the highest benefit?

Subset selection beyond instruments

  • NLP strategies: complementary methods can improve coverage while consuming development and computation resources.
  • Spectral bands: additional bands can add information, duplicate a capability, or enable corrections.
  • Projects and goals: a limited budget forces scope choices.

The benefit of an addition depends on what is already selected.

NEOSS instrument-to-orbit assignment

Six instrument types with links to geostationary, sun-synchronous, and polar orbits.

Instrument types can appear in more than one orbit, or in none. Source: Crawley, Cameron & Selva (2016), Fig. 16.6, p. 388.

Assignment constraints change the count

For \(m\) left elements and \(n\) right elements:

Rule for each left element Raw count
Any subset \(2^{mn}\)
At least one right element \((2^n-1)^m\)
Exactly one right element \(n^m\)

For 3 sensors and 2 computers: 64, 27, or 8.

Channelized and cross-strapped styles

Channelized

Three independent one-to-one channels.

Fully cross-strapped

All three left elements connected to all three right elements.

Source: Figs. 16.8–16.9, p. 391. Partial connections give intermediate architectures.

Connectivity, cost, and failures

Channelized tendencies Cross-strapped tendencies
Fewer interfaces and lower connection cost More interfaces and greater complexity
Fewer alternative paths More potential redundancy and throughput
Greater isolation between chains More opportunities for failure propagation

The choice depends on connection cost, value of reliability, and the failure model.

PARTITIONING: exhaustive, disjoint groups

Partition \(U\) into nonempty groups \(S_1,\ldots,S_k\):

\[\bigcup_{i=1}^{k}S_i=U,\qquad S_i\cap S_j=\varnothing\quad(i\ne j).\]

  • Every element belongs to exactly one group.
  • The number of groups can vary from 1 to \(|U|\).
  • Group labels do not define different architectures.

Example: {{radar, radiometer}, {imager, sounder, GPS}, {lidar}}.

Two instrument-packaging architectures

Six instruments partitioned into three groups on the left and four on the right.

Every instrument appears exactly once; the groups change. Source: Crawley, Cameron & Selva (2016), Fig. 16.10, p. 393.

Encoding and counting partitions

For ordered elements \([a,b,c,d]\):

[1,1,2,3] represents {{a,b},{c},{d}}.

[7,7,2,9] represents the same partition.

Elements \(m\) Partitions \(B_m\)
3 5
5 52
8 4,140
10 115,975

Partitioning in other systems

  • Oil reservoirs: group reservoirs served by a common facility.
  • Service engineers: group engineers supported by a common supply manager.
  • Function decomposition: group lower-level processes into larger functions.

The partition decides which elements share a group. Further models determine location, capacity, and feasibility.

Monolithic and distributed architectures

Monolithic Fully distributed
One large group One group per element
Shares common infrastructure Replicates common infrastructure
Can capture close-coupled synergies Can isolate interference and failures
Integration links development schedules Smaller units can evolve separately
Shared resources may become bottlenecks Coordination can add cost and complexity

What drives the grouping decision?

  • Strength of synergies and interferences.
  • Physical proximity needed for those interactions.
  • Cost of replicated power, communication, structure, and support.
  • Resource competition and failure concentration.
  • Development time, expense profile, and opportunities to upgrade.

PERMUTING: exclusive positions

Match \(m\) elements to \(m\) positions, one element per position.

\[N=m!\]

For the order 2, 4, 1, 3:

Representation Vector
Element occupying each successive position [2,4,1,3]
Position assigned to each successive element [3,1,4,2]

The two vectors are inverse descriptions of the same arrangement.

Two permutations of five elements

Two one-to-one mappings of five elements to five positions.

Five elements have 5! = 120 possible arrangements. Source: Crawley, Cameron & Selva (2016), Fig. 16.12 and §16.4, pp. 397–398.

Order, layout, and operations

  • NEOSS: launch order affects data continuity and budgets.
  • Circuit layout: placement changes total interconnection length.
  • Vehicle operations: task order changes travel and resource use.
  • Exploration portfolios: destination sequence changes capability development.

An order alone may still need dates, durations, or geometry.

Front-loaded and incremental deployment

Front-loaded high-value deployment Incremental deployment
Prioritizes the most valuable systems Delivers some value sooner
May require a long wait for first value Builds capability progressively
Can avoid duplicated interim capability May incur interim or replacement costs
Greater exposure to program cancellation More opportunities to learn and adapt

CONNECTING: a graph on a fixed node set

\[G=(U,E),\qquad a_{ij}=1\ \text{when edge }i\to j\text{ exists}.\]

  • One set of nodes, with decisions about connections.
  • The adjacency matrix is square.
  • An undirected graph has \(a_{ij}=a_{ji}\).
  • Self-connections require an explicit modeling choice.

Nodes can represent systems, objects, processes, or facilities.

Connectivity and adjacency matrices

Two undirected six-node networks with corresponding symmetric adjacency matrices.

The matrices encode which pairs share a connection. Source: Crawley, Cameron & Selva (2016), Fig. 16.13, p. 400.

Four connectivity counts

For \(m\) labeled nodes and binary connections:

Self-connections Directed Undirected
Allowed \(2^{m^2}\) \(2^{m(m+1)/2}\)
Prohibited \(2^{m(m-1)}\) \(2^{m(m-1)/2}\)

For 3 nodes without self-connections:

64 directed graphs, 8 undirected graphs.

Bus and star topologies

Six elements sharing a common bus interface.

A star network with element 4 as its hub.

A bus is a shared interface. A star has a central node.

Source: Crawley, Cameron & Selva (2016), Fig. 16.14 and Box 16.5, pp. 402–403.

Ring, mesh, and tree topologies

Six elements connected in a closed ring.

Six elements with multiple mesh connections.

A tree with a branching hierarchy.

Where are the alternative routes, bottlenecks, and failure dependencies?

Source: Crawley, Cameron & Selva (2016), Fig. 16.14 and Box 16.5, pp. 402–403.

Bus, star, and ring tradeoffs

Style Potential advantage Principal concern
Bus Low interface cost, easy attachment Shared bus failure or congestion
Star Simple hub coordination Hub bottleneck and failure
Ring Predictable access in suitable protocols Dependence on the intact forwarding path

A bus is a shared interface. A hub is a node that can process or relay flow.

Mesh, tree, and hybrid tradeoffs

Style Potential advantage Principal concern
Mesh Alternative routes, distributed cooperation More links and routing complexity
Tree Clear hierarchy, maintainable expansion Failure can disconnect descendants
Hybrid Different structures for different needs More interface and coordination choices

Performance depends on where flow originates, where it goes, and how much it carries.

Pattern recognition exercise

Choose a natural pattern and state one necessary assumption.

  1. Select experiments within a mass limit.
  2. Divide experiments into spacecraft without duplication.
  3. Deploy instrument copies into named orbits.
  4. Choose the order of four launches.
  5. Select communication links among the spacecraft.
  6. Choose one propulsion type for each spacecraft.

16.5 Formulating a large problem

Architecting tasks and useful patterns

Task Usually useful patterns
Decompose form / function PARTITIONING
Map function to form ASSIGNING, PARTITIONING
Specialize form / function DECISION-OPTION, DOWN-SELECTING
Characterize form / function DECISION-OPTION
Connect form / function ASSIGNING, PERMUTING, CONNECTING
Define scope / select goals DOWN-SELECTING

Overlap: generic encodings

Pattern DECISION-OPTION representation
DOWN-SELECTING One binary choice per candidate
ASSIGNING One binary choice per left-right pair
PARTITIONING List partitions, or constrain group labels
PERMUTING List permutations, or enforce distinct positions
CONNECTING One binary choice per allowable edge

Representability does not guarantee a convenient search space.

Overlap: subset and graph views

  • ASSIGNING can be a subset choice for each left element.
  • CONNECTING can select a subset of candidate edges.
  • PARTITIONING can select candidate groups, with exact coverage constraints.
  • PERMUTING can select element-position pairs, with one per element and position.
  • A decision-option graph needs links only to that decision’s valid options.

Overlap: groups, positions, and networks

  • PARTITIONING: assign to indistinguishable bins, exactly once per element.
  • PERMUTING: assign to distinct positions, exactly one per position.
  • ASSIGNING: connect two distinct node sets only across the sets.
  • PERMUTING: use a perfect matching between elements and positions.
  • PARTITIONING: recover groups from graph components, often with duplicates.

Binary encoding requires enough bits

A decision with \(m\) options needs

\[b=\lceil\log_2m\rceil\]

bits in a compact binary encoding.

For 3 options:

Bits Meaning
00 / 01 / 10 Options A / B / C
11 Invalid code

NEOSS subproblems remain coupled

Instrument selection, packaging, and mission scheduling linked by packaging factors, maturity, and data continuity.

Different patterns organize different decisions, with feedback between them. Source: Crawley, Cameron & Selva (2016), Fig. 16.15 and §16.5, pp. 407–408.

Decomposition and global quality

  • Separate subproblems that are as loosely coupled as possible.
  • Preserve links through shared constraints and evaluation.
  • Carry multiple promising alternatives across a boundary.
  • Revisit upstream choices when downstream results expose a conflict.

Combining individually optimal subproblem solutions can produce a poor overall architecture.

16.6 Solving the optimization problem

Full-factorial enumeration

  1. Generate every candidate combination.
  2. Reject invalid architectures and duplicate encodings.
  3. Evaluate every remaining architecture.
  4. Retain metrics and explanations.
  5. Apply Pareto analysis and stakeholder preferences.

Enumeration gives both the frontier and the surrounding tradespace.

Enumeration algorithm

results = []
for A in CartesianProduct(option_sets):
    if not hard_constraints_hold(A):
        continue
    A = canonicalize(A)
    if already_evaluated(A):
        continue
    metrics, explanation = evaluate(A)
    results.append(A, metrics, explanation)
front = nondominated_architectures(results)

The computational budget

Approximate serial evaluation time:

\[T\approx N_{\mathrm{evaluated}}\,t_{\mathrm{eval}}.\]

Classroom example: \(2^{20}=1{,}048{,}576\) candidates.

Time per evaluation Total serial time
1 millisecond 17.5 minutes
1 second 12.1 days
1 minute 2.0 years

Broader coverage competes with deeper modeling.

Heuristic search for large spaces

  • Generate promising candidates without visiting every combination.
  • Use evaluated results to guide subsequent search.
  • Seek several good architectural families.
  • Treat the returned front as an approximation unless completeness is established.

Flexible heuristics suit categorical, nonlinear, and nonsmooth models.

Generator, evaluator, and search agent

Architecture generator and evaluator coordinated by a search algorithm receiving metrics and explanations.

Search directions connect candidate generation to evaluation feedback. Source: Crawley, Cameron & Selva (2016), Fig. 16.17, p. 410.

A population-based search cycle

Initial population, evaluation, termination check, selection, generation, and final preferred architectures.

A population carries multiple alternatives through successive generations. Source: Crawley, Cameron & Selva (2016), Fig. 16.18, p. 411.

Selection, diversity, and stopping

  • Preserve high-quality candidates through elitism.
  • Retain diversity across the tradeoffs and architecture families.
  • Generate new candidates through search operators.
  • Stop at a stated time, evaluation, generation, or improvement limit.
  • Compare final candidates with baselines and further analysis.

Generating feasible initial populations

  • Randomly choose valid decision options or binary values.
  • Reject infeasible samples when rejection is inexpensive.
  • For tight constraints, generate feasible candidates directly.
  • Alternatively, repair an infeasible candidate.
  • Check whether sampling or repair favors particular regions.

Uniform sampling can miss useful styles

For 10 elements, \(B_{10}=115{,}975\) partitions.

Number of groups Number of partitions
2 511
4 34,105
5 42,525
6 22,827

About 85.8% have 4–6 groups. Uniform over partitions is not uniform over group counts.

A mixed initial population

Source of candidates Why include it?
Baselines and architectures of interest Compare with known proposals
Extreme styles Test boundaries of the architecture space
Structured experimental designs Cover selected combinations systematically
Carefully sampled random candidates Explore less anticipated regions

Check feasibility for every source.

An orthogonal-array example

For three binary decisions, choose four of the eight vectors:

Sample Decision 1 Decision 2 Decision 3
A 0 0 0
B 1 1 0
C 0 1 1
D 1 0 1

Every pair of columns contains 00, 01, 10, and 11 exactly once.

Exploration and exploitation

Exploration Exploitation
Discover new regions Improve within a promising region
Preserve diverse possibilities Investigate useful local changes
Reduces premature convergence Improves candidate quality

Too little exploration can trap a search. Too little exploitation can leave promising candidates underdeveloped.

Crossover combines parent decisions

Classroom example: cut after the third decision.

Architecture Prefix Suffix
Parent 1 1 1 0 0 1 0
Parent 2 0 0 1 1 0 1
Child 1 1 1 0 1 0 1
Child 2 0 0 1 0 1 0

Single-point, multi-point, and uniform crossover exchange different portions of the encoding.

Schemata represent architecture families

A schema uses 0, 1, and \(*\) (“either value”).

[1,*,*,0] describes four binary architectures.

For a length-\(n\) schema with \(k\) fixed positions:

\[\text{number of matching architectures}=2^{n-k}.\]

One complete binary architecture matches \(2^n\) schemata.

Mutation and valid neighborhoods

  • Mutation makes a small random change.
  • Local search examines neighboring architectures for improvement.
  • A subset neighbor may flip one inclusion bit.
  • A permutation neighbor may swap two positions.
  • A partition neighbor may move one element between groups.

Operators should respect the encoding’s meaning and constraints.

Additional heuristics and expert knowledge

  • Tabu-style memory: discourage cycling through recently visited moves or configurations.
  • Domain knowledge: try combinations known to have useful interactions.
  • NEOSS example: colocate altimeter and radiometer when the mission permits their synergy.
  • Retain exploration beyond the expert’s favored region.

A portfolio of search heuristics

  • Combine general and domain-specific operators.
  • Measure which operators produce useful candidates.
  • Allocate more effort to effective operators.
  • Preserve enough exploration to detect changing opportunities.
  • Account for evaluation cost as well as improvement.

Choosing and reporting a search strategy

Situation Reasonable starting point
Small feasible space Full enumeration
Strong exploitable mathematical structure A suitable specialized method
Large, irregular architecture model Population-based heuristic search

Report the model, constraints, evaluation budget, baselines, and the limits of the resulting frontier.

16.7 Synthesis and application

A compact NEOSS formulation exercise

For a simplified program:

  • Choose among four instruments.
  • Partition selected instruments into spacecraft.
  • Assign each spacecraft one of three allowed orbit options.
  • Order the spacecraft launches.

Define two metrics, two hard constraints, and one coupling that a staged solution must retain.

Counting the compact NEOSS space

Classroom assumptions: no duplicated instruments, no extra constraints.

For a selected set of size \(s\), partition it into \(k\) spacecraft, choose one of 3 orbits for each, and order the launches:

\[N=\sum_{s=1}^{4}\binom{4}{s}\sum_{k=1}^{s}S(s,k)\,3^k\,k!=4{,}059.\]

The empty program adds one more architecture if it is allowed.

Chapter 16 takeaways

  • A decision model links architecture choices to stakeholder metrics.
  • Six patterns expose useful structure and architectural styles.
  • Encodings must preserve meaning, feasibility, and distinct alternatives.
  • Decomposition requires explicit attention to coupling.
  • Enumeration gives complete model coverage when affordable.
  • Heuristics provide useful candidates with limits that must remain visible.

Exit ticket

  1. Why is assigning to named orbits different from partitioning into spacecraft?
  2. Why can two encodings represent the same architecture?
  3. When can a locally attractive subsystem harm the full system?
  4. What does a heuristic Pareto front establish, and what does it leave uncertain?

Reading and further study

Crawley, Cameron & Selva, System Architecture (2016)

  • Chapter 16, §§16.1–16.7, pp. 373–416.
  • Chapter references, pp. 416–419.
  • Appendix C: rule-based representation, generation, and evaluation.
  • Appendix D: related computational methods and classical problems.

Revisit Chapters 14–15 for the Apollo, GNC, and Pareto examples.