在乙個街道平面圖上,住著n個住戶。有兩個販賣熱狗的商販,各自想要在街區裡擺設乙個小攤。每天住戶都會去離他家50公尺範圍內的最近的攤點消費。問:
1. 如果兩位小販擺設小攤的順序有先後(設a先擺,然後b再擺),且a知道有b的存在。兩人該如何博弈?
2. 如果你是b,已經知道a的位置,該如何博弈
假設a和b都是以追求利益最大化為目標。
分析:首先要考察的是建模的能力。如何表示乙個地圖?如何表示上面的住戶?常見的方法是用邊來代替街道,用點來表示住戶的位置。可以用幾何畫板實現出來:
其次,對於複雜的問題,要考慮一些簡化的情況:
1. 退化到一維的情況
2. 退化到只有1,2,3個住戶的情況
3. 退化到已知a擺下的位置,求b如何擺放?
展開:1. 寫乙個可以視覺化選擇a的位置,並計算b的最優擺放位置以及獲利值的小程式。
2. 利用計算機輔助,列舉a的起始位置,分別計算出兩者的最大利益,選取對a最有利的方案。注意列舉的技巧。
3. 改一下題目,如果a,b需要同時選擇位置,那麼就可以展開到納什均衡或者囚徒困境上。
總結:主要介紹了博弈的一些簡單思想,還有如何對於二維地圖型別的題目進行抽象和建模。要學會利用幾何畫板、c#等一切可利用的工具。
第01課 建立乙個基本的Silverlight應用
在建立乙個silverlight應用程式後,我們什麼都不做,直接編譯一下整個解決方案,可以看到在資源管理器中多出了乙個clientbin的資料夾,並在下面新增了乙個terrylee.silverlightdemo2.xap的檔案。再開啟terrylee.silverlightdemo2testpag...
第14課 實戰之用 Python 寫乙個簡易爬蟲
網路爬蟲 又被稱為網頁蜘蛛,網路機械人,在 foaf 社群中間,更經常的稱為網頁追逐者 是一種按照一定的規則,自動地抓取全球資訊網資訊的程式或者指令碼。另外一些不常使用的名字還有螞蟻 自動索引 模擬程式或者蠕蟲。通俗解釋 網際網路存在大量網頁,這些網頁作為資訊的載體包含大量的資料,通過一定技術,我們...
第3題 兩個佇列生成乙個棧
想要實現兩個佇列生成乙個棧,需要先了解佇列和棧的特性 使用兩個佇列生成乙個棧的實現思路為 實現如下 usr bin env python coding utf 8 import queue class stack object def init self self.master queue queu...