Docstoc

Presentation_6_

Document Sample
Presentation_6_ Powered By Docstoc
					Approximating Service Utility from
   Policies and Value Function
             Patterns
         Steffen Lamparter1, Daniel Oberle1,
                  Andreas Eberhart2

     1Institute
              AIFB, University of Karlsruhe (TH)
             2Hewlett-Packard, Germany
Outline

   Motivation: Web Service Selection
   Policy Modeling
     – A Generic Policy Description Framework
     – Basic Policy Classes
   Utility Model
   Deriving Value Functions from Policies
     – Value Function Pattern
     – Combination of Patterns
   Example
   Conclusion



                    Approximating Service Utility from Policies and Value Function Patterns
Scenario: Policy-based Web Service Selection

   Problem: Find the most suitable Web Service that is
    available in the Internet during run-time
   Suitability depends on QoS-Attributes, Security, Trust,
    Prices, etc.
    – Requirements are usually expressed by declarative (standardized)
      policy languages
   Today’s major policy efforts feature only boolean decision
    making  No Ranking!
   Multi-Attributive Utility Theory can be used to derive such a
    ranking
 Goal: Bringing together the two paradigms


                  Approximating Service Utility from Policies and Value Function Patterns
Service Selection Process
                         Service Selection Component
                                               Derivin
                                                  g              Selection
                             Initializ          Value
                               ation           Functio             Phase
                                                 ns

                                         Request
              import                     Service
                                                                             Request
  Weights                                                                    Offer                    Service
                   Task 1                                  Query                                       Offer
                                                           UDDI
                   Task 2
                                                                                                 Provider A
       Policies
                   Task 3                                                       Service
                                                                                 Offer

       Application                                  UDDI               Provider B

      Deriving Value Functions
      1. Integrate different policy efforts
      2. Generate a value function based on polices
                       Approximating Service Utility from Policies and Value Function Patterns
  A Generic Policy Description Framework

     Core Policy Ontology  Domain-independent framework
      for describing policies
             Top-level ontology (domain-independent)
                                                                                    DOLCE+
Ontology        {Object, Process, Time, Location, ...}
 Design                                   inherits-from
Pattern
            Core ontology (specific domain-independent)                        Core Legal Ontology
               {Norm, Obligation, Right, Policy, Scale,...}                    Core Policy Ontology

                                          inherits-from
                          Domain ontology
                    {Security, Key Length, Price,...}

     Setting up on DOLCE+ reduces modeling effort and
      increases quality by providing a richly axiomatized and
      philosophically sound conceptualization.
                     Approximating Service Utility from Policies and Value Function Patterns
    Core Policy Ontology

                                                      defines
                                       defines
                       defines

Policy Description
                                  Agent                                   Task                             Object
-Information Source                                                                    anakastic duty
-AgeCertification
      of Information         -subclassof: Role attitude towards    -subclassof: Course                -subclassof: Role
                                  Application                                Invocation towards                    ANY WS
        Policy                       XY                                          Task
                                                                        requisite
                                                                           for

                                                                        Attribute                       Constraint Value
                        defines                                   -subclassof. Parameter   valued by   -subclassof: Region

                                                                             Certification                            {ISO}




               Example: Only ISO-certified services may be invoked.



                                  Approximating Service Utility from Policies and Value Function Patterns
Modeling Policies - Policy Classes

   Policies can be categorized according to…
     – Deontic Modality:
         • Normative relations such as rights, obligations, privileges,
           implicit or explicit permissions, etc.
         • For defining constraints Obligation and Recommendations are
           used (cf. RFC 2219)
            – Obligations: Constraints that must be met
            – Recommendations: Constraints that should be met
     – Policy Operator:
         • Comparative predicates like <,>,==,!=,…
     – Scale of Attribute Values:
         • Nominal, Ordinal, Interval, or Ratio Scale


                   Approximating Service Utility from Policies and Value Function Patterns
Utility Model

   Properties of the decision problem (e.g. attributes of
    service) are denoted by X = {X1,…,Xn}
   Potential outcome space that has to be considered when
    making a decision: O  Ω, where Ω = {X1×…× Xn}
   To make a decision a preference structure is needed that
    is defined by the relation   (“preferred-to”)
   Value function: a, b  : a b  V(a)  V(b)
   Additive value function:
                     V(x)    v (x)
                                       n


                                              j   j
                                      j1



   Manual specification value functions is complex task
     Derive value functions from policies

                 Approximating Service Utility from Policies and Value Function Patterns
Deriving a Value Function from Policies

   Value Function Patterns:
    Predefined, parameterized utility functions
   Each policy class can be approximated by a value function
    pattern
   Typically, policy languages are only capable of
    representing a very limited number of policy classes
      Only a limited number of patterns are needed

                                           vi(x)                                    vi(x)
                  Modality                   a                                        1
                  Operator
                   Scale                                                              0
                                             b
Policy          Policy Class                 Value Function                           Value Function
                                                 Pattern
                   Approximating Service Utility from Policies and Value Function Patterns
Deriving a Value Function from Policies

    Policy                       Policy Class                        Value Function Pattern
                                                                        vi(x)
                                                                            a
                                Deontic Modality:
P1: Only ISO-
                                Obligation
certified services                                                               non ISO DNV TÜV other
                                Scale: Nominal
may be invoked.
                                Operator: “=“
                                                                           -∞


 1. Existing policies (e.g. in WS Policy) are imported into our framework
 2. In doing so, the class of the policy can be determined
 3. The class directly implies a specific value function pattern
 4. Determination of parameters


                     Approximating Service Utility from Policies and Value Function Patterns
Value Function Patterns
          Obligations                                            Recommendations




 ordered scale: ordinal, interval, or ratio scale
                  Approximating Service Utility from Policies and Value Function Patterns
Combination of Patterns

   In case there is more than one policy Pj,1,… ,Pj,1 about a
    property j
      Several value function vj,1,…, vj,n are derived
      Patterns have to be combined
      Combination depends on operations between policies
         • Pj,1  …  Pj,1: vj(xjk) = min(vj,1(xjk),…,vj,n(xjk))
         • Pj,1  …  Pj,1: vj(xjk) = max(vj,1(xjk),…,vj,n(xjk))
         • P1  P2
             – Head of Implication: no preference information
             – Body: Indicates a pattern if P1




                     Approximating Service Utility from Policies and Value Function Patterns
     Example: Combination of Patterns
            P2: Generally, all outgoing messages have to be encrypted
             with a key length of at least 64 bit.
            P3: Key Length should be at least 128 bit if the payment
             method is credit card.
            X2: KeyLength      V2,1(x)                                V2,CC(x)
Policy P2




                                 1
            Obligation
                                                                         1
            Scale: Ratio                  64   128      number
                                  -∞                    of bits x2k
            Operator: ‘>‘
                                                                                    64   128        number
            Payment Method =   V2,2(x)                                    -∞                        of bits x2k
            ‘CreditCard’          1                                                               1, if x2k>=128
            X2: KeyLength                                                    V2,CC(x2k) =       1/128 x2k, if 64<=
Policy P3




            Recommendation                64   128      number                                 x2k<128
                                                                                                 -∞, else
                                                        of bits x2k
            Scale: Ratio       v2,2(x)
                                  1                                                                   1, if x2k>=64
            Operator: ‘>‘                                                    V2,BT(x2k) = v2,1=
            Payment Method                                                                            -∞, else
                                          64   128
                                                        number
            = ‘BankTransfer’
                                                        of bits x2k
                                 Approximating Service Utility from Policies and Value Function Patterns
                                                     Application Policies
Example
                                               P1: Invoke only services that are
                                                ISO 9000 certificated.
Step 1: Initialization
                                               P2: Generally, all outgoing
                                                messages have to be encrypted
                                                with a key length of at least 64 bit.
      Application                              P3: A key length should be at least
                                                128 bit if the payment method is                        Service
                                                credit card.                                             Offer

 Load Data
                                                                                                   Provider A
             Policies
                                                 Service Selection
 Optimize
 Cashflow
                                                   Component

 Save Data   Attribute
             Weights                                                                                            Service
                                                                                                                 Offer
                                                Attribute Weights
                                                                                                   Provider B
                                                Certificate: 60%
                                                Key Length: 40%

                                                                                  UDDI

                         Approximating Service Utility from Policies and Value Function Patterns
Example
Step 2: Deriving a Value Function


      Application
                                    V(x) 0.6v (x )  0.4v (x )
                                                             1       1                2     2
                                                                                                        Service
                                                                                                         Offer

 Load Data
                                                                                                   Provider A
             Policies
                                               Service Selection
 Optimize
 Cashflow
                                                 Component
                                               v1(x)
 Save Data   Attribute                             1
             Weights                                                                                            Service
                                                        non ISO DNV TÜV other
                                                                                                                 Offer
                                                   -∞
                                                                                                   Provider B
                                  V2;BT(x)                V2,CC(x)

                                        1                        1

                                              64    128      x2k         64   128   x2k   UDDI
                                        -∞                    -∞

                         Approximating Service Utility from Policies and Value Function Patterns
Example
Step 3: Selection Phase
                                                    Service Offer A

      Application                           Certificate = “ISO”
                                            Key Length = 128                                           Service
                                                                                                         Offer
                                            Payment Method = “BankTranfer”
 Load Data
                            Request                                                                Provider A
             Policies
                            Optimization         Service Selection                Request Offer
                            Service
 Optimize
 Cashflow
                                                   Component

                                                                              Query UDDI
 Save Data   Attribute                        Service Offer B
             Weights                                                                                            Service
                                                                                                                 Offer
                                             Certificate = “ISO”
                                             Key Length = 64                                      Provider B
                                             Payment Method =
                                              “CreditCard”

                                                                                  UDDI

                         Approximating Service Utility from Policies and Value Function Patterns
Example
Step 3: Selection Phase
                                         VA(x) = 0.6*v1(‘ISO’)+0.4*v2,BT(‘128’)
                                           = 0.6*1 + 0.4+*1 = 1
      Application
                                     VB(x) = 0.6*v1(‘ISO’)+0.4*v2,CC(‘64’)                              Service
                                          = 0.6*1 + 0.4*0.5 = 0.8                                        Offer

 Load Data
                                                                                                   Provider A
             Policies
                                               Service Selection
 Optimize
 Cashflow
                                                 Component

 Save Data   Attribute
             Weights                                                                                            Service
                                                                                                                 Offer

                                                                                                   Provider B



                                                                                  UDDI

                         Approximating Service Utility from Policies and Value Function Patterns
Conclusion

   Bringing together two powerful paradigms: Policy-based
    computing and utility theory.
   Preference information can be derived from policies.
   Overcoming heterogeneity of policy languages is done by
    introducing a generic policy framework


Open Issues:
   Hard constraints might be not enough
   Does the attribute independency hold, what is the error
    rate?
   Extending the policy framework (e.g. priorities)

                Approximating Service Utility from Policies and Value Function Patterns
            Thank you for your attention!




www.aifb.uni-karlsruhe.de/WBS                      www.ime.uni-karlsruhe.de


              Approximating Service Utility from Policies and Value Function Patterns
Motivation
   Policies: High-level guidelines from human users that
    guide the decision of an autonomous system.
   Policies contain preference information which potential
    decisions are favorable and which are not
   Today’s major policy efforts feature only boolean decision
    making
      Policies can be used to find out whether an action is allowed or not
      Policies cannot be used to determine whether an action is
       preferred to another action
   Typically, this is not enough for decision making
      A (cardinal) ranking of the alternatives is needed
   Multi-Attributive Utility Theory can be used to derive such a
    ranking
                   Approximating Service Utility from Policies and Value Function Patterns
Service Selection Process
                                      Deriving                      Selection
          Initializa
                                       Value
                tion                                                    Phase
                                      Function
   Initialization
    – Import relevant policies using standard formalisms like WS Policy,
      XACML, EPAL, REI, KAoS,…
    – Import attribute weighting information (by means of an attribute
      hierarchy)
   Deriving Value Function
    – Conceptual integration of policy languages
    – Generate utility function
   Selection Phase
    – Receive request from application
    – Query Registry and get service offers
    – Evaluate offers and choose service with the highest value
                     Approximating Service Utility from Policies and Value Function Patterns
 Core Policy Ontology
                                                       defines
                                        defines
                         defines

   Policy Description
                                     Agent         Obligation/         Task                             Object
   -Information Source                                                              anakastic duty
   -Age of Information
       Certification           -subclassof: Role Recommendation -subclassof: Course    towards     -subclassof: Role
                                    Application                        Invocation
          Policy                       XY                                 Task                              ANY WS
                                                                       requisite
                                                                          for

                                                                       Attribute                      Constraint Value
                          defines                                -subclassof. Parameter   valued by   -subclassof: Region

                                                                      Certification                          {ISO}


Example: Only ISO-certified services may be invoked.
Policy(CertificationPolicy)                                 obligation_towards(ApplicationXY, InvocationTask)
Agent(ApplicationXY)                                        Attribute(Certification)
defines(CertificationPolicy, MyApplication)                 requisite_for(Certification, InvocationTask)
Task(InvocationTask)                                        subclass({ISO}, ConstraintValue)
defines(CertificationPolicy, InvocationTask)                valued_by(Certification, {ISO})



                               Approximating Service Utility from Policies and Value Function Patterns

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:5
posted:4/1/2012
language:
pages:22