personal information agents for travel e-commerce boi faltings (
TRANSCRIPT
Traditional travel distribution
UAL
Galileo
Swissair Avis Hilton EasyJetCRS
GDS+ Sabre,Amadeus,Worldspan
Travel agents
Traditional travel e-commerce
UAL
Galileo
Trip.com
Swissair Avis Hilton EasyJetCRS
GDS+ Sabre,Amadeus,Worldspan
Edifact
Web server
Travel e-commerce with agents
UAL
Agent.com
Swissair Avis Hilton EasyJetCRS
Internet
Travel portal
Personal agent
Why personal agents?
• Customize information systems
• Create persistent interaction
• Negotiate on user’s behalf
• Be proactive
• Load distribution/low latency interaction
Requirements
• Customize:– represent choices and preferences– filter data according to individual combinations
• Persistence: – memorize partially solved tasks
• Load distribution:– lightweight
Individual preferences
• Trip from Geneva(GVA) to San Francisco (SFO):
1. Leave after 8 am2. Arrive by 2 pm3. Preferred airline: Swissair4. Price < $5005. No transfer at London Heathrow
– Everyone has their own criteria!
Different people, different tradeoffs:
Departure time
Arrival time
Airline Transfer Cost
1. 6:45 12:15 Lufthansa FRA $485 consciencious
2. 14:15 19:20 Swissair ZRH $720 bureaucrat
3. 11:05 15:30 Air France PAR $380 budget
4. 8:50 13:50 British Air LHR $660 busy
Finding a solution:
• People can’t state their preferences
• Interaction = conversation:– Agent proposes solutions– User states/updates preferences
• Different tradeoffs: no unique optimal solution
Memorizing partially solved tasks
• State of problem solving = combination of preferences
• Same preferences => same solutions
• Advantages:– Complete problem-solving in stages– Optimal rebooking – High-quality data about customer
Lightweight
Preference
Flightschedule
Fare
PreferencePreferencePreferencePreference
Flightschedule
Flightschedule
Flightschedule
Flightschedule
Flightschedule
FareFareFareFareFare
Uniformand
simple mechanism
Optimalanswers
Constraint Programming
• Planning = search for the best flight combinations
• User preferences = constraints
• Partially solved task = set of constraints
• A form of declarative programming
• ...and also very lightweight (Java Constraint Library at http://liawww.epfl.ch/JCL/)
Constraint Satisfaction Problems
• Variables x1,x2,...,xn = choices• Domains D1,D2,...,Dn = possible values• Relations R1 = (xi,xj), R2 = (xk,xl,xm),...,Rm
• Constraints C1 = ((v1,v2),(v3,v4),...),C2,...,Cm
All are fixed for a certain problemFind:
Solutions x1 = vi, v2= vj,...,xn=vk such that all constraints are satisfied
Solving a CSP
• Backtrack search: assign values to variables in sequence, always satisfying all constraints
• Powerful pruning and variable ordering methods
• Parallel methods: assign random values to all variables and make local changes until all constraints are satisfied.
Valued CSP
• Each constraint carries a weight that models its importance
• Solution = value combination with lowest violation cost
• Solving process = online optimization (branch-and-bound search)
Most tractable problems are CSP
CSP is general enough to formulate most interesting NP-hard problems:
• Resource allocation: a coloring problem
• Scheduling
• Planning (assumption: finite world state and operators)
• Diagnosis
Constraint programming for agent intelligence
• Software: does the same thing
• Agent: does the right thing
• Adaptation to context requires abduction (online optimization)
Logical inference modes…
• Deduction: bird(tweety) => flies (tweety)
• Abduction: flies(tweety) => bird (tweety)
• Most inference in information systems is abduction
• Abduction requires closed-world assumption (CWA) to be sound: Birds are the only things that fly
Implementing abduction
• CWA => transform into deduction (procedural programs)
• Programmer makes CWA => inflexible
• Constraint satisfaction makes CWA at runtime => software that easily adapts
• Drawback: NP-hard
Dealing with NP-hardness
0
20
40
60
80
100
120
0.1 0.5 1 1.5
tightness
com
puta
tion
tim
e
A1A2A3
Tightness = 1 must be avoided!
User interaction
• Java applet/application with graphical displays
• Conversation: – user states preferences/constraints– agent displays solutions
1.Drop-down menus allow fine tuning of
preferences
2. Preferences are stored and can be reused at any time
What Iconomic Systems built:
Agent.comTravel portal(mediator)
Personal agent
UAL
Galileo
Swissair Avis Hilton EasyJetCRS
GDS
The applet: All includedTotal Applet Size: 440KB
42%
40%
16%2%
Search engine/GUIWorld mapAirline/Airport codesFlight data
All you need to download from the internet for travel planning is 10kb!