Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Mining Airfare Data to Minimize Ticket Purchase Price Oren Etzioni Craig Knoblock Alex Yates Rattapoom Tuchinda Outline Introduction and Motivation Data Mining Methods for Airfare Data Experiments Conclusion Introduction Corporations often use complex polices to vary product prices over time. Airline industry often use dynamic pricing strategies to maximize its revenue. (based on seasons, seats available, pricing of other airlines…) In 1988, Bell Laboratories patented a mathematical formula that could perform rapid calculations on fare problems with thousands of variables. Introduction Cont. Airlines have learned to more effectively price their product, instead of attacking each other to gain market share. Today, airlines use sophisticated software to track their competitors’ pricing history and propose adjustments that optimize their overall revenue. Pricing Strategies Flights depart around holidays or weekends appear to change more. 7 and 14 day “ advance purchase” (airlines usually increase ticket price two weeks before departure date and ticket prices are at a maximum on departure dates.) Weekend Boosts Example Price change over time for American Airlines flight #192:223, LAX-BOS, departing on Jan. 2. (This example shows the rapid price change in the days priori to the New Year) Categories of airlines Big players (United Airlines, American Airlines…) Smaller airlines which concentrate on selling low-price tickets ( Air Trans, Southwest) Different types of tickets (economic, business, first class, restricted or unrestricted) Is Airfare Prediction Possible? Airlines have tons of historical data. Airlines have many fare classes for seats on the same flight, use different sales channels (e.g., travel agents, priceline.com…) Airfare prices information become increasingly available on the Web. But some information is not available (e.g., # of unsold seats in a particular flight). Motivation The goal of this paper is to learn whether to buy a ticket or wait at a particular time point, for a particular flight, given the current price history recorded. Advisor Model Consumer wants to buy a ticket. Hamlet: ‘buy’ (this is a good price). Or: ‘wait’ (a better price will emerge). Notify consumer when price drops. Will Flights sell out? Watch the number of empty seats. Upgrade to business class. Place on another flight In our experiment: upgrades were sufficient Flight Data Airlines typically user the same flight number (e.g., NW17) to refer to multiple flights with the same route that depart at the same time on different dates. In this paper, a particular flight is referred to a combination of its flight number and date. In the training dataset, same class is the set of states with the same flight number and the same hours but different department dates. Data Set Used Fetch.com’s data collection infrastructure. Collected over 12,000 price observations: 41 day period, every 3 hours. Lowest available fare for a one-week roundtrip. LAX-BOS and SEA-IAD. 6 airlines including American, United, etc. Learning Task Formulation Input: price observation data (built a flight data collection agent that runs at a scheduled internal, extracts the pricing data, and stores the results in a database. Algorithm: label observations; run learner-- Hamlet Output: for each purchase point buy VS wait Formulation cont. Want to use the latest information. Run learner daily to produce new model. Learner is trained on data gathered to date. Learned policy is a collection of these models. Our experiments evaluate the savings on the flights. Candidate Approaches By hand: an expert looks at the data. Time series: Reinforcement learning: Q-learning. Not effective at price jumps! Used in computational finance. Rule learning: Ripper, … RIPPER RIPPER (Repeated Incremental Pruning to Produce Error Reduction) is an efficient rule learning algorithm that can process noisy datasets containing thousands of examples. First, the algorithm partition examples into a growing set and a pruning set. Next, a rule is grown by adding and pruning features. Repeat the process until the rule set output by RIPPER. RIPPER is suitable to handle two-class learning problem. RIPPER Cont. In this study, features include price, airline, route, hours-before-takeoff, etc. Learned 20-30 rules… IF hours -before-takeoff 252 AND price 2223 AND route LAX-BOS THEN wait. Simple Time Series Predict price using a fixed window of k price observations weighted by α. We used a linearly increasing function for α The time series model makes its decision based on a one-step prediction of the ticket price change: IF Pt+1>Pt THEN buy, ELSE wait. k pt 1 (i) p t k i i1 k (i) i1 Reinforcement Learning Reinforcement learning is learning what to do---how to map situations to actions---so as to maximize a numerical reward signal. Supervised learning is learning from examples provided by some knowledgeable external supervisor. Q-learning Q learning is a method addressing the task of Reinforcement Learning. The main idea is to approximate the function assigning each stateaction pair the highest possible payoff. Q denote a transition function, mapping each state-action pair to a successor state S denote a finite set of states A denote a finite set of actions R denote a reward function Q-learning Cont. Standard Q-Learning formula: Qa, s Ra, s max a Qa, s Qb, s price s if flight sells out after s. 300000 Qw, s max Qb, s, Qw, s otherwise. s’ is the state resulting from taking action a in state s. r is the discount factor for future rewards, in this paper, r=1 Hand-Crafted Rule A fairly simple policy consulted with travel agents, using it to compare with other data mining algorithms IF ExpPrice(s0,t0)<CurPrice AND s0>7 days THEN wait ELSE buy *ExpPrice(s0,t0) denotes the average over all MinPrice(s,t) for flights in the training set with that flight number, where MinPrice(s,t) is the minimum price of that flight over the interval starting from s days before departure up until time t Hamlet Stacking with three base learners: Ripper (e.g., R=wait) Time series Q-learning (e.g., Q=buy) Using multiple data mining methods to combine the outputs Output: classifies each purchase point as ‘buy’ or ‘wait’. A Sample Rule Generated by Hamlet IF hours-before-takeoff>=480 AND airline=United AND price>=360 AND TS=buy AND QL=wait THEN wait *TS is the output of the Time Series algorithm, QL is the output of Q-Learning. Ticket Purchasing Simulation Real price data (collected from the Web) Simulated passengers (a passenger is a person wanting to buy a ticket on a particular flight at a particular date and time) Hamlet run once per day (training data: all data gathered in the “past”) Saving Experiments Savings for a simulated passenger is the difference between the price of a ticket at the earliest purchase point and the price of the ticket at the point when the predictive model recommends buying. Net savings is savings net of both losses and upgrade costs. Effectiveness HAMLET’s savings that were 61.8% of optimal! Savings: buy immediately VS Hamlet. Optimal: buy at the best possible time (knowing the future price information) Savings by Method Savings over “buy now”. Penalty for sell out = upgrade cost. Total ticket cost is $4,579,600. Net Savings by Method $400,000 $300,000 $200,000 $100,000 $0 -$100,000 -$200,000 -$300,000 -$400,000 -$500,000 Legend: Time Series Q-Learning By Hand Ripper Hamlet Optimal Savings by Method Cont. Method Optimal By hand Ripper Time Series Q-learning Hamlet Table below shows the savings, losses, upgrade costs, and net savings achieved in the simulation by each predictive model Savings Losses Upgrade Cost % Upgrades Net Savings % Savings % of Optimal $320,572 $0 $0 0% $320,572 7.0% 100.0% $228,318 $35,329 $22,472 0.36% $170,517 3.8% 53.2% $211,031 $4,689 $33,340 0.45% $173,002 3.8% 54.0% $269,879 $6,138 $693,105 33.00% -$429,364 -9.5% -134.0% $228,663 $46,873 $29,444 0.49% $152,364 3.4% 47.5% $244,868 $8,051 $38,743 0.42% $198,074 4.4% 61.8% Sensitivity Analysis Varying two key parameters to test the robustness of the results to changes in simulation: Change the distribution of passengers requesting flight tickets (e.g., uniform, linear decrease/increase) to check the performance on multiple flights in three hour interval. Allow a passenger to purchase a ticket at any time during a three hour internal (e.g., specifies fly in the morning, afternoon or evening) Sensitivity Analysis Cont. Method Optimal By hand Ripper Time Series Q-Learning Hamlet Net Savings $323,802 $163,523 $173,234 -$262,749 $149,587 $191,647 Interval Savings % of Optimal % upgrades 100.0% 0.0% 55.5% 0.0% 53.5% 0.0% -81.1% 6.3% 46.2% 0.2% 59.2% 0.1% Legend: $400,000 $300,000 $200,000 $100,000 $0 -$100,000 -$200,000 -$300,000 Time Series Q-Learning By Hand Ripper Hamlet Optimal Upgrade Penalty Most algorithms avoided the costly upgrades almost all the time. (% Upgrades as a fraction of the number of test passengers – 4488 of them) Method Optimal By hand Ripper Time Series Q-learning Hamlet Upgrade Cost % Upgrades $0 0% $22,472 0.36% $33,340 0.45% $693,105 33.00% $29,444 0.49% $38,743 0.42% Discussion 76% of the time --- no savings possible. (Prices never dropped from the earliest purchase point until the flight departed) Uniform distribution over 21 days. 33% of the passengers arrived in the last week. No passengers arrived 28 days before. Simulation understates possible savings! Savings on “Feasible” Flights Comparison of Net Savings (as a percent of total ticket price) on Feasible Flights (price saving is possible) Method Net Savings Optimal 30.6% By hand 21.8% Ripper 20.1% Time Series 25.8% Q-learning 21.8% Hamlet 23.8% Related Work Trading agent competition. Auction strategies Temporal data mining. Time Series. Computational finance. Future Work More tests are necessary: international, multi-routes, hotels, etc. Cost sensitive learning Additional base learners Bagging/boosting Refined predictions Commercialization: patent, license. Conclusions Dynamic pricing is prevalent. Price mining a-la-Hamlet is feasible. Price drops can be surprisingly predictable. Need additional studies and algorithms. Great potential to help consumers!? But… Airlines may introduce noise into their pricing patterns to fool a price miner. Demand and supply of seats are uncertain. (Good prediction based on good assumptions) Who can earn most benefit in the end? (Airlines, consumers, price miner?) John Nash said… It’s a GAME! References Fast Effective Rule Induction, In A. Prieditis and S. Russell, editors, Proc of the 12th ICML, 1995. A General Method for making classifiers costsensitive, In Proc. of Fifth ACM SIGKDD, 1999. Reinforcement Learning: An Introduction. MIT Press, Cambridge, MA, 1998. The Analysis of Time Series: An Introduction. Chapman and Hall, London, UK, 1989. “Airlines Rely on Technology To Manipulate Fare Structure “—By Scott Mccartney, Wall Street Jounal, November 3, 1997. End Thank you!!