【中文翻譯】《城市:天際線 Ⅱ》特色亮點(diǎn)#2:交通AI
譯者前言:
《城市:天際線 Ⅱ》即將于今年10月25日在各大平臺(tái)正式發(fā)售,現(xiàn)已開(kāi)啟預(yù)購(gòu)。自6月19日至9月11日,Colossal Order 將發(fā)布一系列開(kāi)發(fā)日志,介紹該游戲的功能與特色。本文翻譯了6月26日發(fā)布的該系列第二篇開(kāi)發(fā)日志。
本文基于百度翻譯結(jié)果適當(dāng)潤(rùn)色;游戲內(nèi)功能標(biāo)簽等專用詞匯的翻譯,不代表將來(lái)官方最終使用者。原文鏈接等將于置頂評(píng)論列出,原文及圖片版權(quán)歸原作者所有。如有不恰當(dāng)之處還請(qǐng)諒解,并請(qǐng)您在評(píng)論區(qū)不吝賜教。
如果您喜歡本文,務(wù)請(qǐng)不要吝惜您的點(diǎn)贊甚至三連,十分感謝!

《城市:天際線 Ⅱ》特色亮點(diǎn)#2:交通 AI
大家好!帶著《城市:天際線Ⅱ》(后稱二代)的另一篇開(kāi)發(fā)日志,我們又見(jiàn)面了。今天的內(nèi)容是新型和改進(jìn)的交通 AI。在一個(gè)不斷壯大的城市中管理交通是《城市:天際線》(后稱一代)關(guān)鍵的一部分;我們明白,到了二代,我們想給您帶來(lái)一個(gè)更高級(jí)的系統(tǒng),既能回應(yīng)您多年來(lái)的反饋,又能讓城市更加栩栩如生。
市民和交通是一個(gè)生機(jī)勃勃的城市的核心部分。人們?cè)谑裁吹胤骄幼?、工作,閑暇時(shí)又會(huì)去哪兒?商業(yè)位于何處,如何獲得售賣的商品?它們的客戶是市民還是其他商業(yè)?顧客如何找到它們?附近有沒(méi)有更好的購(gòu)物選擇?所有這些等等都要把交通在城市中的流動(dòng)納入考量。
在本篇開(kāi)發(fā)日志中,我們將了解交通模擬如何工作,以及各種行為主體(agent,在城市中運(yùn)動(dòng)的市民、服務(wù)和資源)在做出尋路決策時(shí)考慮了哪些特征。在深入了解所有細(xì)節(jié)之前,請(qǐng)查看下面的精彩視頻。
(譯者注:請(qǐng)至源地址或其他授權(quán)搬運(yùn)處查看)
兩代游戲間的差異
二代中的尋路方式與一代不同。在一代中尋路是基于鄰近程度的,即行為主體將通過(guò)直線距離計(jì)算目的地或指令服務(wù),而不考慮現(xiàn)有的道路網(wǎng)絡(luò)。在發(fā)生火災(zāi)時(shí),這意味著響應(yīng)的消防車將來(lái)自最近的消防站,即使消防車的路線因?yàn)橥ㄏ蚰康牡氐牡缆愤B接方式而變得更長(zhǎng)。更長(zhǎng)的響應(yīng)時(shí)間可能意味著消防車反而無(wú)法及時(shí)阻止火勢(shì)蔓延或避免建筑物倒塌。行為主體會(huì)選擇最快的路線到達(dá)目的地,即使交通堵塞也會(huì)不緊不慢地堵在其中;除非修改道路網(wǎng)絡(luò),使他們?cè)瓉?lái)的路線不再可行,它們才會(huì)改變路線。
在二代中,行為主體根據(jù)尋路成本選擇路線。該成本由多個(gè)因素計(jì)算而成,有城市的道路網(wǎng)絡(luò)、出行時(shí)間、出行成本、行為主體偏好等,我們將在下文中更詳細(xì)地介紹。行為主體還將根據(jù)沿途發(fā)生的事件調(diào)整路線。他們可能會(huì)改變車道以繞開(kāi)車禍和服務(wù)車輛停車,或?yàn)閼?yīng)對(duì)緊急情況的車輛騰出空間。

尋路成本
尋路計(jì)算的核心是這四個(gè)方面:時(shí)間、舒適度、金錢和個(gè)性。
時(shí)間是計(jì)算路徑的一個(gè)重要因素。其他因素也會(huì)影響尋路,但時(shí)間通常是最重要的,因?yàn)樗行袨橹黧w都傾向于到達(dá)目的地的最快路線。當(dāng)只考慮出行時(shí)間時(shí),小型道路可能會(huì)比高速路更近,但速度也更低,所以大多數(shù)情況下公路基本上更快,行為主體會(huì)選擇高速路。
舒適度是尋路的一個(gè)重要因素,規(guī)劃的路線盡可能順滑,避免不必要的交叉口轉(zhuǎn)彎,并找到合適的停車位或公共交通站點(diǎn)下車。舒適度直接計(jì)算到尋路成本中,每個(gè)選項(xiàng)都會(huì)添加到總成本中。
金錢以燃料使用和可能的停車費(fèi)的形式計(jì)入尋路選擇。市民權(quán)衡出行和停車成本,并將其與其他出行選擇以及步行進(jìn)行比較,看看哪種更快捷、舒適、價(jià)錢合理。就送貨車輛而言,運(yùn)得越遠(yuǎn),所運(yùn)輸資源的成本就越高。因此,在當(dāng)?shù)劁N售資源和貨物,其運(yùn)送成本要比將貨物運(yùn)輸?shù)酵獠窟B接更低,對(duì)公司來(lái)說(shuō)更劃算。
個(gè)性是指行為主體愿意在交通中做出“危險(xiǎn)”的決定,例如掉頭。市民和送貨車輛為了降低尋路成本,不太可能在交通中做出危險(xiǎn)決定;而應(yīng)急車輛的行為約束更寬松,這樣他們就可以在緊急情況下在道路網(wǎng)絡(luò)中導(dǎo)航,并在必要時(shí)做出危險(xiǎn)的尋路決定。
尋路還將旅行者的年齡段考慮進(jìn)來(lái)。對(duì)于青少年來(lái)說(shuō),最重要的因素是金錢:他們?cè)诔鲂袝r(shí)會(huì)尋找便宜的選擇,無(wú)論是各種交通方式還是停車。成年人重視時(shí)間,所以對(duì)他們來(lái)說(shuō)最快的路線再好不過(guò)。老年人更喜歡高舒適度。只要“舒適度”成本低,老年人就傾向于選擇它。
市民在做出決策時(shí)權(quán)衡所有尋路因素,以最低的總尋路成本為目的。
服務(wù)車輛根據(jù)最低的總體尋路成本來(lái)指令,新指令發(fā)出時(shí),它們會(huì)考慮到所有可用車輛現(xiàn)在和未來(lái)近期的距離(比如車輛在完成之前的服務(wù)指令后所處的位置)。舉個(gè)例子,道路養(yǎng)護(hù)服務(wù)車輛接到指令維修一段道路。在模擬中將檢查當(dāng)前所有可用車輛的位置及其接受指令的目的地。如果有一輛車在完成當(dāng)前服務(wù)指令后即到了附近,那么可能不會(huì)為新指令選擇當(dāng)前較近的車輛。
由于距離使成本增加,資源運(yùn)輸受路線長(zhǎng)度的影響,因此公司盡量將貨物運(yùn)得近些,以增加自身的利潤(rùn)率。將資源和貨物運(yùn)出城市的成本很高,而且會(huì)大大降低公司的盈利能力。

車道使用
在二代中,車輛將利用更多的車道。它們會(huì)盡量充分使用道路,在前往目的地時(shí)用上所有可用的車道,讓交通盡可能順暢。這表示,如果多車道道路的一條車道上擠滿了等信號(hào)燈的車輛,那么新到交叉口的車輛會(huì)選擇另一條空車道來(lái)均勻地填滿交叉口。
多車道道路上,游戲模擬發(fā)現(xiàn)其他車道使用較少時(shí),車輛可以超越慢車。車輛也會(huì)變道以繞開(kāi)因交通事故、堵塞或停車(如救護(hù)車接病人)而完全堵塞的車道。此外,車輛也會(huì)盡量變道,為應(yīng)急車輛讓路。

交通模擬、行為主體和性能
二代中的交通模擬非常復(fù)雜。所有車輛和行人不僅要計(jì)算路徑,在城市的大小道路上行駛時(shí)還要始終考慮附近的所有行為主體。行為主體在出行時(shí)會(huì)多次做出影響車流的決策,這與他們的尋路決策是分開(kāi)的。其中包括跟隨車輛加速、剎車減速、轉(zhuǎn)彎時(shí)避開(kāi)對(duì)向車輛、變道以優(yōu)化車流,以及在原定路線上發(fā)生交通事故等意外事件時(shí)做出尋路決策。
以上意味著尋路計(jì)算比一代數(shù)量更多、更深入,因?yàn)樾袨橹黧w有更多影響他們決策的特征。但由于尋路和模擬等計(jì)算充分利用了多核CPU的所有可用處理能力,因此計(jì)算更高效,從而實(shí)現(xiàn)了更好的總體性能。
此外,二代對(duì)在城市中運(yùn)動(dòng)的行為主體沒(méi)有硬限制,這是對(duì)一代的重大改進(jìn)。總的來(lái)說(shuō),模擬和尋路的表現(xiàn)大大提高,這意味著可以達(dá)到更大的人口數(shù)量。模擬的唯一真正限制是游戲運(yùn)行平臺(tái)的硬件限制。

環(huán)形交叉口行為
我們?cè)谏弦黄_(kāi)發(fā)日志中講到了環(huán)形交叉口的建造方式,但改進(jìn)可并不只有這一點(diǎn)。交通模擬還考慮了環(huán)形交叉口的出入規(guī)則。匯入車輛會(huì)讓行已在環(huán)形交叉口上的車輛,但和現(xiàn)實(shí)生活一樣,如果有合適的機(jī)會(huì),它們也會(huì)插入進(jìn)來(lái)。這是行為主體個(gè)性的一部分,總是尋找合適的地點(diǎn)來(lái)改善車流量,在緊要關(guān)頭變道或溜過(guò)交叉口。

交通事故
交通事故是二代的一大特色,車輛會(huì)失控相撞或撞上建筑物。事故發(fā)生的可能性按每段道路計(jì)算,并因道路條件、照明條件、天氣和災(zāi)害等特性而增加。要降低道路的事故概率,用道路養(yǎng)護(hù)服務(wù)和路燈來(lái)保持道路的良好狀態(tài)是個(gè)好辦法。
當(dāng)一段道路上的事故判定為成功時(shí),其上某一輛隨機(jī)的車“失去控制”。車輛被推向一個(gè)隨機(jī)的方向,獲得簡(jiǎn)單的碰撞和物理效果,使其能夠在過(guò)程中撞上障礙物。如果一輛車與另一個(gè)行為主體相撞,它也會(huì)在事故期間獲得碰撞和物理效果。
事故現(xiàn)場(chǎng)需要分別由警察和道路養(yǎng)護(hù)部門保護(hù)和清理。游戲模擬會(huì)讓事故影響到的車道上的車停下來(lái),等待道路暢通后再繼續(xù)行駛。如果事故嚴(yán)重到造成了嚴(yán)重傷害,救護(hù)車也可能被叫到現(xiàn)場(chǎng)。如果清理事故現(xiàn)場(chǎng)會(huì)導(dǎo)致長(zhǎng)時(shí)間的交通堵塞,行為主體可能會(huì)重新計(jì)算尋路,從而導(dǎo)致“危險(xiǎn)”行為,掉頭尋找繞過(guò)堵塞車道的其他路線。

停車
停車是二代中的一個(gè)新特色,也是尋路的四個(gè)主要方面之一。行為主體在計(jì)算尋路并決定如何前往目的地時(shí),會(huì)考慮可用的停車位。通常,對(duì)行為主體來(lái)說(shuō),能選擇將車停在他們要去的大樓的停車場(chǎng)上是最舒適的。如果不行,他們會(huì)選擇另一個(gè)停車地或不同的交通方式。缺乏停車場(chǎng)可能會(huì)導(dǎo)致市民更喜歡去其他地方進(jìn)行購(gòu)物或休閑等活動(dòng)。
市民年齡段在出行舒適度、時(shí)間和金錢方面有不同的偏好。停車總會(huì)以某種方式影響到這些方面。老年人更喜歡舒適,如果目的地附近有停車位,他們很可能會(huì)選擇停車位,而不考慮可能的停車費(fèi)。成年人最關(guān)心時(shí)間,選擇最快的路線;而青少年的錢最少,所以會(huì)選擇便宜的停車場(chǎng),即使他們要想完成出行必須走得更遠(yuǎn)或使用其他交通工具。
為每個(gè)停車場(chǎng)和建筑設(shè)置的費(fèi)用以及區(qū)劃的路邊停車費(fèi)會(huì)影響到行為主體的停車選擇和尋路成本計(jì)算。低收費(fèi)或不收費(fèi)鼓勵(lì)所有市民群體停車,而高收費(fèi)則更適合富裕的市民。

信息視圖
二代有兩個(gè)信息視圖,交通信息視圖和道路信息視圖,有助于監(jiān)視交通并盡早解決問(wèn)題。
交通概況
交通信息視圖顯示了整個(gè)城市的車流量(traffic flow)和交通量(traffic volume),交通堵塞的道路涂紅,可以很容易地快速發(fā)現(xiàn)道路網(wǎng)絡(luò)中的問(wèn)題所在。車流量表示城市車流的順暢程度。較高的數(shù)字表示沒(méi)有堵塞,而較低的數(shù)字表示可能有瓶頸路段。最后,交通量顯示了一天中的不同時(shí)間有多少車輛在道路網(wǎng)絡(luò)上行駛。交通量大表示高峰期。

道路概況
道路信息視圖顯示了關(guān)于一條道路的更深入的信息,涵蓋了道路的狀況及其車流量和交通量。有了這些工具,就可以非常精確地加強(qiáng)道路網(wǎng)絡(luò)。如果某條道路交通量很大,那么它很可能是一條主干道,隨著城市的發(fā)展,您可能需要密切關(guān)注它,并將其升級(jí)為更大的道路,以緩解未來(lái)的交通擁堵。
道路狀況對(duì)事故概率和行駛速度產(chǎn)生負(fù)面影響,增加事故風(fēng)險(xiǎn)、減緩交通速度。道路養(yǎng)護(hù)車輛在冬季保持道路狀況良好無(wú)積雪,使交通更加順暢,出行更加安全。

服務(wù)車輛
當(dāng)服務(wù)車輛接收來(lái)自建筑和道路段落的指令時(shí),它們會(huì)計(jì)算出到達(dá)目的地的合適路徑。當(dāng)車輛行駛到目的地時(shí),它們會(huì)影響行駛路徑和/或周圍環(huán)境——例如,當(dāng)垃圾車收到前往下一個(gè)目的地收集垃圾的指令時(shí),它們也會(huì)沿途收集垃圾。同樣,道路維護(hù)車輛將在行駛至當(dāng)前目的地后維修道路段落。
警車和消防車等應(yīng)急車輛有別的規(guī)則影響它們的尋路。與市民、其他服務(wù)車輛和送貨車輛相比,他們的行為“更危險(xiǎn)”:如果能縮短前往目的地的路線,他們就可以“非法”掉頭??赡艿脑?,其他車輛將在多車道道路上變道,讓行應(yīng)急車輛。
巡邏警察的行為也有別的規(guī)則,巡邏任務(wù)可以降低他們所經(jīng)過(guò)地區(qū)的犯罪概率,而搶劫或交通事故等緊急情況則優(yōu)先于巡邏。
公共交通工具在指定線路上行駛,但出租車除外,它們可根據(jù)類似于私家車的尋路規(guī)則自由選擇路線。它們起初會(huì)在出租車站接客,但隨著出租車站升級(jí),他們能在城市里的任何地方接客。
服務(wù)車輛活動(dòng)可僅限于玩家創(chuàng)建的區(qū)域。這些情況下,車輛只在指定區(qū)域內(nèi)響應(yīng)指令和緊急情況。任何城市服務(wù)都可以為一個(gè)或多個(gè)區(qū)劃甚至整個(gè)城市(默認(rèn))提供服務(wù)。

與其他城市之間的交通
通過(guò)一個(gè)又一個(gè)外部連接與其他城市之間建立的交通也是游戲一大特色。這種交通對(duì)城市經(jīng)濟(jì)沒(méi)有貢獻(xiàn),但隨著城市的發(fā)展和高速公路融入城市道路網(wǎng),它們也能成為總體車流的一部分。如果玩家在兩個(gè)外部連接之間建立一條較短的路線,并在尋路方面更劃算,那么這些城市之間的交通車輛將變?yōu)槭褂眠@個(gè)新建的選項(xiàng)。

本篇開(kāi)發(fā)日志到這里就結(jié)束了。我們希望它能帶你深入了解二代中的交通行為,并將幫助您設(shè)計(jì)理想的城市。交通 AI 一直是一代中反復(fù)提及的話題,我們期待聽(tīng)到您對(duì)二代中更先進(jìn)、更逼真的交通模擬的反饋。下周,我們將討論公共交通和貨物運(yùn)輸,以及它如何整合進(jìn)您的城市。

譯者感想:
尋路 AI 有了很大改進(jìn),考慮的因素更多更復(fù)雜;可以指定服務(wù)區(qū)域,這很好;單車道堵車、單核戰(zhàn)士將不再出現(xiàn),但對(duì)硬件仍然是個(gè)考驗(yàn);治理堵車時(shí)停車場(chǎng)和服務(wù)設(shè)施的規(guī)劃也要好好考慮了。外部連接點(diǎn)內(nèi)移到了邊緣地塊(相當(dāng)于繞過(guò)了 Cross the Line +?Unlimited Outside Connections)。
感謝您的閱讀!如果您喜歡本文,不妨慷慨一贊,十分感謝!