在一个街道平面图上,住着n个住户。有两个贩卖热狗的商贩,各自想要在街区里摆设一个小摊。天天住户都会去离他家50米范围内的最近的摊点消费。问:小程序
1. 若是两位小贩摆设小摊的顺序有前后(设A先摆,而后B再摆),且A知道有B的存在。两人该如何博弈?工具
2. 若是你是B,已经知道A的位置,该如何博弈可视化
假设A和B都是以追求利益最大化为目标。技巧
分析:程序
首先要考察的是建模的能力。如何表示一个地图?如何表示上面的住户?常见的方法是用边来代替街道,用点来表示住户的位置。能够用几何画板实现出来:方法
其次,对于复杂的问题,要考虑一些简化的状况:im
1. 退化到一维的状况地图
2. 退化到只有1,2,3个住户的状况总结
3. 退化到已知A摆下的位置,求B如何摆放?img
展开:
1. 写一个能够可视化选择A的位置,并计算B的最优摆放位置以及获利值的小程序。
2. 利用计算机辅助,枚举A的起始位置,分别计算出二者的最大利益,选取对A最有利的方案。注意枚举的技巧。
3. 改一下题目,若是A,B须要同时选择位置,那么就能够展开到纳什均衡或者囚徒困境上。
总结:
主要介绍了博弈的一些简单思想,还有如何对于二维地图类型的题目进行抽象和建模。要学会利用几何画板、C#等一切可利用的工具。