23.08.2013 Views

MNEMEE - Electronic Systems - Technische Universiteit Eindhoven

MNEMEE - Electronic Systems - Technische Universiteit Eindhoven

MNEMEE - Electronic Systems - Technische Universiteit Eindhoven

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

There is however one problem with using PCA to identify scenario parameters. This technique selects<br />

a set of run-time parameters that can be used to compute the cost. However, it is not guaranteed that<br />

this is the smallest set of run-time parameters. In fact, PCA may select a set of run-time parameters of<br />

which part of the set has a linear relation with other run-time parameters that are also selected.<br />

Keeping track of more scenario parameters at run-time may make the scenario detector more<br />

computationally expensive. Therefore, the set of scenario parameters should be minimized. This can<br />

be done by a dimension reduction technique known as feature subset selection [23] on the set of<br />

scenario parameters found by the PCA. Feature subset selection algorithms are iterative algorithms<br />

that typically consist of a filter and a wrapper. Starting from one or more initial candidates (e.g.<br />

subsets of the scenario parameters as identified by the PCA), the filter uses an evaluation criterion to<br />

decide which candidates are carried over to the next iteration of the algorithm. The wrapper technique<br />

determines how features (i.e. scenario parameters) are added or removed from the set of candidates.<br />

For this purpose, the wrapper uses an evaluation criterion to rate and compare different candidates.<br />

The wrapper can be seen as a filter that selects the most important scenario parameters. To minimize<br />

the set of scenario parameters, the feature subset algorithm can start with a set of candidates in which<br />

one scenario parameter is removed from each candidate as compared to the parameters identified by<br />

the PCA. Next, the algorithm can compute for each candidate a cost matrix C’ (similar to the matrix<br />

C) that estimates the costs of each run-time situation when the run-time parameters that are selected<br />

within this candidate are used. The wrapper selects the candidate with the lowest mean squared error<br />

between the matrices C’ and C. The algorithm is then repeated starting from this new candidate. This<br />

procedure is continued till no candidate can achieve the required accuracy. The result is a set of<br />

scenario parameters of which no run-time parameter can be removed without impacting the accuracy<br />

of the estimated cost of executing a run-time situation.<br />

7.4.4. Scenario formation<br />

The scenario parameter selection step has identified the run-time parameters that are needed to<br />

accurately predict the cost of executing a run-time situation. The relation between the value of the runtime<br />

parameters and the cost is captured in the cost-space model that is also generated by the scenario<br />

parameter selection step. The scenario formation step uses this cost-space model to cluster run-time<br />

situation with similar costs into a single system scenario. When clustering run-time situations, the cost<br />

and frequency of scenario switches should be taken into account. For this purpose, the trace<br />

information and platform characteristics are used in the scenario formation step.<br />

So far, we have not selected a specific clustering algorithm has been selected for this step. However,<br />

K-means clustering is considered as a promising candidate for this step. This technique has been<br />

successfully used before to clustering run-time situations [31]. K-means clustering is a technique in<br />

which the points in a trade-off space are clustered into K disjoint groups. Points are clustered together<br />

based on a similarity criterion (e.g. Euclidean distance). The two main issues with using K-means<br />

clustering are (1) to choose the number of clusters (i.e. the number of scenarios) and (2) to select the<br />

initial points in the space that form the centre of the clusters. A strategy to make these two choices<br />

might be to look at the histogram of one or more cost dimensions. The number of peaks in the<br />

histogram determines the value of K. The peaks define the centre of the initial clusters. Furthermore,<br />

the switching cost between scenarios should also be taken into account in the clustering. This can be<br />

done by adding the switching cost as an additional dimension to the trade-off space.<br />

Once the scenario formation is completed, a predictor must be created that at run-time predicts the<br />

scenario that will be active in the foreseeable future. The technique proposed in [28] to construct a<br />

run-time predictor for detecting a scenario can be used for this purpose. When constructing the<br />

predictor a trade-off is made between which scenario parameters are actually observed at run-time and<br />

how quickly a decision can be made on the next scenario that will be active.<br />

Public Page 25 of 87

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!