看板 C_Chat 關於我們 聯絡資訊
※ 引述《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 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1632198660.A.CEC.html
CorkiN: 嗯嗯跟我想的一樣 09/21 12:33
CorkiN: 所以這篇是英文教學還是數學教學姆咪 09/21 12:33
是數學英文(mathematical English)教學喔! ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:35:39
asd89501tw: 差點以為走錯版 09/21 12:35
emptie: 是拉丁文教學 09/21 12:35
arrenwu: 這篇比較像是作文課 09/21 12:35
storewater: 演算法課 09/21 12:36
人人的欣賞觀點不盡相同,那是和個人的性格與生活環境有關。
justwedave: 現有的資源下做到最好 09/21 12:38
justwedave: 不代表系統內最好 09/21 12:38
這是我今年的想法沒錯。
Pegasus99: 字根字尾課 生物學也是有類似的麻煩事 09/21 12:38
justwedave: optimization想表達應該是前者 09/21 12:39
spfy: 有學術名詞都有這經驗 拉丁文超爆幹難 09/21 12:39
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:40:29
medama: 推 09/21 12:41
forsakesheep: 老實說我以為這篇講的算是一種常識... 09/21 12:42
forsakesheep: 沒想到最開始那篇一堆人在噴最佳化並沒有最佳 09/21 12:42
我大一的時候也以為只是局部和全域的差別啊QQ 雖然是常識,但顯然很多人沒讀到,這是教育方面的問題。 教材、教師以及最重要的學生自己沒有去推敲。 僧敲月下門如果不是經過這一番推敲,那個畫面怎麼美起來呢…… ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:46:49
forsakesheep: 早一點用優化還會被噴,現在優化變成常態用法惹 09/21 12:43
seed1132001: 這篇是教你怎麼閱讀英文吧,沒有說公式推導怎麼來 09/21 12:44
arrenwu: 但其實用法也不全然都跟這篇講的一樣啦。光maximal 和 09/21 12:44
Pyonpyon5566: 沒這麼麻煩 拉丁文形容詞good的比較/最高級 不規 09/21 12:45
Pyonpyon5566: 則變化 bonus/melior/optimus 就限定最的意思了 09/21 12:45
有夠不規則的。
seed1132001: 其實沒有最佳化只有近似解,每個人配備都不一樣 09/21 12:45
arrenwu: minimal 在 order theory 的定義就跟這篇不大一樣了 09/21 12:45
一樣的喔,只是「比」的方法是另一種。 我很努力不要去談偏序了…… 現況是函數值的 maximal 是用我定義的偏序,一般情況就看偏序的長相了, 畢竟偏序不是只有包含而已。
MoneyMonkey: 程式越來越大越複雜, 09/21 12:46
MoneyMonkey: 這個有沒有影響? 09/21 12:46
一定有的吧。不然印個 Hello world. 出來,程式怎樣寫才好討論起來簡單多了。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 12:52:09
macocu: 老闆叫你做到「最好」你也不知道怎樣才是最好的概念? 09/21 12:47
ss218: 用在程式通常是目前當下最好的吧 因為程式這東西是一直在進 09/21 12:48
jeeyi345: 最佳化的本意是最佳化 實務上只能做到比原本略好的優化 09/21 12:48
jeeyi345: 這樣吧 09/21 12:48
ss218: 化改變的 現在最好的寫法可能換個環境換個版本就不一樣了 09/21 12:48
x159753852: 其實這最好拿來指你當下能做到的最好 也沒啥問題 09/21 12:48
ss218: 更別提還有其他一堆外部因素y 09/21 12:49
jeeyi345: 涅簡歷: 當你說出完美時 你就停止成長了 09/21 12:49
sd2567: 優化更爛 因為很多是並不會更好 09/21 12:50
我書讀得少.jpg 我遊戲玩得不多,其實不太懂遊戲公司玩的優化到底是個啥。 不過催麥手遊和第一神拳手遊我倒是肯定他們有讓程式變好, 這兩個我一開始玩的時候,手機都是十分鐘內就燙手,關螢幕也一樣,這還是在冷氣房。 後來都可以開個幾個小時也沒事,當然一直亮著螢幕就……
ss218: 而且還有一個是最佳可能是你能力能達到的最佳 換個別的大神 09/21 12:50
ss218: 來最好就不一樣了 09/21 12:50
jeeyi345: 實際怎麼樣另一回事 在講怎麼描述這個動作啊 09/21 12:52
ss218: 另外更實際的是大部分的碼農才不會要求什麼最佳 時間內完成 09/21 12:52
ss218: 能達到要求才是重點 09/21 12:53
ss218: 以上一篇移植主機當重點 有可能兩個主機程式根本不一樣 那 09/21 12:54
arrenwu: 你要定義local maximum/minimum 那就要有topolocial 09/21 12:55
sunshinecan: 對一般民眾來說 最佳化一詞確實語意不清 09/21 12:55
wu10200512: 不就支語警察日常 也太認真討論== 09/21 12:55
arrenwu: space了吧? 09/21 12:55
差不多吧。但是 maximal/minimal 可以不要這個 base space。 (local maximum 應該很少人用,通常都配 -al。)
jeeyi345: 只能說在寫題/比賽時能寫快一點正式場合能做的就多一點 09/21 12:55
arrenwu: 不然local是怎麼來的? 09/21 12:55
是。程式碼之間要定義 topology 應該還是有辦法的吧,雖然會伴隨著痛苦。
ss218: 根本不是什麼最佳 而是有沒有辦法完整把這邊的功能搬移到另 09/21 12:55
ss218: 一方 09/21 12:55
移植給我的感覺是把程式碼再造成相容於另一臺主機的意思。 所以這個是相容性的事,至於寫得好不好才是普遍被稱為 optimization 的問題。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:01:03
jeeyi345: 別人時間內寫50% 也許你寫70% 09/21 12:55
jeeyi345: 完成通常就停了 還要優化要看老闆要不要投資時間了 09/21 12:56
x159753852: 其實拿遊戲來講就很明確了 通常遊戲很多副屬性 所以 09/21 12:58
x159753852: 拿到一件新裝要研究要做哪些搭配才能打出現階段最大 09/21 12:58
x159753852: DPS 這就是最佳化 09/21 12:58
x159753852: 但上面版友的討論是 因為你還沒打掉最後boss 沒拿到 09/21 12:58
x159753852: 最高階的 所以你目前做的事不算最佳化 因為你沒有最 09/21 12:58
x159753852: 佳的那個配備 09/21 12:58
cmrafsts: 你這樣比也沒在domain上訂一個partial order啊 09/21 12:59
cmrafsts: 咦,有欸 09/21 13:00
當然還要連續函數、值域有全序這些,不過我又不是寫數學課本= = 寫成那樣我還發在西洽嗎? 只用 x 坐標表達點的話,2≦1≦0、-2≦-1≦0,但 1 和 -1 之間沒有順序。 一般的多變數連續函數應該就是如果在兩點之間有一條單調的路徑則可比吧。
ss218: 實際上現實也沒那麼簡單 很多玩家配備都不一樣 火系的最強 09/21 13:01
ss218: 裝拿去打水系就變成廢物也是可能的 09/21 13:01
這個是 maximal 很多,而且彼此之間要加條件才能比的意思。
pc0805: 我建議改成鄧佳化,生動又有趣 09/21 13:01
lazarus1121: 數學也有最佳化的專題,但沒人會認為求出的是最佳解 09/21 13:02
最佳化是大哉問。但是其中每一個被解決掉的部份都足夠有趣。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:08:01
jeeyi345: 數學沒有時間限制啊 09/21 13:06
可以加啊XD
poeoe: 確實優化比最佳化更能貼近原意 09/21 13:07
都沒有人要用佳化QQ ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:08:38
ssarc: 我決定不要跟你聊天 09/21 13:08
sunshinecan: 數學看命題吧 有機會求出最佳解 實務應用上就很難 09/21 13:09
XXXXDGC: 以前講程式都是最佳化沒錯啊... 09/21 13:09
XXXXDGC: 本科講優化會被教授當掉吧... 09/21 13:10
arrenwu: 語言本身不就也是一種傳遞訊息的編碼嗎 == 怎麼會講個 09/21 13:11
arrenwu: 名詞就會被教授當掉 09/21 13:11
ss218: 優/最佳化比較類似面向user的推銷詞彙 多半用在軟硬體設定 09/21 13:11
notneme159: 幫高調 受教了 09/21 13:12
sunshinecan: 以前就有人覺得最佳化講起來很彆扭了 09/21 13:12
ss218: end user能動的那一段上面 實際上寫程式的我沒見過用這個 09/21 13:12
x159753852: 其實貼不貼近原意根本不重要 是因為講這種話的國家是 09/21 13:12
x159753852: 敵國 就這麼簡單 09/21 13:12
同意。 說起來我第一次聽到優化是同學在講魔法兔子。 當時我還以為這是他們在玩的遊戲。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:13:50
lazarus1121: 就硬要套用詞啊,優化版本跟最佳化版本當然優化好懂 09/21 13:14
lazarus1121: 早期都馬叫更新檔,大家用起來也不覺得有問題 09/21 13:15
更新檔不是 patch 嗎?不過這個會開新戰場:補丁。 早期我以為都是「最佳化設置」、「最佳設置」這種吔。
jeff666: 哭啊 我演算法修的超級爛 09/21 13:16
jeeyi345: 更新檔要寫改了什麼啊 09/21 13:16
lazarus1121: 如果程式有改寫的話,更新檔一定寫遊戲效能提升 09/21 13:19
縮短加載時間、特效升級這類? ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:21:55
daidaidai02: 原來如此 09/21 13:21
xiaohua: 更佳化如何? 09/21 13:25
lm314v25: 變好所以"優化"很生動,所以improve怎麼翻?啥都翻優化? 09/21 13:29
et310: 在英文裡面探討數學中的中文譯解 09/21 13:30
kaj1983: 我還是喜歡用最佳化 09/21 13:35
kaj1983: 反正優化也不會是最優,都是一樣的東西 09/21 13:36
優良可差劣,優其實已經是最頂的了。所以+1。 同時我也可以接受別人使用優化。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 13:38:58
j022015: 優異化 09/21 13:45
OldDaiDai: 推 09/21 13:46
inte629l: 推 09/21 13:49
diablo81321: 優化是比較貼近的翻譯啊 儘管是敵性言語 09/21 13:50
Arctica: 這是用字概念上要精準的問題 09/21 14:46
我覺得最佳化已經夠精準了,要說爛那真的是得從英文原文開始罵。 但是我也把理由寫出來了,最佳化是理想,但通常消費者只看到不夠佳。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 14:51:45
jeeyi345: 優化如果說貼近是實際情況 最佳化是針對原字翻譯 09/21 14:51
s12358972: 程式最佳化的終點是O(1) 09/21 14:58
s12358972: 但是能做到的只有短短幾行的程式碼而已 09/21 14:58
這邊 O(1) 我看不懂QQ n 是程式碼的行數或字數之類的,然後要算的是加法次數和乘法次數嗎?
w1214225: 老師我還是不懂 09/21 15:01
這個一般來說可以看領域找到自己最習慣、最容易懂的例子。 像是 maximal ideal 或 spanning tree 甚至 basis 都有 maximal 的性質, 但都不會有人用 maximum 去稱呼。 有時候會有例外,例如 tree 是自己的 spanning tree,就有 maximum 的性質。 上面都還只是數學上的例子,事實上只要有偏序的概念就可以建立 maximal 的概念。
ab37695543xs: 資訊科技的話,應該都只會有當下最佳解,硬體軟體進 09/21 15:04
ab37695543xs: 展很快 09/21 15:04
通常玩家會罵都是因為在自己的「舊硬體」上程式跑得不好, 以前常常都要調整自己電腦裡面的參數來適應遊戲。 這個動作就是客戶端在做「最佳化」,也很常使用一些第三方軟體,例如魔法兔子。 我很久沒玩那種了,不知道現在是不是還是得調整自己的電腦。 更何況有的時候玩家的電腦根本是剛剛好地新的電腦,遊戲卻還是跑得不好。 問個新戰場好了。本機是不是支語啊?我還是習慣我的電腦,所以有改掉。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 16:28:31
dustmoon: 推 09/21 16:03
※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 16:44:12
jeeyi345: Geforce experience現在直接幫你調 09/21 16:37
jeeyi345: 硬體不好罵優化的 隔壁有個鬧笑話奇文啦 09/21 16:38
jeeyi345: 也有全頂規還很卡的 那就是真的優化不好 09/21 16:38
我把舊電腦加個引號就是…… 其實也不是爛電腦,只是大概有個兩三年這樣。 我不覺得這種開口罵是無理取鬧。 因為為了每個遊戲都升級一次電腦,就不是一般玩家會做的事。 ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 16:51:02
lazarus1121: 印象中本機端這種用詞很早就有了 09/21 16:47
localhost 不是本地端嗎?
peterkfduh: 良化 09/21 16:54
我埋哏很久了:你是不是良化隊派來的(X) ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 17:01:02
wanjack: 本機磁碟 這個詞超久了吧 09/21 17:03
這麼一說,好像有點印象。但我還是習慣我的電腦。
makinoyui: 哈洽馬洽嗎~~漲姿勢 六尾兄水喔! 讚讚 09/21 17:46
justeat: 佳化跟優化有什麼差別嗎?幹嘛刻意做區別? 09/21 18:17
很多人討厭優化也不喜歡最佳化啊,找替代品。
john5568: steam版那個奇文真的很狂,連最低配備都沒到還一直說程 09/21 18:40
john5568: 式有bug.. 09/21 18:40
是哪個啊?廖添丁跟天命嗎? ※ 編輯: Vulpix (1.163.49.238 臺灣), 09/21/2021 19:48:59
s12358972: 那個是時間複雜度,算輸入跟輸出要所需的時間 09/21 21:56
s12358972: O(1)的話就是不管多少輸入,程式只會執行一次就輸出 09/21 21:56
s12358972: O(n)的話就是假設10個輸入,程式就會執行10次後輸出 09/21 21:56
s12358972: 我演算法很爛,不會算這個 09/21 21:56
sarafciel: 程式最佳化的終點不是O(1)啦 而且你定義給錯了XD 09/21 23:12
sarafciel: https://tinyurl.com/6apdcke8 09/21 23:15
NicoNeco: 自信點 領人家薪水的就要堅持自己做的是最好的 09/22 11:25
※ 編輯: Vulpix (1.163.52.21 臺灣), 09/25/2021 19:56:03