※ 本文轉寄自 ptt.cc 更新時間: 2021-09-21 13:26:04
看板 C_Chat
作者 標題 Re: [閒聊] 遊戲“優化”跟”最佳化”真的一樣嗎?
時間 Tue Sep 21 12:30:58 2021
※ 引述《tom80727 (湯瑪士小火車)》之銘言:
: 如題
: 只要說遊戲優化 通常會被支語警察噴
: 為何不用最佳化
: 問題最佳化真的跟優化意思一樣嗎?
: 畢竟台灣也很少聽到”最佳化很爛”這種說法
首先,我覺得說「最佳化很爛」沒有任何問題。
前面討論也很多人說過了,optimize 本身就不是好詞,容易讓人誤解。
以下會先從一些相似字開始談。
我想,只要學過微積分的人,一定都聽過極大值和最大值。
這兩個詞在英文中,並不是用 utmostly large number 或什麼 largest number,
而是 maximal 和 maximum。
類似的情況還可以看到最小值=minimum,極值=extremal。
-um 結尾的字是很常見的中性單數拉丁文名詞(拉丁文我沒整個學過就是了),
改成複數型態的時候應該是 -a,例如最大值們=maxima。
正常來說,一個函數的最大值頂多一個,而極大值數目則無限制。
這是因為最大值就是要比其他函數值都大,而極大值則是只比能跟他比的大就好。
以單變數函數來說,在這兩點之間的函數如果單調就算是可比。
所以在這個前提下,(x^2-4)^2 在 x=1 和 x=-1 這兩點的函數值雖然相同,
但並不算是「可比」的。
他們本來就是兩種不同的比較法下的名詞。
很多書並沒有在這兩個詞上著墨太多,也導致很多人分不清他們。
一般都只看到 maximal = local maximal 和 maximum = global maximum,
所以很容易讓人誤會極大值和最大值的差異只在局部和全域而已。
然後多提一個 maximize。
這個字是動詞,代表的是「找最大值」這個動作。
以前的高中生都有學線性規劃(現在的就不一定了……),
線性規劃問題就是一種最佳化問題,通常是找目標函數的最大值或最小值。
所以上了大學以後看到的 linear programming/optimization
通常都直接用 maximize/minimize 了。
所以從這裡就可以知道 optimize 的本意的確是「最」佳化,
如果單就研究問題--特別是數學問題--而言的話。
但就像前面的 max 系列一樣,opt 系列也有 optimal, optimum, optimize 這些。
定義一下吧:
optimal = 比附近的其他情況都好的
optimum = 比所有情況都好的
optimize = 尋找最好(optimum)
但是即使在數學問題上,optimization 也不一定都有找到 optimum。
好不容易找到的演算法,結果是給了個 optimal,
而且我們甚至不能確定有沒有更好的。
更落井下石的還有字義本身。
連劍橋字典都說 optimal = optimum,這該怎樣辦?
(我自己看劍橋字典的感覺也是一堆錯啦QQ)
那回到寫程式的問題上,我想應該沒有工程師敢保證自己的程式碼已達 optimum 吧?
(或許有,但我不懂。)
所以 optimization 是說工程師去做了 optimizing problem 而得到的結果,
並不是工程師得到了 optimum。
其實我不覺得用「最佳化」不好,他或許沒有優化那麼生動,
但是反正工程師也沒說他的「最」要怎麼比出來,所以最佳化還是可以用的。
不然……翻成佳化怎麼樣?一起來推廣吧~
--
一般來說不都是要考慮成本之後去比的嗎?
或許那些最佳化已經是工程師在對得起薪水和工時的情況下所能做到的最好吧。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.49.238 (臺灣)
※ 文章代碼(AID): #1XIM04pi (C_Chat)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1632198660.A.CEC.html
推 : 嗯嗯跟我想的一樣1F 09/21 12:33
→ : 所以這篇是英文教學還是數學教學姆咪
是數學英文(mathematical English)教學喔!→ : 所以這篇是英文教學還是數學教學姆咪
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:35:39
推 : 差點以為走錯版3F 09/21 12:35
推 : 是拉丁文教學4F 09/21 12:35
推 : 這篇比較像是作文課5F 09/21 12:35
推 : 演算法課6F 09/21 12:36
人人的欣賞觀點不盡相同,那是和個人的性格與生活環境有關。推 : 現有的資源下做到最好7F 09/21 12:38
→ : 不代表系統內最好
這是我今年的想法沒錯。→ : 不代表系統內最好
推 : 字根字尾課 生物學也是有類似的麻煩事9F 09/21 12:38
→ : optimization想表達應該是前者10F 09/21 12:39
→ : 有學術名詞都有這經驗 拉丁文超爆幹難11F 09/21 12:39
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:40:29推 : 推12F 09/21 12:41
推 : 老實說我以為這篇講的算是一種常識...13F 09/21 12:42
→ : 沒想到最開始那篇一堆人在噴最佳化並沒有最佳
我大一的時候也以為只是局部和全域的差別啊QQ→ : 沒想到最開始那篇一堆人在噴最佳化並沒有最佳
雖然是常識,但顯然很多人沒讀到,這是教育方面的問題。
教材、教師以及最重要的學生自己沒有去推敲。
僧敲月下門如果不是經過這一番推敲,那個畫面怎麼美起來呢……
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:46:49
→ : 早一點用優化還會被噴,現在優化變成常態用法惹15F 09/21 12:43
推 : 這篇是教你怎麼閱讀英文吧,沒有說公式推導怎麼來16F 09/21 12:44
推 : 但其實用法也不全然都跟這篇講的一樣啦。光maximal 和17F 09/21 12:44
推 : 沒這麼麻煩 拉丁文形容詞good的比較/最高級 不規18F 09/21 12:45
→ : 則變化 bonus/melior/optimus 就限定最的意思了
有夠不規則的。→ : 則變化 bonus/melior/optimus 就限定最的意思了
→ : 其實沒有最佳化只有近似解,每個人配備都不一樣20F 09/21 12:45
→ : minimal 在 order theory 的定義就跟這篇不大一樣了21F 09/21 12:45
一樣的喔,只是「比」的方法是另一種。我很努力不要去談偏序了……
現況是函數值的 maximal 是用我定義的偏序,一般情況就看偏序的長相了,
畢竟偏序不是只有包含而已。
推 : 程式越來越大越複雜,22F 09/21 12:46
→ : 這個有沒有影響?
一定有的吧。不然印個 Hello world. 出來,程式怎樣寫才好討論起來簡單多了。→ : 這個有沒有影響?
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:52:09
推 : 老闆叫你做到「最好」你也不知道怎樣才是最好的概念?24F 09/21 12:47
推 : 用在程式通常是目前當下最好的吧 因為程式這東西是一直在進25F 09/21 12:48
推 : 最佳化的本意是最佳化 實務上只能做到比原本略好的優化26F 09/21 12:48
→ : 這樣吧
→ : 這樣吧
→ : 化改變的 現在最好的寫法可能換個環境換個版本就不一樣了28F 09/21 12:48
推 : 其實這最好拿來指你當下能做到的最好 也沒啥問題29F 09/21 12:48
→ : 更別提還有其他一堆外部因素y30F 09/21 12:49
→ : 涅簡歷: 當你說出完美時 你就停止成長了31F 09/21 12:49
推 : 優化更爛 因為很多是並不會更好32F 09/21 12:50
→ : 而且還有一個是最佳可能是你能力能達到的最佳 換個別的大神33F 09/21 12:50
→ : 來最好就不一樣了
→ : 來最好就不一樣了
→ : 實際怎麼樣另一回事 在講怎麼描述這個動作啊35F 09/21 12:52
→ : 另外更實際的是大部分的碼農才不會要求什麼最佳 時間內完成36F 09/21 12:52
→ : 能達到要求才是重點
→ : 以上一篇移植主機當重點 有可能兩個主機程式根本不一樣 那
→ : 能達到要求才是重點
→ : 以上一篇移植主機當重點 有可能兩個主機程式根本不一樣 那
推 : 你要定義local maximum/minimum 那就要有topolocial39F 09/21 12:55
推 : 對一般民眾來說 最佳化一詞確實語意不清40F 09/21 12:55
推 : 不就支語警察日常 也太認真討論==41F 09/21 12:55
→ : space了吧?42F 09/21 12:55
差不多吧。但是 maximal/minimal 可以不要這個 base space。(local maximum 應該很少人用,通常都配 -al。)
→ : 只能說在寫題/比賽時能寫快一點正式場合能做的就多一點43F 09/21 12:55
→ : 不然local是怎麼來的?44F 09/21 12:55
是。程式碼之間要定義 topology 應該還是有辦法的吧,雖然會伴隨著痛苦。→ : 根本不是什麼最佳 而是有沒有辦法完整把這邊的功能搬移到另45F 09/21 12:55
→ : 一方
移植給我的感覺是把程式碼再造成相容於另一臺主機的意思。→ : 一方
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:01:03
→ : 別人時間內寫50% 也許你寫70%47F 09/21 12:55
→ : 完成通常就停了 還要優化要看老闆要不要投資時間了
→ : 完成通常就停了 還要優化要看老闆要不要投資時間了
推 : 其實拿遊戲來講就很明確了 通常遊戲很多副屬性 所以49F 09/21 12:58
→ : 拿到一件新裝要研究要做哪些搭配才能打出現階段最大
→ : DPS 這就是最佳化
→ : 但上面版友的討論是 因為你還沒打掉最後boss 沒拿到
→ : 最高階的 所以你目前做的事不算最佳化 因為你沒有最
→ : 佳的那個配備
→ : 拿到一件新裝要研究要做哪些搭配才能打出現階段最大
→ : DPS 這就是最佳化
→ : 但上面版友的討論是 因為你還沒打掉最後boss 沒拿到
→ : 最高階的 所以你目前做的事不算最佳化 因為你沒有最
→ : 佳的那個配備
→ : 你這樣比也沒在domain上訂一個partial order啊55F 09/21 12:59
→ : 咦,有欸
當然還要連續函數、值域有全序這些,不過我又不是寫數學課本= =→ : 咦,有欸
寫成那樣我還發在西洽嗎?
推 : 實際上現實也沒那麼簡單 很多玩家配備都不一樣 火系的最強57F 09/21 13:01
→ : 裝拿去打水系就變成廢物也是可能的
→ : 裝拿去打水系就變成廢物也是可能的
→ : 我建議改成鄧佳化,生動又有趣59F 09/21 13:01
→ : 數學也有最佳化的專題,但沒人會認為求出的是最佳解60F 09/21 13:02
最佳化是大哉問。但是其中每一個被解決掉的部份都足夠有趣。※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:08:01
→ : 數學沒有時間限制啊61F 09/21 13:06
推 : 確實優化比最佳化更能貼近原意62F 09/21 13:07
都沒有人要用佳化QQ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:08:38
推 : 我決定不要跟你聊天63F 09/21 13:08
推 : 數學看命題吧 有機會求出最佳解 實務應用上就很難64F 09/21 13:09
推 : 以前講程式都是最佳化沒錯啊...65F 09/21 13:09
→ : 本科講優化會被教授當掉吧...
→ : 本科講優化會被教授當掉吧...
→ : 語言本身不就也是一種傳遞訊息的編碼嗎 == 怎麼會講個67F 09/21 13:11
→ : 名詞就會被教授當掉
→ : 名詞就會被教授當掉
推 : 優/最佳化比較類似面向user的推銷詞彙 多半用在軟硬體設定69F 09/21 13:11
推 : 幫高調 受教了70F 09/21 13:12
推 : 以前就有人覺得最佳化講起來很彆扭了71F 09/21 13:12
→ : end user能動的那一段上面 實際上寫程式的我沒見過用這個72F 09/21 13:12
→ : 其實貼不貼近原意根本不重要 是因為講這種話的國家是73F 09/21 13:12
→ : 敵國 就這麼簡單
同意。→ : 敵國 就這麼簡單
說起來我第一次聽到優化是同學在講魔法兔子。
當時我還以為這是他們在玩的遊戲。
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:13:50
→ : 就硬要套用詞啊,優化版本跟最佳化版本當然優化好懂75F 09/21 13:14
→ : 早期都馬叫更新檔,大家用起來也不覺得有問題
→ : 早期都馬叫更新檔,大家用起來也不覺得有問題
推 : 哭啊 我演算法修的超級爛77F 09/21 13:16
→ : 更新檔要寫改了什麼啊78F 09/21 13:16
→ : 如果程式有改寫的話,更新檔一定寫遊戲效能提升79F 09/21 13:19
推 : 原來如此80F 09/21 13:21
--
※ 看板: ACG 文章推薦值: 0 目前人氣: 0 累積人氣: 157
回列表(←)
分享