32
Relational Relational Preference for Preference for Control Control Ronen Brafman Ronen Brafman Department of Computer Department of Computer Science Ben-Gurion Science Ben-Gurion University University

Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Relational Relational Preference for Preference for

ControlControlRonen BrafmanRonen Brafman

Department of Computer Department of Computer Science Ben-Gurion Science Ben-Gurion

UniversityUniversity

Page 2: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Decision Making Contexts: Decision Making Contexts: Two ExtremesTwo Extremes

1.1. Online applicationsOnline applications Lay usersLay users Preference elicitation interface must be based on Preference elicitation interface must be based on

very simple natural language expressionsvery simple natural language expressions Users will spend at most a few minutes, usually Users will spend at most a few minutes, usually

lessless

2.2. Decision analysis contextDecision analysis context Facilitated by a human expertFacilitated by a human expert Complex modeling that requires intelligent Complex modeling that requires intelligent

framingframing Quantitative modelQuantitative model Considerable effortConsiderable effort

Page 3: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

A Third Context: System A Third Context: System ControlControl

Goal: Design a system that behaves well in Goal: Design a system that behaves well in a large and diverse number of settings that a large and diverse number of settings that cannot all be foreseen offline. cannot all be foreseen offline.

A generic preference model is used by the A generic preference model is used by the system to select among alternative choicessystem to select among alternative choices

The designer is willing to spend time The designer is willing to spend time constructing the modelconstructing the model

Yet, the language must be intuitive so that:Yet, the language must be intuitive so that: The specification process is convenient and The specification process is convenient and

accessibleaccessible The specification is easy to modifyThe specification is easy to modify

Page 4: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Decision-Theoretic System Decision-Theoretic System DesignDesign

Not a new ideaNot a new idea See Russell and Norvig’s AI: A Modern See Russell and Norvig’s AI: A Modern

ApproachApproach Recent successful autonomous vehiclesRecent successful autonomous vehicles

A purist approach:A purist approach: Maintain a probability distribution, Maintain a probability distribution,

utility functionutility function Select actions that maximize expected Select actions that maximize expected

utilityutility

Page 5: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Decision-Theoretic System Decision-Theoretic System Design: Utilities Get the Design: Utilities Get the

Short EndShort End Work on probabilistic reasoning is far Work on probabilistic reasoning is far

aheadahead Relational and object-oriented Relational and object-oriented

probabilistic modelsprobabilistic models Inference algorithmsInference algorithms Learning methodsLearning methods

Good progress on the utility/preference Good progress on the utility/preference specification side, but not on par with specification side, but not on par with the probabilistic modelsthe probabilistic models

Page 6: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Some Possible ReasonsSome Possible Reasons

Historic lagHistoric lag

Machine learningMachine learning Probably the most important application Probably the most important application

area of AIarea of AI A lot of dataA lot of data Great need for modeling itGreat need for modeling it

Page 7: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

What About Preference What About Preference Models?Models?

Modeling preferences is harder:Modeling preferences is harder: It is harder to introspect about preferencesIt is harder to introspect about preferences It is harder to learn preferences – little data if anyIt is harder to learn preferences – little data if any

Can we learn a preference model for a new application?Can we learn a preference model for a new application?

Still - as system become more complicated, Still - as system become more complicated, the need for tools that guide them is more the need for tools that guide them is more pressingpressing

We need to provide designers with We need to provide designers with convenientconvenient tools for describing complex tools for describing complex control preferencescontrol preferences

Page 8: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Rule-Based SystemsRule-Based Systems

Rule-based systems are intuitiveRule-based systems are intuitive Are often used in industry to Are often used in industry to

describe complex control rulesdescribe complex control rules Are very rigid:Are very rigid:

If the body is true, so is the headIf the body is true, so is the head Certain contexts (constraints) can Certain contexts (constraints) can

render them inconsistentrender them inconsistent Context sensitivity must be built in Context sensitivity must be built in

carefullycarefully Limited modularityLimited modularity

Page 9: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Utility FunctionsUtility Functions

Immediate context awarenessImmediate context awareness If some constraint holds, seek best If some constraint holds, seek best

feasible solutionfeasible solution Additive forms (GAI) provide Additive forms (GAI) provide

modularitymodularity Defined over a rigid set of Defined over a rigid set of

propositions propositions

work with a rigid, predefined set of work with a rigid, predefined set of objectsobjects

Page 10: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Relational/OO Preference Relational/OO Preference RulesRules

Simple and intuitive like rule-based Simple and intuitive like rule-based systemssystems

Induce a utility/value function for Induce a utility/value function for any given set of objectsany given set of objects

Simple additive semantics provides Simple additive semantics provides modularitymodularity

Page 11: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

A Concrete ApplicationA Concrete Application

Command and Control Monitoring:Command and Control Monitoring: High ranking officials monitoring masses of High ranking officials monitoring masses of

data in a real-time command & control data in a real-time command & control centercenter

Our goal: decide which data to show at Our goal: decide which data to show at each point in timeeach point in time

Video streamsVideo streams Sensor dataSensor data Results of relevant queriesResults of relevant queries Results of data analysis (e.g., simulations, risk Results of data analysis (e.g., simulations, risk

assessment)assessment)

Page 12: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Example : Fire Example : Fire DepartmentDepartment

Cameras on fireman helmet, fixed Cameras on fireman helmet, fixed surveillance camerassurveillance cameras

Heat sensors, smoke detectors, coHeat sensors, smoke detectors, co22--levelslevels

Area maps, building plans, driving Area maps, building plans, driving distance, number of residentsdistance, number of residents

Simulation of structure strength, time Simulation of structure strength, time to contain a fire as function of wind and to contain a fire as function of wind and other weather conditions, etc.other weather conditions, etc.

Page 13: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Requirements: Object Requirements: Object Oriented and Generic Oriented and Generic

SpecificationSpecification Fire departments in different cities Fire departments in different cities

have different personal, equipmenthave different personal, equipment Objects within a single department Objects within a single department

change:change: New firemenNew firemen New equipmentNew equipment Fire events – naturally modeled as an objectFire events – naturally modeled as an object

One preference specification should One preference specification should cover allcover all

Page 14: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Modeling a Fire Modeling a Fire Department - IDepartment - I

Object classes: fireman, fire-engine, Object classes: fireman, fire-engine, fire, camera, heat-sensor, cofire, camera, heat-sensor, co22-sensor-sensor

Fireman attributesFireman attributes Name, Location, Rank, Role, …Name, Location, Rank, Role, … Camera, heat-sensor, …Camera, heat-sensor, …

Camera attributes:Camera attributes: OnOn DisplayDisplay URLURL

Page 15: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Modeling a Fire Modeling a Fire Department - IIDepartment - II

Rules:Rules:Fireman(x) Fireman(x) ΛΛ fire(y) fire(y) ΛΛ x.location = x.location =

y.location y.location

x.camera.display x.camera.display [“on” 4, “off” 0][“on” 4, “off” 0]

Fireman(x) Fireman(x) ΛΛ x.co x.co22-level=high -level=high

x.camera.display x.camera.display [“on” 8, “off” 0][“on” 8, “off” 0]

Page 16: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

More FormallyMore Formally

Model includes:Model includes: Set of object classesSet of object classes

Each class specifies object attributes and Each class specifies object attributes and their type (and possibly class attributes)their type (and possibly class attributes)

Set of preference rules of the form:Set of preference rules of the form: rule-body rule-body rule-head [ rule-head [vv11, w, w11; v; v22 w w22;…v;…vmm w wmm]]

Page 17: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Preference RulesPreference Rules

rule-body rule-body rule-head [ rule-head [vv11, w, w11; v; v22 w w22;…v;…vmm wwmm]]

Rule-body: classRule-body: class11((xx11) ) ΛΛ … … ΛΛ class classkk((xxkk) ) ΛΛ αα1 1 ((xxi1i1)) ΛΛ… … Λ Λ ααs s ((xxisis))

ααl l ((xxll)) : : xxii.path REL .path REL xxjj.path OR .path OR xxii.path REL value.path REL value REL: <, >, =, ≠, etc.REL: <, >, =, ≠, etc. Path: an attribute chain, such as x.mother.professionPath: an attribute chain, such as x.mother.profession

Rule-head: Rule-head: xxii.path.pathvvi i – – a possible value of a possible value of xxii.path.pathwwi i – – a real numbera real number

Page 18: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Controllable and Controllable and Uncontrollable AttributesUncontrollable Attributes

We distinguish between controllable We distinguish between controllable attributes, to which we need to assign a attributes, to which we need to assign a valuevalue Example: camera.displayExample: camera.display

And uncontrollable, or context attributesAnd uncontrollable, or context attributes Example. Fire.locationExample. Fire.location

The body may refer to both controllable and The body may refer to both controllable and uncontrollable attributesuncontrollable attributes

The head contains a single controllable The head contains a single controllable attributeattribute

Page 19: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Informal SemanticsInformal Semantics

Intuitive semantics: the value of value Intuitive semantics: the value of value vvi i forfor

xxii.path is .path is wwi i whenwhen αα11 ΛΛ… … Λ Λ ααl l are satisfied A form of conditional, valued preference

If you want, a relational UCP-net Preferences rules r + set of object

instances o + assignment to uncontrollable (context) attributes

utility function over all possible assignments to the controllable attributes of o.

Page 20: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Obtaining the Value Obtaining the Value FunctionFunction

Step 1: Given a set of objects, and a set of Step 1: Given a set of objects, and a set of rules, generate all ground instances of the rules, generate all ground instances of the rulesrules

Step 2: Filter rule bodies based on the Step 2: Filter rule bodies based on the value of context attributes:value of context attributes: Remove satisfied conjunctsRemove satisfied conjuncts Eliminate rules with false conjunctsEliminate rules with false conjuncts

Step 3: We now have a set of ground rules Step 3: We now have a set of ground rules containing only controllable attributescontaining only controllable attributes

Step 4: The value of assignment Step 4: The value of assignment ππ to the to the uncontrollable attributes is the sum of all uncontrollable attributes is the sum of all weights associated with heads of weights associated with heads of unassigned rules whose body unassigned rules whose body ππ satisfies satisfies

Page 21: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Example Example Consider the rules we saw before:Consider the rules we saw before:

fireman(x) fireman(x) ΛΛ fire(y) fire(y) ΛΛ x.location = y.location x.location = y.location x.camera.display [“on” 4, “off” 0]x.camera.display [“on” 4, “off” 0]

Fireman(x) Fireman(x) ΛΛ x.co x.co22-level=high -level=high x.camera.display [“on” 8, “off” 0]x.camera.display [“on” 8, “off” 0]

Objects: fireman(Alice)Objects: fireman(Alice) Fireman(Alice) Fireman(Alice) ΛΛ Alice.co Alice.co22-level=high -level=high

Alice.camera.display [“on” 8, “off” 0]Alice.camera.display [“on” 8, “off” 0] Objects: fireman(Alice),fire(fire1)Objects: fireman(Alice),fire(fire1)

fireman(Alice) fireman(Alice) ΛΛ fire(fire1) fire(fire1) ΛΛ Alice.location = Alice.location = WTC.location WTC.location

Alice.camera.display [“on” 4, Alice.camera.display [“on” 4, “off” 0]“off” 0]

Fireman(Alice) Fireman(Alice) ΛΛ Alice.co Alice.co22-level=high -level=high Alice.camera.display [“on” 8, “off” 0]Alice.camera.display [“on” 8, “off” 0]

Page 22: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Example - FilteringExample - Filtering Fireman(Alice) Fireman(Alice) ΛΛ Alice.co Alice.co22-level=high -level=high

Alice.camera.display [“on” 8, “off” 0]Alice.camera.display [“on” 8, “off” 0] Alice.coAlice.co22-level=high -level=high True True Alice.camera.display [“on” 8, “off” 0] Alice.camera.display [“on” 8, “off” 0] Alice.coAlice.co22-level=low -level=low ǾǾ

fireman(Alice) fireman(Alice) ΛΛ fire(fire1) fire(fire1) ΛΛ Alice.location = Alice.location = fire1.location fire1.location

Alice.camera.display [“on” 4, “off” 0]Alice.camera.display [“on” 4, “off” 0] Alice.location = wtc; fire1.location = wtcAlice.location = wtc; fire1.location = wtc True True Alice.camera.display [“on” 4, “off” 0] Alice.camera.display [“on” 4, “off” 0] Alice.location ≠ WTC. LocationAlice.location ≠ WTC. Location ǾǾ

Page 23: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Example Example Objects: fireman(Alice), Alice.coObjects: fireman(Alice), Alice.co22-level=high-level=high

True True Alice.camera.display [“on” 8, “off” 0] Alice.camera.display [“on” 8, “off” 0] Value(Alice.camera.display = on) = 8Value(Alice.camera.display = on) = 8 Value(Alice.camera.display = off) = 0Value(Alice.camera.display = off) = 0

Objects: fireman(Alice),fire(fire1), Alice.coObjects: fireman(Alice),fire(fire1), Alice.co22--level=high, Alice.location = fire1.location = level=high, Alice.location = fire1.location = wtcwtc True True Alice.camera.display [“on” 8, “off” 0] Alice.camera.display [“on” 8, “off” 0] True True Alice.camera.display [“on” 4, “off” 0] Alice.camera.display [“on” 4, “off” 0]

Value(Alice.camera.display = on) = 12Value(Alice.camera.display = on) = 12 Value(Alice.camera.display = off) = 0Value(Alice.camera.display = off) = 0

Page 24: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

(a bit) More Formally(a bit) More Formally A variable may appear only if it also appears A variable may appear only if it also appears

within a unary “class” variable.within a unary “class” variable. Constrains the number of ground instances to be finite Constrains the number of ground instances to be finite Finite universe also implies finite number of attributesFinite universe also implies finite number of attributes

Filtered ground rules induce value function over Filtered ground rules induce value function over the set of assignments to controllable attributesthe set of assignments to controllable attributes

vvR,O R,O (a)(a) – value of assignment a given rules – value of assignment a given rules rr objects objects oo r’ – r’ – ground instances of rules in ground instances of rules in rr W(r’,a) – W(r’,a) – the weight associated with the rule head of r’ the weight associated with the rule head of r’

and assignment aand assignment a

'

, ),'()(r

OR arwav

Page 25: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Some Modeling IssuesSome Modeling Issues

CompositionalityCompositionality Should we allow multiple rules with identical Should we allow multiple rules with identical

heads?heads? Our answer – yesOur answer – yes Fits naturally with the idea of additive Fits naturally with the idea of additive

representationrepresentation Example:Example:

fireman(x) fireman(x) ΛΛ fire(y) fire(y) ΛΛ x.location = y.location x.location = y.location x.camera.display [“on” 4, “off” 0]x.camera.display [“on” 4, “off” 0]

fireman(x) fireman(x) ΛΛ fireman(y) fireman(y) ΛΛ fire(z) fire(z) ΛΛ x.location = y.location x.location = y.location ΛΛ x.location = z.location x.location = z.location ΛΛ x ≠ y x ≠ y ΛΛ x.camera.display = x.camera.display = “on” “on” y.camera.display [“on” -4, “off” 0] y.camera.display [“on” -4, “off” 0]

Page 26: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

More Modeling IssuesMore Modeling Issues Indirect preferencesIndirect preferences

I want to say “low-ranking drivers are I want to say “low-ranking drivers are preferred for fire-engines”preferred for fire-engines”

I could write:I could write: Fire-engine(x) Fire-engine(x) x.driver.rank [“low” 4, high “0”] x.driver.rank [“low” 4, high “0”]

But rank is not a controllable attribute – But rank is not a controllable attribute – driver is!driver is!

Violates our restriction on rule-headsViolates our restriction on rule-heads Maybe: fire-engine(x) Maybe: fire-engine(x) ΛΛ fireman(y) fireman(y) ΛΛ y.rank y.rank

= low = low x.driver=y [T 4, F 0]? x.driver=y [T 4, F 0]? Somehow, more flexibility is desirable.Somehow, more flexibility is desirable.

Page 27: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Computing Optimal Computing Optimal AssignmentAssignment

Branch and boundBranch and bound Local searchLocal search

May be good for real-time applications May be good for real-time applications with many computations with similar with many computations with similar sets of objectssets of objects

Reduction to relational probabilistic Reduction to relational probabilistic modelsmodels

Page 28: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Related WorkRelated Work

Relational probabilistic modelsRelational probabilistic models Close links between probabilities/utilities/valuesClose links between probabilities/utilities/values

All are forms of orderingsAll are forms of orderings Multiplicative decomposition of joint distribution Multiplicative decomposition of joint distribution

similar to additive decomposition of value functionsimilar to additive decomposition of value function Just take the logarithmJust take the logarithm

There are various prm formalismsThere are various prm formalisms Syntax is similarSyntax is similar Semantics is similar in the sense that prm + objects Semantics is similar in the sense that prm + objects

induces a distribution over assignment to Herbrand induces a distribution over assignment to Herbrand BaseBase

Compositionality more of an issueCompositionality more of an issue Inference is also mostly based on grounding firstInference is also mostly based on grounding first

Page 29: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Related WorkRelated Work

Relational Models – translationRelational Models – translation Given: rule-body Given: rule-body rule-head [ rule-head [vv11, w, w11; v; v22

ww22;…v;…vmm w wmm]] Markov Logic: rule-body Markov Logic: rule-body ΛΛ rule- rule-

head(head(vvii) : ) : wwii

Relational Bayesian Logic: Pr(rule-head = vi | rule-body) = exp(wwii))

Renormalize weights to ensure Renormalize weights to ensure exp(wwii) ) in [0,1]in [0,1] Use MAP queries to find optimumUse MAP queries to find optimum

Page 30: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Related WorkRelated Work

Soft Constraint Programs – more Soft Constraint Programs – more generalgeneral Preference rules attempt to provide a Preference rules attempt to provide a

minimalist solution that generalizes GAI minimalist solution that generalizes GAI value functionvalue function

Page 31: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

Ongoing WorkOngoing Work C&C system implementation on-goingC&C system implementation on-going

Prototype completion expect in JulyPrototype completion expect in July Will test B&B vs. local searchWill test B&B vs. local search Future plans – try to use Alchemy (engine for Future plans – try to use Alchemy (engine for

Markov Logic)Markov Logic) Integrate with uncertaintyIntegrate with uncertainty

May not be hard given the relation with PRMsMay not be hard given the relation with PRMs May be viewed as some form of relational May be viewed as some form of relational

influence diagram where decisions are not influence diagram where decisions are not orderedordered

Cyclic dependencies!Cyclic dependencies! Try to learn from observationTry to learn from observation

Based on user interaction with the system, try to Based on user interaction with the system, try to learn/modify ruleslearn/modify rules

Page 32: Relational Preference for Control Ronen Brafman Department of Computer Science Ben- Gurion University

SummarySummary

Very simple formalismVery simple formalism Attempt to minimally extend rule-based Attempt to minimally extend rule-based

systems to define value functionssystems to define value functions Much similarity to existing Much similarity to existing

approaches for PRM and soft approaches for PRM and soft constrain programmingconstrain programming

Can utilize algorithms from PRMCan utilize algorithms from PRM