Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
ΔημοσίευσεCephalus Constantinides Τροποποιήθηκε πριν 10 χρόνια
1
Υλοποίηση πράκτορα TAC Classic Αποστόλου Μιχάλης Π04008 Γεωργάκης Σπύρος Π04021 Κοκορδέλης Κωνσταντίνος Π04059 Τζιάλλας Αλέξης Π04142 Χουβαρδάς Παναγιώτης Π04159
2
Το TAC Classic προσομοιώνει ένα περιβάλλον αγοράς ταξιδιωτικών πακέτων Ο τελευταίος διαγωνισμός διεξήχθη το 2006 με νικητή τον πράκτορα RoxyBot-06 Σε κάθε παιχνίδι συμμετέχουν 8 πράκτορες Διάρκεια κάθε παιχνιδιού: 9 λεπτά
3
Κάθε πράκτορας έχει 8 πελάτες (σύνολο 64) Πρέπει να εξασφαλίσει ένα ταξιδιωτικό πακέτο το οποίο θα ικανοποιεί στο μέγιστο δυνατό τους πελάτες Κάθε πακέτο περιλαμβάνει 3 είδη αγαθών: Αεροπορικά Εισιτήρια Δωμάτια Ξενοδοχείων Εισιτήρια Διασκέδασης Τα ταξίδια διαρκούν μέχρι και 5 μέρες
4
Δημοπρασίες Αεροπορικών Εισιτηρίων: Ένας δημοπράττης: Εταιρεία TACAir 8 συνολικά δημοπρασίες ▪ 4 δημοπρασίες άφιξης ▪ 4 δημοπρασίες αναχώρησης
5
Continuous one-sided auctions Οι 8 δημοπρασίες κλείνουν ταυτόχρονα στο τέλος του παιχνιδιού Η TACAir ανακοινώνει καινούριες τιμές κάθε 10’’ Κάθε bid ταιριάζει άμεσα ή παραμένει μέχρι να ανακοινωθεί τιμή χαμηλότερη απο το bid Η αρχική τιμή επιλέγεται τυχαία από το [250,400] Οι τιμές παραμένουν πάντα εντός του [150,800]
6
Οι διακυμάνσεις επιλέγονται ομοιόμορφα από τα διαστήματα: [-10, x(t)] αν x(t) > 0 [x(t), 10] αν x(t) < 0 [-10, 10] αν x(t) = 0 Όπου x(t) = 10 + (t/540)*(z-10) t : o τρέχων χρόνος του παιχνιδιού z : άγνωστη μεταβλητή εντός [-10,30], σταθερή και διαφορετική σε κάθε δημοπρασία
7
Δύο ξενοδοχεία: 4 δημοπρασίες για Tampa Towers (TT ή Good Hotel) 4 δημοπρασίες για Shoreline Shanties (SS ή Cheap Hotel) 8 συνολικά δημοπρασίες: Auctions τύπου standard English Ascending multi-unit Kλείνουν μια κάθε λεπτό με τυχαία σειρά
8
16 δωμάτια διατίθενται σε κάθε δημοπρασία Στο τέλος κάθε λεπτού η 16 η καλύτερη προσφορά καθορίζει την Ask Price Αν κλείσει το λεπτό αυτό τα δωμάτια δίνονται στις 16 προσφορές που ήταν μεγαλύτερες της Ask Price Κάθε προσφορά (bid) πρέπει να είναι μεγαλύτερη της Ask Price Στην περίπτωση που ήδη είχαμε αποστείλει προσφορά η καινούρια προσφορά πρέπει να έχει ίση η μεγαλύτερη ποσότητα Δεν είναι δυνατή η απόσυρση προσφοράς
9
Στο τέλος κάθε λεπτού οι δημοπρασίες που δεν κλείνουν ανακοινώνουν την τιμή HQW. Αντιπροσωπεύει τι θα είχαμε κερδίσει αν η δημοπρασία έκλεινε το λεπτό αυτό.
10
3 είδη entertainment tickets 4 δημοπρασίες για κάθε είδος εισιτηρίου (12 συνολικά) Οι πελάτες μπορούν να χρησιμοποιούν ένα εισιτήριο την ημέρα
11
Υπάρχουν 8 εισιτήρια για κάθε είδος ψυχαγωγίας για κάθε μέρα (8*3*4=96) Μοιράζονται πακέτα των 12 στους πράκτορες: 4 εισιτήρια ίδιου τύπου για μέρες 1 ή 4 4 εισιτήρια ίδιου τύπου για μέρες 2 ή 3 2 εισιτήρια ίδιου τύπου για τις μέρες 1 ή 4 ▪ Διαφορετικά απο τα πρώτα 4 2 εισιτήρια ίδιου τύπου για τις μέρες 2 ή 3 ▪ Διαφορετικά από τα πρώτα 4
12
Δημοπρασίες τύπου Double Ascending Auctions Οι πράκτορες μπορούνε να πουλάνε και να αγοράζουν Τα bids αγοράς ταιριάζουν άμεσα με τα χαμηλότερα bids πώλησης Τα bids πώλησης ταιριάζουν άμεσα με τα υψηλότερα bids αγοράς
13
Οι δημοπρασίες διεξάγονται σύμφωνα με το ακόλουθο πρωτόκολλο 1. Ένας πράκτορας υποβάλλει μια προσφορά στην δημοπρασία 2. Η δημοπρασία ανανεώνει την τιμή προσφοράς, υποδεικνύοντας την τρέχουσα τιμή Κάθε bid έχει την μορφή: “((q1p1) (q2p2) … (qnpn))” Όπου q η ποσότητα και p η τιμή
14
Παράδειγματα: Πτήσεις: ▪ ((-64 300)) ▪ ((5 370)) ▪ ((3 290)) Ξενοδοχεία ▪ ((-16 0)) ▪ ((2 4) (6 6)), ((4 8)), ((7 10)) Εισιτήρια Διασκέδασης ▪ ((-2 $40) ▪ (3 $20) (1 $10)) ▪ ((-1 10) (1 20))
15
Προτιμήσεις πελατών: PA,PD - Προτιμώμενες μέρες ταξιδιού HP - Bonus για ύπαρξη Good Hotel є [50,150] AW,AP,MU - Bonus για ύπαρξη Entertainment є [0,200] Υπολογισμός utility: U= 1000 – travel_penalty + hotel_bonus + fun_bonus ▪ travel_penalty = 100 * ( |AA – PA| + |AD - PD| ) ▪ hotel_Bonus = TT? * HP ▪ fun_Bonus = ( AW? * AW ) + ( AP? * AP )+ ( MU? * MU )
16
Τελικό Score: Score = Ολικό_Utility – Όλικό_Κόστος Ποινή $200 για αρνητικά own δηλαδή για πώληση εισιτηρίων τα οποία δεν είχαμε (entertainment)
17
Κάθε 10 δευτερόλεπτα: Αποθήκευση τρεχουσών τιμών Προβλέψεις τιμών ▪ Πρόβλεψη Αεροπορικών Εισιτηρίων ▪ Πρόβλεψη Δωματίων Ξενοδοχείων Εύρεση βέλτιστου πλάνου ▪ Καθορισμός απαιτούμενων αγαθών Αποστολή bids
18
TACair – Η μοναδική αεροπορική εταιρία 8 Δημοπρασίες Άφιξη τις μέρες 1-4 Αναχώρηση τις μέρες 2-5 Την Tacair αντιπροσωπεύει ένας agent δημοπράττης
19
Ανακοινώνει τιμές κάθε 10 sec σε κάθε μία από τις δημοπρασίες Ανακοινώνει τιμές στο διάστημα [150-800] Διάστημα πρώτης τιμής [250-400] Η αύξηση ή μείωση επιλέγεται από τα διαστήματα [-10, x(t)] αν x(t) > 0 [x(t), 10] αν x(t) < 0 [-10, 10] αν x(t) = 0 x(t) = 10 + (t/540)*(z-10) z E [-10, 30] To z παράγεται από μία τυχαία στοχαστική συνάρτηση και είναι σταθερό για κάθε μία από τις δημοπρασίες Για κάθε z παίρνουμε διαφορετικό x(t) και κατ’ επέκταση διαφορετικό διάστημα Το x(t) – ορίζει διάστημα επιλογής της διαφοράς Ο τρόπος επιλογής μίας τιμής από το διάστημα ακολουθεί ομοιόμορφη κατανομή
20
Έστω z = 19 Για παράδειγμα την χρονική στιγμή t=60 x(t)=11 άρα το διάστημα είναι [-10,11]. Επιλέγεται μια διακύμανση ομοιόμορφα από το διάστημα αυτό.
21
Το Ζ είναι άγνωστο στον πράκτορα μας Σε κάθε χρονική στιγμή υπολογίζουμε τα διαστήματα για όλα τα Z Αποκλείουμε τα Ζ των οποίων τα διαστήματα δεν περιέχουν την διακύμανση που σημειώθηκε.
22
Παράδειγμα: Την χρονική στιγμή t=60 σημειώνεται η διακύμανση: +12 Για Ζ=19 προκύπτει το διάστημα [-10,11] έτσι το Ζ αυτό αποκλείεται Τα υπόλοιπα αποκτούν μεγαλύτερη πιθανότητα
23
Σε κάθε νέα τιμή αποκλείουμε κάποια Ζ και στην συνέχεια ανανεώνουμε τις πιθανότητες των υπόλοιπων Για τα εναπομείναντα Ζ «εξομοιώνουμε» μια διακύμανση τιμών μέχρι το τέλος του παιχνιδιού και επιλέγουμε την ελάχιστη από αυτές Τέλος, υπολογίζουμε τον μέσο όρο τους
24
Για κάθε ένα από τα z [-10, 30] Υπολογίζουμε το διάστημα για το x(t,z). Αν η τελευταία διακύμανση που σημειώθηκε είναι εντός του διαστήματος: Για κάθε χρονική στιγμή (t’=t+10 … t’=540) ▪ Το x(t’, z) θα μας δώσει το διάστημα διακύμανσης ▪ Από το διάστημα επιλέγουμε το μέσο του, αφού το σύστημα θα επιλέξει μία από τις τιμές του θεωρώντας ομοιόμορφη κατανομή Προσθέτοντας αυτή την τιμή στην προηγούμενη και αποθηκεύοντας τη μικρότερη θα πάρουμε μία ελάχιστη τιμή που αντιστοιχεί στο κάθε z Υπολογίζουμε τον μέσο όρο της ελάχιστης τιμής που δίνει κάθε z ∑ P(z)* min[z]
27
Ο αλγόριθμος βασίζεται στην ανάλυση του πράκτορα Walverine Υπολογίζεται το Walrasian competitive equilibrium: Οι τιμές των ξενοδοχείων θα αλλάξουν για να εξισορροπήσουν την προσφορά και την ζήτηση
28
Γίνεται χρήση της μεθόδου tatonnement: Όπου: το διάνυσμα των τιμών μια συγκεκριμένη χρονική στιγμή t (8 τιμές) η ζήτηση για τις τιμές αυτές ένα ποσοστό προσαρμογής
29
Παράδειγμα: Τρέχουσα τιμή: 30$ Ζήτηση δωματίων: 20 = 2 Τότε: ▪ Νέα_τιμή = 30 + 2 * (20-16) = 38
30
Οι τιμές στα ξενοδοχεία όμως δεν πέφτουν ποτέ: Για το μια ενδεικτική τιμή είναι: Το μόνο πρόβλημα που απομένει είναι ο υπολογισμός του.
31
Για την ζήτηση μιας δημοπρασίας ισχύει: Επιχειρούμε μια πιθανοτική προσέγγιση ανά πελάτη: Γνωρίζοντας ότι ο TAC Server κατανέμει τις απαιτήσεις των πελατών ομοιόμορφα:
32
Οι απαιτήσεις κάθε πελάτη καθορίζουν τρία πράγματα: Την προτιμώμενη μέρα άφιξης και αναχώρησης Το bonus για το ξενοδοχείο Tampa Towers (hp) Τα bonus για κάθε τύπο Entertainment (aw,ap,mu) Λαμβάνοντας υπόψη τις μέσες τιμές των προτιμήσεων και τις τρέχουσες τιμές: Κάνουμε σύντομο σχεδιασμό Υπολογίζουμε πόσο πιθανό είναι να βρίσκεται η δημοπρασία που εξετάζουμε εντός σχεδίου
33
Συνδυασμοί ημερών Άφιξη Αναχώρηση 12345 Άφιξη Αναχώρηση 12345 Άφιξη Αναχώρηση 12345 Άφιξη Αναχώρηση 12345
34
Γνωρίζοντας ότι τα pa,pd επιλέγονται ομοιόμορφα από τα 10 πιθανά ζευγάρια: Για κάθε pa,pd προκύπτει ένα βέλτιστο ταξίδι r*(pa,pd,h)
35
Ένα βέλτιστο ταξίδι r*(pa,pd,h) υπολογίζεται λαμβάνοντας υπόψη: Τα αεροπορικά εισιτήρια Την τιμή του ξενοδοχείου h Τις ποινές των αποκλίσεων από τα pa, pd Αναμενόμενη πριμοδότηση από entertainment*
36
Υπολογίζουμε τα και όπου: το σκορ του βέλτιστου ταξιδιού r*(pa,pd,T) το σκορ του βέλτιστου ταξιδιού r*(pa,pd,S) Υπολογίζουμε την διαφορά των δύο σκορ: Η επιλογή του ξενοδοχείου h θα είναι: Άρα = 1 ή 0 ανάλογα με τον τύπο ξενοδοχείου.
37
Παράδειγμα: Στο διάστημα το 20% των τιμών είναι μικρότερα του 70 και το 80% μεγαλύτερο Αφού τα bonus επιλέγονται ομοιόμορφα : =
38
Για την εύρεση του r*(pa,pd,h) υπολογίζουμε το αναμενόμενο entertainment surplus: Αναθέτουμε το i-οστό καλύτερο εισιτήριο στην μέρα που κοστίζει (i-οστή φθηνότερη μέρα)
39
Τιμή[50100150] 1η1η √√√ 2η2η √√ 3η3η √ [a,b]=[0,200] Πιθανότητα μιας τιμής Χ να είναι μεγαλύτερη της i-οστής επιλογής: Πιθανότητα τιμής να βρίσκεται ανάμεσα σε δύο bonus:
40
Τιμή[50100150] 1η1η √√√ 2η2η √√ 3η3η √ [a,b]=[0,200] Για την τελική αύξηση του σκορ έχουμε: Την πιθανότητα της παραπάνω συνθήκης την έχουμε ήδη υπολογίσει
41
Κάθε αναμενόμενο surplus θα είναι:
42
Αλγόριθμος Πρόβλεψης Hotel Auctions Ανάγνωση τιμών Υπολογισμός μέσης ζήτησης ▪ Εύρεση καλύτερου σχεδίου για κάθε συνδυασμό pa,pd ▪ Τιμές αεροπορικών εισιτηρίων ▪ Τιμές ξενοδοχείων ▪ Ποινές απόκλισης από pa,pd ▪ Υπολογισμός μέσου entertainment surplus για τρέχουσες τιμές ▪ Εξαγωγή ζήτησης για το παραπάνω ▪ Άθροιση όλων των ζητήσεων και διαίρεση δια 10 Υπολογισμός ολικής ζήτησης ▪ Πολλαπλασιασμός της μέσης ζήτησης επι 56 και άθροιση της ζήτησης του πράκτορα μας Χρήση tatonnement για υπολογισμό επόμενης τιμής
43
Πρόβλημα: μεγιστοποίηση του συνολικού σκορ Κάνει τον σχεδιασμό για τη συμμετοχή στις δημοπρασίες Το πρόβλημα της μεγιστοποίησης του σκορ υποδιαιρείται ανά πελάτη. Δύο είδη σχεδιασμών Αρχικός σχεδιασμός Επανασχεδιασμός Ο επανασχεδιασμός εκτελείται μόνο αν το τρέχον σχέδιο δεν είναι εφικτό.
44
Εξετάζει το προηγούμενο σχέδιο Διανέμει τα αγαθά στους πελάτες που τα είχανε ζητήσει. Υπάρχει και η περίπτωση να μην αρκούν τα αγαθά.
45
Τα αγαθά δίνονται στους πελάτες που συνεισφέρουν περισσότερο στο σκορ Πελάτες12345678 Στόχος √√√√√ Αγορά √√√
46
Βήματα σχεδιασμού Δημιουργία πιθανών συνδυασμών αφιξης-αναχώρησης (συνολικά 10) Υπολογισμός σκορ για κάθε τύπο ξενοδοχείου Υπολογισμός του καλύτερου συνδυασμού εισιτηρίων διασκέδασης (MaxEntSurplus) Επιλογή του σχεδίου με το μεγαλύτερο σκορ
47
1 η ημέρα2 η ημέρα3 η ημέρα4 η ημέρα Aligator Wrestling168 Amusement Park27 Museum174 1 η ημέρα2 η ημέρα3 η ημέρα4 η ημέρα Aligator Wrestling71,6874,1996,345,46 Amusement Park84,8715,7878,81102,35 Museum89,1255,6780,36105,69 1 η ημέρα2 η ημέρα3 η ημέρα4 η ημέρα Aligator Wrestling96,3293,8171,7122,54 Amusement Park-57,8711,22-51,81-75,35 Museum84,88118,3393,6468,31 Bonus Τιμή Εισιτηρίου Σκορ Εισιτηρίου/ Μέρα
48
Σκορ(SS) = - Σ(price SS (day)), arrival <= day < departure Σκορ(TT) = HP - Σ(price TT (day)), arrival <= day < departure HP = το bonus που δίνει ο πελάτης Σκορ(SS) < Σκορ(TT) επιλέγουμε το Tampa Towers Σκορ(SS) > Σκορ(TT) επιλέγουμε το Shoreline Shanties
49
Αεροπορικά εισιτήρια Για τις ημέρες του ταξιδιού ▪ Αν έχουμε εισιτήριο -Κόστος αγοράς ▪ Αν δεν έχουμε εισιτήριο -Προβλεπόμενο κόστος Για όλες τις υπόλοιπες ▪ Αν έχουμε εισιτήριο -Κόστος αγοράς Ο Planner προτιμά με αυτό τον τρόπο πακέτα που θα περιλαμβάνουν τα εισιτήρια που ήδη έχουμε αγοράσει
50
Θα υπολογίσουμε: Το κόστος αγοράς για την ημέρα 1 Την προβλεπόμενη τιμή για την ημέρα 3 Το κόστος αγοράς για την ημέρα 4 Θα υπολογίσουμε: Το κόστος αγοράς για την ημέρα 1 Το κόστος αγοράς για την ημέρα 4 12345 Άφιξη √ Αναχώρηση √ 12345 Άφιξη √ Αναχώρηση √
51
Δωμάτια Ξενοδοχείων Για τις ημέρες του ταξιδιού ▪ Αν έχουμε αγοράσει -Κόστος αγοράς ▪ Αν δεν έχουμε αγοράσει -Προβλεπόμενο κόστος Για όλες τις υπόλοιπες ▪ Αν έχουμε αγοράσει -Κόστος αγοράς ▪ Αν έχουμε κάνει προσφορά -Προβλεπόμενο κόστος Ο Planner προτιμά με αυτό τον τρόπο πακέτα που θα περιλαμβάνουν τα δωμάτια που ήδη έχουμε αγοράσει και τις δημοπρασίες στις οποίες έχουμε κάνει προσφορά
52
Θα υπολογίσουμε: Την προβλεπόμενη τιμή για την ημέρα 1 Την προβλεπόμενη τιμή για την ημέρα 2 Το κόστος αγοράς για την ημέρα 3 Την προβλεπόμενη τιμή για την ημέρα 4 Θα υπολογίσουμε: Το κόστος αγοράς για την ημέρα 3 Την προβλεπόμενη τιμή για την ημέρα 4 1234 Tampa Towers √√ 1234 √√
53
Είναι υπεύθυνος για: Αγορά προϊόντων που υποδεικνύει ο planner στην σωστή ποσότητα και τιμή Κατάθεση έγκυρων bids, όχι σε κλειστές δημοπρασίες Τιμή bid μεγαλύτερη από την προηγούμενη Καλείται κάθε 10’’ και κάθε φορά τρέχει 28 φορές (για κάθε auction)
54
Flights Alloc=get Allocation – get Own Αν alloc>0 και Predicted Minimum Price>Current Price ▪ Bid.Add Bid Point(alloc, Predicted Price + 20) ▪ Submit Bid(Bid)
55
Hotels Alloc=get Allocation Αν get HQW<alloc ▪Agg=(10 * (alloc-get HQW)) + F(time)
56
Entertainment Alloc=get Allocation-get Own Αν alloc<0 ▪ Πώληση εισιτηρίων με φθίνουσα τιμή με την πάροδο του χρόνου Αλλιώς ▪ Αγορά εισιτηρίων με αύξουσα τιμή με την πάροδο του χρόνου
57
Πιο ελαστικός Planner, να μπορεί να ανακατανέμει τα αγαθά στους πελάτες τους Γνώση της συμπεριφοράς των ανταγωνιστών για την υλοποίηση της καλύτερης δυνατής πρόβλεψης τιμών στα ξενοδοχεία
58
Κώδικας και αποτελέσματα
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.