2010-01-03 136 views
8

當我在高中學習矩陣計算分數,我們看到了一種技術,這將有助於在這樣的情況:從殘缺排名表

有許多的棋手中甲聯賽,並他們需要爲所有人確定一個排名,但是沒有足夠的時間讓每個玩家都玩其他人。如果結果是玩家A擊敗玩家B,玩家B擊敗玩家C,則可以以某種程度的確定性說出玩家A比玩家C更好,因此向玩家A獎勵一些點以代替他們實際上玩對方。

正如我所說,這是前一段時間,我不記得如何實際執行算法,但我認爲它被稱爲「統治矩陣」。有時候在網上搜索這個結果已經毫無結果和可怕,所以我認爲這是不對的。

任何人都可以給我一些幫助嗎?理想情況下,我可以爲我正在處理的這個程序使用一種算法,但即使只是一個指向有關該過程的更多信息的指針。

回答

1

也許某種類型的PageRank算法可能適合你。

想象一下,每個人都有一個網頁,他們超鏈接到每個打敗他們的人。

對這些數據運行頁面排序算法會給你鏈接矩陣的穩定狀態,這可能會告訴你每個人的相對重要性(我猜)。

例如誰在只打了一場比賽,但是,一個人,一個人打敗打敗誰很多人可能比別人誰擊敗了10人誰反過來還沒有贏得一場比賽一個較高的網頁排名。

1

聽起來像你所描述的是一個Swiss System tournament或一個非常類似的變化,所有描述在鏈接的維基百科條目。儘管不是給予不完整的錦標賽來計算收視率,但它是一種組織錦標賽的方式,以便將最好的棋手與最差和最差的國際象棋棋手配對,以確定排名,而無需每個人都扮演其他人。

2

聽起來好像你正在記住Perron-Frobenius定理的演示 - 這至少是一個更安全的搜索術語:-)。其中之一是 http://www.math.utah.edu/~keener/lectures/rankings.pdf 國際象棋球員使用Elo系統,描述在http://en.wikipedia.org/wiki/Elo_rating_systemhttp://www.chesselo.com/,這將更容易實施。即使你知道所有的事情,也可能沒有好的排名 - 參見http://en.wikipedia.org/wiki/Nontransitive_dice。建模足球比賽的人通常會分別跟蹤防守和進攻的優勢。