首页
/
每日頭條
/
遊戲
/
通過遊戲設計了解機器學習算法
通過遊戲設計了解機器學習算法
更新时间:2026-08-05 14:01:46


通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)1

來源 | 異步

前段時間大火的國産遊戲——《太吾繪卷》,由于創新的玩法和精良的制作一度廣受好評,然而随着玩家遊戲的深入和時長的積累,發現該遊戲在玩的過程中遊戲外的問題很多很多。


首先是存檔速度慢,然後是密集的計算導緻功耗大量增加,風扇速度高居不下,甚至在高配置設備中也變得越來越卡。

究其原因,還是開發人員對于算法的理解問題。

通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)2


該遊戲存檔是用的json,太吾繪卷在每個月存檔時,都要把所有的數據在磁盤上重寫一遍。實際上,大多數遊戲公司正确的做法是隻寫入變化的部分而不會全量寫入,而太吾繪卷的做法是把很多不變的,預設好的東西也全部重新寫入,必然導緻存檔時占用了極大的空間。


同時,存檔中有大量的0,這說明開發者不知道什麼叫“稀疏矩陣”,結合之前的全量寫入,這無疑又加劇了存檔緩慢的問題。


通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)3

所以算法和數據結構有多重要的呢,它足以讓一款大火的遊戲變得不再具有吸引力,哪怕你其他方面做得再好。帶來了這麼大的影響,恐怕遊戲開發組接下來應該考慮更換程序員的事情了。

著名計算機科學家尼古拉斯·沃斯(Niklaus Wirth)有一句在計算機領域人盡皆知的名言“算法 數據結構=程序”(Algorithm Data Structures=Programs)。


算法這麼重要卻沒有引起國内頂級程序員的重視,不得不說這是一個遺憾。


通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)4


其實,要想學習算法,方法大于努力,以下三個思路和方法可以指導你更好的學習算法:


一.記住算法思想,記住算法結構。


這個是數據結構與算法學習最基礎的部分。


如果你把算法和數據結構系統的過了一遍,那你應該能夠明确這些基本的概念和一些初步的延申問題,什麼是數組,堆棧,隊列,鍊表,字典樹以及哈希表以及相關的問題,這裡所說的記住,是指在自己的腦海中形成長久的記憶。例如以下實用問題:

常見的堆棧面試問題

· 使用堆棧計算後綴表達式

· 對堆棧中的值進行排序

· 檢查表達式中的括号是否平衡


那麼,記住數據結構又需要記住哪些呢?

第一步:記住數據結構最直觀的東西


第二步:記憶某個數據結構的同時,還要記住數據結構的定義,性質與特點。例如在學習哈夫曼樹的時候。


定義是WPL最小的二叉樹。特點:(1)沒有度為1的結點(2)n個葉子結點的哈夫曼樹共有2n-1個結點(3)哈夫曼樹的任意非葉節點的左右子樹交換後仍是哈夫曼樹。


在知道它的定義後,我們可以自己去設計一個算法。如果自己沒想到,在看到先人的解決辦法後,更要随手存下來,去記住它。


通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)5


二、用編程語言實現數據結構的算法


很多時候,理解一個算法後,很容易在紙上去模拟一個算法的實現過程。


但,具體實現,則是另一回事。一定得先自己思考,然後再去看書中給的編程語言實現。這一過程已經不屬于“數據結構與算法”的内容了。而是你綜合素質的體現,如何真正理解問題和用編程技巧實現,很考驗自己。


這一過程,很難靠記憶。需要在不斷敲代碼的過程中去體會一些直覺上的東西。如何用遞歸解決問題,如何使用循環,如何使用"哨兵”等等等等。當然,敲完後需要去思考總結,看看能不能總結出一些”小套路“并記住。


總之,實踐出真知

通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)6


三、記住特定情況特定的算法搭配


每介紹一種數據結構,都可以聯系一個實際問題來作為“引子”,回答了“這種數據結構為什麼會出現”。

比如上述案例中提到的稀疏矩陣,通俗地說,如果邊的數量接近于與頂點的數量呈線性關系,那麼這個圖就是稀疏圖,例如,具有n個頂點和O(n log n)條件的圖一般被認為是稀疏圖。


這些東西,我們也須理解記憶。每一數據結構都有其特性,去解決某一類問題,我們需要去記憶,去感悟。


威著作,助力學習


通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)7


本書是作者Tim Roughgarden(斯坦福大學的教授,主要教授的課程有計算機科學、管理科學與工程。著有圖書《算法詳解(第1卷):算法基礎》)結合在斯坦福大學教授算法課程的實際經驗編寫的系列教程中的第二本。


主要介紹圖搜索及其應用,最短路徑算法以及一些數據結構(如堆、搜索樹、散列表和Bloom過濾器)的應用和實現。


本書是作者Tim Roughgarden(斯坦福大學的教授,主要教授的課程有計算機科學、管理科學與工程。著有圖書《算法詳解(第1卷):算法基礎》)

結合在斯坦福大學教授算法課程的實際經驗編寫的系列教程中的第二本。

主要介紹圖搜索及其應用,最短路徑算法以及一些數據結構(如堆、搜索樹、散列表和Bloom過濾器)的應用和實現。

通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)8

通過遊戲設計了解機器學習算法(一個算法毀了一款好遊戲)9


查看目錄

第1章 圖的基礎知識

1.1 基本術語

1.2 圖的一些應用

1.3 圖形的度量

1.3.1 小測驗1.1鄰接矩陣

1.4.3 和小測驗1.3零代價的基本算法


2.1.3 高層思路

2.2.2 BFS正确性和運行時間

2.2.5 的答案

2.3 計算連通分量

2.3.1 (無向圖連通分量)算法

2.3.4 UCC小測驗2.2的僞碼

2.4.3 什麼時候存在拓撲順序

2.5.3 的拓撲排序

2.5.5 小測驗2.3為什麼要使用深度優先的搜索

2.6.3 一個例子

2.6.6 和小測驗2.6蝴蝶結

2.7.3 一些前提條件

3.1.3 的答案

3.2 Dijkstra算法

3.2.1 一種虛假的簡化

3.3.2 Dijkstra選擇正确的數據結構

4.1.2 其他操作

4.3 堆的應用

4.3.1 應用:中位值維護

4.4 Dijkstra算法的提速

4.4.1 維持不變性

4.4.4 數組形式的堆

4.5.3 操作

4.5.4 操作

4.6 本章要點

4.7 章末習題

挑戰題

編程題

第5章 搜索樹

5.1 有序數組

5.1.1 搜索樹的屬性

5.3.2 (高度)時間内實現Search

5.3.4 和Max

5.3.5 時間内實現OutputSorted操作

5.3.8 強化的搜索樹支持Select的答案

*5.4 平衡搜索樹

5.4.1 的答案

*6.4 更多的實現細節

6.4.1 負載和性能

6.4.2 管理散列表的負載

6.4.3 選擇散列函數

6.4.4 選擇沖突解決策略

6.4.5 小測驗6.6的答案

6.5 布隆過濾器的基礎知識

6.5.1 布隆過濾器支持的操作

6.5.2 布隆過濾器的應用

6.5.3 布隆過濾器的實現

*6.6 布隆過濾器的啟發式分析

6.6.1 啟發式假設

6.6.2 部分位被設置為1

6.6.3 假陽性率

6.6.4 結束語

6.6.5 小測驗6.7的答案

6.7 本章要點

6.8 章末習題

編程題

附錄A 快速回顧漸進性表示法


部分習題答案

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
益智解謎遊戲排行榜(Stars一款讓人沉迷的益智類解謎遊戲)
益智解謎遊戲排行榜(Stars一款讓人沉迷的益智類解謎遊戲)
  《Hello Stars》(星星你好)是一款由Fastone Games開發的益智類解謎遊戲,因其搞笑的畫風和奇葩的遊戲形式,目前暫居谷歌手機市場熱門免費排行榜亞軍之位。         這是一款完全應用物理規則來進行解謎的益智遊戲。目前遊戲已經開放了220個關卡,玩家需要在每個關卡中控制引導紅色的小球接觸到關卡内的所有星星,才能順利過關。       ...
2026-08-05
cod戰區運營幾年(COD戰區細節遊戲講解)
cod戰區運營幾年(COD戰區細節遊戲講解)
  現在的遊戲市場當中,FPS遊戲由于受衆比較多,所以遊戲工作室開發出來的遊戲也是相當多的,其中能夠被廣大玩家接受的也就是那麼幾個。如今比較流行的COD戰區算是FPS遊戲中的另外一個頂梁柱了,但是這個遊戲網友們想玩确實是有一些小小的難度,不說繁雜的賬号注冊流程以及超級吃硬盤的遊戲文件,COD戰區的遊戲内容也是要比正常的FPS遊戲複雜一些。      很多萌新...
2026-08-05
王傑知道我是一個已經過氣的歌手(我知道我是一個已經過氣的歌手人生就是一場遊戲一場夢)
王傑知道我是一個已經過氣的歌手(我知道我是一個已經過氣的歌手人生就是一場遊戲一場夢)
  對現在的很多90後或者00後來說,王傑可能是謎一樣的存在,但他卻是很多70後80後心中的“歌王”。他曾經是比香港四大天王有過之而無不及的存在,是華語音樂的響當當的名片,如今,這個名字就如同主人那把被毒啞的嗓子一樣蒙塵已久,無力回天。      2009年的時候,王傑寫了一首歌:《我知道我是一個已經過氣的歌手》。裡面寫道:   我知道我是一個已經過氣的歌手...
2026-08-05
喬丹美如畫投籃集錦(美如畫換手上籃緻敬喬丹)
喬丹美如畫投籃集錦(美如畫換手上籃緻敬喬丹)
  喬丹對湖人的那記換手上籃   是他職業生涯最最經典的鏡頭之一   ▼      不少球員都在球場上模仿過這個動作   比如去年的這位NCAA球員   雖然美如畫程度不及喬丹   但也非常驚豔了   ▼      他的名字叫做Corey Sanders(科裡·桑德斯)   來自羅格斯大學   今年已經大三了      他也可以算是“年少成名”了   早在高...
2026-08-05
2022科隆遊戲展幾号(科隆遊戲展前夜)
2022科隆遊戲展幾号(科隆遊戲展前夜)
  篝火原創,轉載請征得同意   作者:燒鴨   2021 年的科隆遊戲展前夜活動繼續在線上舉行,TGA 創始人兼主持人 Geoff Keighley 依然精心為各位玩家們準備了大量作品的最新消息,其中延期多時的跨世代作品《光環 無限》終于确認将在 12 月 8 日發售,PS4/PS5 平台的力作《地平線 西之絕境》也定在 2022 年 2 月 18 日發售...
2026-08-05
Copyright 2023-2026 - www.tftnews.com All Rights Reserved