... | ... | @@ -33,15 +33,19 @@ for-all implementations i |
|
|
Introduce binary variables for "implementation i" chosen, additionally to the
|
|
|
"implementation i deployed on pe" variables, greatly reducing the size of architectural constraints.
|
|
|
|
|
|
(1) Important question, where will the required components be declared – Comp, Impl or Mode.
|
|
|
Here done at Impl-Level – inconsistent with the AST-rules.
|
|
|
|
|
|
```
|
|
|
for all components c
|
|
|
constraint_c = "1" "="
|
|
|
for-all (impls-of c) i
|
|
|
constraint_c += (varname i) "+"
|
|
|
constraint_i = "0" "=" "-" (varname i)
|
|
|
for-all PEs pe
|
|
|
constraint_i += "+" (varname i-deployed-on-pe)
|
|
|
for-all (req-comp i) rc
|
|
|
constraint_i = "0" "=" "-" (varname i)
|
|
|
for-all (modes-of i) m
|
|
|
constraint_c += (varname m) "+"
|
|
|
for-all PEs pe
|
|
|
constraint_i += "+" (varname i-in-m-deployed-on-pe)
|
|
|
for-all (req-comp i) rc (1)
|
|
|
constraint_rc = "0" "=" "-" (varname i)
|
|
|
for-all (impls-of rc) rci
|
|
|
constraint_rc = "+" (varname rci)
|
... | ... | @@ -50,6 +54,10 @@ for all components c |
|
|
constraints += constraint_c
|
|
|
```
|
|
|
|
|
|
In scheme: to-ilp auf impl gib ein paar zurück, so dass
|
|
|
- (car paar) = liste von '(varname m) +'
|
|
|
- (cadr paar) = liste mit constraints der form '0 = - {(varname i)}* {{+ (varname i-in-m-deployed-on-pe)}*}*'
|
|
|
|
|
|
### Resource/Software NFP Negotiation
|
|
|
|
|
|
Nicht so leicht abbildbar, wenn nicht nur nach der 'Direction' der Properties
|
... | ... | |