Self-Expressiveness in Adaptive Systems
- Self-expressiveness is defined as a node’s ability to autonomously select and execute actions based on its self-awareness, objectives, and environmental context.
- It underpins adaptive software architectures and unsupervised learning, as seen in applications like subspace clustering and decentralized decision-making.
- Empirical studies demonstrate that incorporating self-expressiveness improves QoS modeling and system robustness, with significant gains in cloud autoscaling and smart camera networks.
The self-expressiveness principle is a foundational concept in the design and analysis of self-aware computing systems, subspace clustering, and adaptive software architectures. It defines the autonomous adaptation capabilities of a node—software, hardware, or agent—by formalizing how the node selects and enacts actions based on its awareness, objectives, and environmental context.
1. Formal Definition and Core Functions
Self-expressiveness is defined as the capability by which a self-aware node acts upon itself or its peers according to its current state, explicit objectives, and contextual constraints. In formal terms, a node exhibits self-expression if there exists a function
where:
- is the node’s state of self-awareness (comprising stimulus, interaction, time, goal, or meta-levels),
- is the vector of explicit goals, objectives, and preferences,
- represents context (environmental stimuli, peer states),
- is the set of adaptation or actuation actions.
The function operationalizes self-expression by mapping the node’s awareness and context to a concrete action to optimize objectives such as quality of service (QoS), cost, or utility. Actions may be strictly local (e.g., vertical scaling) or may involve coordination with peers (e.g., distributed consensus, coordinated adaptation). Self-expression is necessarily grounded in underlying levels of self-awareness (Chen et al., 2014).
2. Mathematical Models of Self-Expression
Self-expression is frequently implemented as an online optimization process that models both system objectives and adaptation costs. The relevant equations, as defined in (Chen et al., 2014), are:
- QoS Modeling:
Here, is the vector of selected primitives driving the -th QoS metric for service-instance , and 0 includes history or tuning parameters.
- Cost Modeling:
1
2 represents the 3-th control primitive and 4 its unit price.
- Global Objective (linear weighted-sum):
5
These formulations drive the selection of actuation commands and operationalize the self-expressiveness principle as continuous, model-based adaptation.
3. Architectural Patterns Enabling Self-Expressiveness
Self-expressiveness is a required capability across a spectrum of system-level architectural patterns. The cited handbook (Chen et al., 2014) catalogs eight patterns, all supporting self-expression (SE) in combination with varying levels of stimulus-awareness (SA), interaction-awareness (IA), time-awareness (TA), goal-awareness (GA), and meta-self-awareness. Four key patterns are summarized below:
| Pattern Name | Awareness Capabilities | Self-Expression Role |
|---|---|---|
| Basic | SA + SE | Reflex actions on local stimuli |
| Coordinated Decision-making | SA + IA + SE | Negotiated, consensus-driven action |
| Temporal Knowledge Sharing | SA + IA + TA + SE | Time-aware scheduling and adaptation |
| Goal Sharing | SA + IA(optional) + GA + SE | Dynamic re-goaling and alignment |
Each pattern prescribes both the arrangement of awareness functions and the mechanisms for actuation, from purely local to highly decentralized, coordinated, dynamic adaptation. Meta-self-awareness can be incorporated for runtime switching among awareness and self-expression algorithms.
4. Design Primitives and Technique Alternatives
Self-expression is delineated by specific architectural primitives—capability, behavior, interaction, and topology. Each primitive admits multiple alternative techniques, directly impacting adaptation performance and overhead:
- Capability - Self-Expression:
- Random optimization (stochastic hill-climbing)
- Static mapping (precomputed policy)
- Brute-force optimization (exhaustive search)
- Behavior (State):
- Reactive (stimulus-driven)
- Proactive (prediction-based)
- Hybrid
- Interaction (Link):
- Topologies: one-to-one, one-to-many, many-to-many, none
- Physical or logical connectors
- Topology (Structure/Existence):
- Arrangement of SE with respect to awareness modules
- Inclusion or omission options
Technique selection is governed by non-functional requirements (e.g., adaptation quality, decision overhead, reliability), typically evaluated via scenario analysis and quantitative scoring (Chen et al., 2014).
5. Pattern-Driven Methodology for Engineering Self-Expressive Systems
A systematic eight-step methodology, inspired by ATAM, is established for the principled engineering of self-expressive systems:
- Collect Requirements & Constraints: Identify both functional and non-functional criteria, including timing, accuracy, and environmental factors.
- Propose Candidate Architecture: Outline components such as sensors, collectors, trainers, actuators.
- Select Best Pattern(s): Determine necessity of awareness types; map to catalogued patterns.
- Fit Selected Pattern(s): Align architecture elements with pattern capabilities and connectors.
- Determine Important Primitives & Alternatives: Identify and shortlist critical primitives.
- Create Scenarios for Non-Functional Attributes: Define workloads, failures, and disturbance scenarios.
- Score Alternatives against Attributes: Weight, simulate, and normalize performance of technique alternatives according to scenario outcomes.
- Optimize & Select Final Variant: Maximize a weighted sum of normalized scores to select the architectural variant.
The methodology was validated in two canonical case studies: cloud autoscaling (Goal Sharing with Time-Awareness, using random optimization and ensemble prediction methods) and smart camera networks (Goal & Time Sharing, meta-self-awareness via multi-armed bandits and auction-based SE), both demonstrating superior adaptation and robustness over non-self-aware baselines (Chen et al., 2014).
6. Empirical Evaluation and Practical Outcomes
Empirical results established that self-expressive architectures, engineered per the described methodology, consistently deliver improved utility, adaptation quality, and robustness. Example outcomes include:
- For cloud autoscaling, QoS modeling accuracy exceeded 85%, adaptation decision overhead was below 200 s, and adaptation quality stayed within 20% of SLA. The final normalized utility score for the selected self-expressive variant reached 15.437 using the defined scoring equation.
- In smart camera networks, the use of self-expression in decentralized adaptive tracking maintained or recovered tracking utility after network changes; static schemes suffered utility drops of approximately 15% following node failures.
These results underscore that the explicit incorporation of the self-expressiveness principle is essential for engineering robust, adaptive, and performant autonomous systems (Chen et al., 2014).
7. Application Dimensions and Intersections
While the self-expressiveness principle is foundational in the design of general self-aware and self-expressive computing systems, it also underlies approaches in unsupervised learning and clustering, such as subspace clustering. For example, recent frameworks in deep subspace clustering leverage self-expressiveness by expressing data points as combinations of others in the learned representation space, with extensions to enable mini-batch training and deeper architectures via energy-based models (Li et al., 2021). This suggests broad applicability of self-expressiveness across adaptive control, distributed systems, and representation learning, mediated through the consistent theme of action selection grounded in awareness, goals, and context.