COMP34612: Computational Game Theory Group Project (Coursework)
Overview
Your task is to create a program that stimulates playing repeated 2-person Stackelberg pricing games as the leader, under conditions of imperfect information.
Followers’ Specifications
-
There are three different followers, named as MK1, MK2, and MK3.
-
The payoff function and strategy spaces of these followers are unknown. However, historical data
from 100 days of previous games between the leader and each follower is available.
Leader’s Specifications
Assume that the leader’s strategy (i.e., price) is 𝑢𝐿 and the follower’s strategy (i.e., price) is 𝑢𝐹. The specifics regarding the leader’s strategy and profits are as follows:
-
Unit cost: 𝑐𝐿 = £1.00
-
Strategy space:
-
When playing with MK1 and MK2, the leader’s strategy space is 𝑈𝐿 = [1.00, +∞)
-
When playing with MK3, the leader’s strategy space is 𝑈𝐿 = [1.00, 2.00]
-
-
Demand Model (i.e., price-sale relationship): 𝑆𝐿 (𝑢𝐿 , 𝑢𝐹 ) = 2 − 𝑢𝐿 + 0.3𝑢𝐹
-
DailyProfit: (𝑢𝐿 −𝑐𝐿)𝑆𝐿(𝑢𝐿,𝑢𝐹)
-
Objective: The leader’s objective of playing is to maximise the accumulated profit for the next 30
days.
-
Assumption: For simplicity, it is assumed that the leader’s unit cost, strategy space, and the demand
model remain unchanged throughout the entire period of 130 days.
Game Rules
On day 𝑡, the leader announces the price, 𝑢𝐿(𝑡), first. After learning the leader’s price, the follower will choose the responding price, 𝑢𝐹 (𝑡). This process occurs over a period of 𝑡 = 1, 2, ... , 130, where 𝑡 = 1, 2, ... , 100 corresponds to the days for which historical data is available, and 𝑡 = 101, 102, ... , 130 are the days during which the game will be played repeatedly.
Game Playing Scenarios
In this setup, your program, acting as the leader, will engage in three separate games against three different competitors, identified as followers MK1, MK2, and MK3.
-
For each of the
repeated
game, the leader selects his learning method to learn the follower’s reaction
function based on the provided set of historical data which spans from
𝑡 = 1,2,...,100
. During the
next 30 days (
, the leader announces a price,
, to the game platform
daily. After the leader's price is announced, the follower will respond with the price,
receiving the follower's price,
𝑢𝐹 (𝑡)
, from the game platform, the leader may use this new
information to refine their knowledge and decide his price of the next day. In the other words, the
leader (i.e., your program) should be able to take the follower’s price of the previous day from the
game platform for updating, and then decide and send his price of the next day to the game platform..
𝑡 = 101, 102, ... , 130) 𝑢𝐿(𝑡)
𝑢𝐹(𝑡). Upon
It should be emphasised that the follower’s strategy and payoff function is subject to the changing and time varying environment. That is, the parameters in the follower’s payoff function may not be the same every day.
Implementation Options
-
Single Leader Approach: You may choose to design and implement a single leader algorithm that competes against all three followers, adapting its strategy based on the opponent being faced.
-
Multiple Leaders Approach: Alternatively, you could design and implement three distinct leaders, each tailored to play against one of the followers. This approach allows for specialised strategies to be developed for each follower type.
Project Timeline
-
Week 7 (Starting 11 March): Start to work on your project and project planning.
-
Week 11 (29 April – 3 May): Group presentations telling us what you have done.
-
Deadline (3 May at 6:00pm): Deadline to submit codes and supporting document.
Support
-
Weekly Support Sessions: Project support sessions are scheduled every Wednesday from 11:00 am to 12:00 noon between Weeks 7 and 10. These sessions will be held at Stopford_TH 1, located on the first floor of the Stopford Building. You are encouraged to attend if you have questions, need clarification, or seek guidance on any aspect of the project. Attendance is optional and based on your needs for support.
-
Email: In addition to the weekly sessions, you are welcome to ask questions or seek support via email at any time. If you encounter any issues with installing or running the game platform, or if you have any other project-related inquiries, do not hesitate to contact the teaching assistants by email for support.
Whichever method you choose, it's crucial to document in your submission's README file which
leader(s) is designed to play against each follower. This clarity will help in understanding the design
choices and strategies implemented in your program.
Assessment Criteria
The project is a significant component of your final grade, accounting for 50% of the total mark, with the remaining 50% coming from the final examination. The project mark is distributed as follows:
-
Content of the Approach (50% of this project mark):
-
Presentation (40%): Your grade in this category is based on the presentation you give in Week 11. This includes the originality of your idea, how well it integrates knowledge from the course, and any relevant external literature or research you have incorporated.
-
Written Materials (10%): This is based on the documentation you submit to your group journal on Blackboard. It evaluates the depth and clarity of your written explanation of the approach, including the rationale behind your strategies and methods.
-
-
Performance of the Approach (50% of this project mark):
• This evaluates the effectiveness of your strategy by looking at how well it performs in the game
environment, such as the accumulated profit generated by your submitted codes. 3. Group Mark Distribution:
• The overall group mark will be allocated to individual group members based on self-assessment and the demonstration of knowledge during the presentation.
Presentation
During the presentation week of Semester 2, every group is scheduled to present their project to the lecturers. It is important for each group member to actively participate in speaking and answering questions. This participation allows us to evaluate each member's contributions to the project. The assessment criteria focus solely on the content of your presentation, including the activities your group undertook and the lessons learned through the project process. Presentation skills are not part of the evaluation, so the emphasis should not be on creating a polished presentation but on effectively communicating your project's substance and outcomes.
Submission
Submission will be through Blackboard and the details will be sent to you later.
Game Platform and Resources
The game platform and detailed explanation (Readme.txt) can be found on Blackboard.
Overview
Your task is to create a program that stimulates playing repeated 2-person Stackelberg pricing games as the leader, under conditions of imperfect information.
Followers’ Specifications
-
There are three different followers, named as MK1, MK2, and MK3.
-
The payoff function and strategy spaces of these followers are unknown. However, historical data
from 100 days of previous games between the leader and each follower is available.
Leader’s Specifications
Assume that the leader’s strategy (i.e., price) is 𝑢𝐿 and the follower’s strategy (i.e., price) is 𝑢𝐹. The specifics regarding the leader’s strategy and profits are as follows:
-
Unit cost: 𝑐𝐿 = £1.00
-
Strategy space:
-
When playing with MK1 and MK2, the leader’s strategy space is 𝑈𝐿 = [1.00, +∞)
-
When playing with MK3, the leader’s strategy space is 𝑈𝐿 = [1.00, 2.00]
-
-
Demand Model (i.e., price-sale relationship): 𝑆𝐿 (𝑢𝐿 , 𝑢𝐹 ) = 2 − 𝑢𝐿 + 0.3𝑢𝐹
-
DailyProfit: (𝑢𝐿 −𝑐𝐿)𝑆𝐿(𝑢𝐿,𝑢𝐹)
-
Objective: The leader’s objective of playing is to maximise the accumulated profit for the next 30
days.
-
Assumption: For simplicity, it is assumed that the leader’s unit cost, strategy space, and the demand
model remain unchanged throughout the entire period of 130 days.
Game Rules
On day 𝑡, the leader announces the price, 𝑢𝐿(𝑡), first. After learning the leader’s price, the follower will choose the responding price, 𝑢𝐹 (𝑡). This process occurs over a period of 𝑡 = 1, 2, ... , 130, where 𝑡 = 1, 2, ... , 100 corresponds to the days for which historical data is available, and 𝑡 = 101, 102, ... , 130 are the days during which the game will be played repeatedly.
Game Playing Scenarios
In this setup, your program, acting as the leader, will engage in three separate games against three different competitors, identified as followers MK1, MK2, and MK3.
-
For each of the
repeated
game, the leader selects his learning method to learn the follower’s reaction
function based on the provided set of historical data which spans from
𝑡 = 1,2,...,100
. During the
next 30 days (
, the leader announces a price,
, to the game platform
daily. After the leader's price is announced, the follower will respond with the price,
receiving the follower's price,
𝑢𝐹 (𝑡)
, from the game platform, the leader may use this new
information to refine their knowledge and decide his price of the next day. In the other words, the
leader (i.e., your program) should be able to take the follower’s price of the previous day from the
game platform for updating, and then decide and send his price of the next day to the game platform..
𝑡 = 101, 102, ... , 130) 𝑢𝐿(𝑡)
𝑢𝐹(𝑡). Upon
It should be emphasised that the follower’s strategy and payoff function is subject to the changing and time varying environment. That is, the parameters in the follower’s payoff function may not be the same every day.
Implementation Options
-
Single Leader Approach: You may choose to design and implement a single leader algorithm that competes against all three followers, adapting its strategy based on the opponent being faced.
-
Multiple Leaders Approach: Alternatively, you could design and implement three distinct leaders, each tailored to play against one of the followers. This approach allows for specialised strategies to be developed for each follower type.
Project Timeline
-
Week 7 (Starting 11 March): Start to work on your project and project planning.
-
Week 11 (29 April – 3 May): Group presentations telling us what you have done.
-
Deadline (3 May at 6:00pm): Deadline to submit codes and supporting document.
Support
-
Weekly Support Sessions: Project support sessions are scheduled every Wednesday from 11:00 am to 12:00 noon between Weeks 7 and 10. These sessions will be held at Stopford_TH 1, located on the first floor of the Stopford Building. You are encouraged to attend if you have questions, need clarification, or seek guidance on any aspect of the project. Attendance is optional and based on your needs for support.
-
Email: In addition to the weekly sessions, you are welcome to ask questions or seek support via email at any time. If you encounter any issues with installing or running the game platform, or if you have any other project-related inquiries, do not hesitate to contact the teaching assistants by email for support.
Whichever method you choose, it's crucial to document in your submission's README file which
leader(s) is designed to play against each follower. This clarity will help in understanding the design
choices and strategies implemented in your program.
Assessment Criteria
The project is a significant component of your final grade, accounting for 50% of the total mark, with the remaining 50% coming from the final examination. The project mark is distributed as follows:
-
Content of the Approach (50% of this project mark):
-
Presentation (40%): Your grade in this category is based on the presentation you give in Week 11. This includes the originality of your idea, how well it integrates knowledge from the course, and any relevant external literature or research you have incorporated.
-
Written Materials (10%): This is based on the documentation you submit to your group journal on Blackboard. It evaluates the depth and clarity of your written explanation of the approach, including the rationale behind your strategies and methods.
-
-
Performance of the Approach (50% of this project mark):
• This evaluates the effectiveness of your strategy by looking at how well it performs in the game
environment, such as the accumulated profit generated by your submitted codes. 3. Group Mark Distribution:
• The overall group mark will be allocated to individual group members based on self-assessment and the demonstration of knowledge during the presentation.
Presentation
During the presentation week of Semester 2, every group is scheduled to present their project to the lecturers. It is important for each group member to actively participate in speaking and answering questions. This participation allows us to evaluate each member's contributions to the project. The assessment criteria focus solely on the content of your presentation, including the activities your group undertook and the lessons learned through the project process. Presentation skills are not part of the evaluation, so the emphasis should not be on creating a polished presentation but on effectively communicating your project's substance and outcomes.
Submission
Submission will be through Blackboard and the details will be sent to you later.
Game Platform and Resources
The game platform and detailed explanation (Readme.txt) can be found on Blackboard.