【城市天際線2】開發日誌#2 交通AI


3樓貓 發佈時間:2023-07-02 23:36:12 作者:稀釋大骨湯 Language

大家好!我們又回來了《城市:天際線II》的另一本開發日記,今天是關於新的和改進的交通AI。在不斷發展的城市中管理交通是《城市:天際線》的核心部分,在續集中,我們知道我們希望為您帶來一個更先進的系統,既可以解決您多年來分享的反饋,又可以讓城市感覺更真實和生動。

市民和交通是一座生機勃勃的城市的核心部分。人們住在哪裡,在哪裡工作,他們在空閒時間去什麼地方?企業位於何處,他們如何獲得銷售的商品?他們的客戶是公民還是其他企業?他們的客戶如何找到他們,附近還有其他更好的購物選擇嗎?所有這些以及更多因素都會影響交通在城市中的移動方式。

在這本開發日記中,我們研究了交通模擬的工作原理,以及代理(在城市中移動的公民、服務和資源)在做出尋路決策時會考慮哪些特徵。在深入瞭解所有細節之前,請查看下面的精彩視頻。

城市:天際線與城市:天際線II的不同

《城市:天際線II》中的尋路方式與其前作不同。在城市中:天際線尋路是基於鄰近的,這意味著代理商將計算其目的地或按直線距離訂購服務,而無需考慮現有的道路網絡。在發生火災的情況下,這可能意味著消防車響應將來自最近的車站,即使它的路線更長,因為道路如何將其連接到目的地。較長的響應時間可能反過來意味著消防車無法及時阻止火勢蔓延或挽救建築物免於倒塌。代理商會選擇最快的路線到達目的地並堅持下去,如果發生交通擁堵,他們會耐心地坐在交通擁堵中,只有在道路網絡被修改導致其原始路徑不再可行的情況下才會改變路線。

在《城市:天際線II》中,代理根據尋路成本選擇路線。此成本是使用多種因素計算的,例如城市的道路網絡、旅行時間、旅行成本、代理商偏好等,我們將在下面更詳細地介紹這些因素。此外,代理將根據沿途的事件調整路線。他們可能會改變車道以避免車禍或停止的服務車輛,或者為應對緊急情況的車輛騰出空間。

【城市天際線2】開發日誌#2 交通AI-第0張

當代理商決定如何出行時,您的城市佈局只是等式的一部分

          尋路成本

          尋路計算的核心是四個方面:時間、舒適度、金錢和行為。

          在計算路徑時,時間是一個重要因素。雖然其他因素會影響尋路,但時間通常是最重要的,因為所有代理都傾向於尋找到達目的地的最快路線。僅考慮行駛時間時,小路可以較短,但其行駛速度低於較長高速公路的行駛速度,因此,如果高速公路總體上是較快的路線,則代理在大多數情況下會選擇高速公路。

          舒適性是尋路的一個重要因素,包括規劃路線儘可能順暢,避免在十字路口不必要的轉彎,以及找到合適的停車位或公共交通站下車。舒適度直接計算為尋路成本,每個選項都會增加總成本。

          資金以燃料使用和潛在停車費的形式進入尋路選擇。市民權衡旅行和停車費用,並將其與其他旅行選擇進行比較,並步行看看哪個選項快速、舒適且負擔得起。就送貨車輛而言,它們運輸的資源成本越遠,它們被運送的距離就越高。因此,對於公司來說,在本地銷售資源和貨物更具成本效益,因為交付成本低於將貨物拖到外部連接。

          行為是指公民在交通中做出“危險”的決定,例如掉頭。公民和送貨車輛不太可能在交通中做出危險決定以降低尋路成本,而緊急車輛具有更寬鬆的行為模式,以便它們可以在緊急情況下在道路網絡中導航,並在必要時做出危險的尋路決策。

          尋路也考慮了旅行者的年齡組。對於青少年來說,最重要的因素是金錢:他們在旅行時會尋找便宜的選擇,無論是交通工具還是停車行為。成年人重視時間,所以最快的路線通常對他們來說是最好的。老年人更喜歡高舒適度。只要舒適成本很小,老年人就傾向於選擇該選項。

          公民在做出決定時會權衡所有尋路因素,以最低的整體尋路成本為目標。

          服務車輛是根據最低的總體尋路成本訂購的,當下新訂單時,他們會考慮現在和不久的將來所有適用車輛的距離(例如:車輛在完成之前的服務訂單後最終會在哪裡)。例如,命令道路維護服務車輛修理路段。模擬檢查所有可用車輛目前的位置以及它們當前訂單的位置。如果當前較近的車輛在完成其當前服務訂單後不久正在前往附近位置的途中,則可能不會為新訂單選擇當前較近的車輛。

          隨著距離成本的增加,資源運輸受到路線長度的影響,因此公司試圖儘可能近地運輸貨物以增加自己的利潤率。將資源和貨物運出城市的成本很高,並且會大大降低公司的盈利能力。

          【城市天際線2】開發日誌#2 交通AI-第1張

          您運送資源越遠,公司的成本就越高

          車道使用情況

          在城市中:天際線II車輛使用更多的車道。他們試圖優化道路使用,以允許儘可能順暢的交通,在他們前往目的地時佔據所有可用的車道。這意味著,如果多車道道路上的一條車道上滿是等待紅綠燈的車輛,則到達十字路口的新車會選擇另一條空車道以均勻地填滿十字路口。

          在多車道道路上,當模擬注意到其他車道使用較少時,車輛可以超車較慢的車輛。車輛還會切換車道,以避免由於交通事故、交通擁堵或停下的車輛(例如救護車接病人)而完全阻塞車道。此外,車輛將儘可能通過切換到其他車道來嘗試為緊急車輛騰出空間。

          【城市天際線2】開發日誌#2 交通AI-第2張

          車輛適應道路上的交通以改善交通流量

          流量模擬、代理和性能

          《城市:天際線II》中的交通模擬很複雜。除了計算路徑外,所有車輛和行人在城市中的街道和小徑上行駛時,始終會考慮附近的所有代理。居民在行駛時多次做出影響交通流的決策,與它們的路徑查找決策分開。這些措施包括沿交通加速、制動減速、轉彎時避開迎面而來的車輛、切換車道以優化交通流量,以及在原計劃路線上發生交通事故等意外事件時做出尋路決策。

          這意味著尋路計算比《城市:天際線》中更多、更深入,因為代理具有更多影響其決策的功能。但是,計算效率更高,由於路徑查找和模擬以及其他計算利用了多核CPU的所有可用處理能力,因此全面提高了性能。

          此外,作為該系列第一款遊戲的重大改進,《城市:天際線II》沒有對在城市中移動的特工進行硬性限制。總體而言,模擬和尋路的性能大大提高,這意味著可以增加種群。模擬的唯一真正限制是運行遊戲的平臺的硬件限制。

          【城市天際線2】開發日誌#2 交通AI-第3張

          建造大城市,看著你的公民旅行工作或休閒

          環形交叉路口行為

          我們在上一個開發日記中談到了環形交叉路口,涵蓋了它們的構建方式,但這並不是唯一的改進。交通模擬還考慮了有關環形交叉路口進出的規則。進入環形交叉路口的車輛讓路給已經在環形交叉路口上的車輛讓路,但是,就像在現實生活中一樣,如果出現合適的機會,車輛可能會在已經在環形交叉路口上的另一輛車前面切入。這是居民行為的一部分,他們總是尋找合適的地點來改善交通流量,通過在最後一刻改變車道或潛入十字路口。

          【城市天際線2】開發日誌#2 交通AI-第4張

          車輛隨時準備利用開口

          交通事故

          該遊戲以交通事故為特色,車輛失去控制並撞上交通或建築物。事故發生的可能性按路段計算,並通過道路狀況、照明條件、天氣和災難等特徵增加。通過使用道路維護服務和路燈來保持道路狀況良好是降低道路事故概率的好方法。

          當路段上的事故檢查成功時,將隨機選擇該路段上的車輛以“失去控制”。車輛被推向隨機方向,獲得簡單的碰撞和物理特性,使其在途中撞到障礙物。如果車輛與另一個代理發生碰撞,它也會在事故期間獲得碰撞和物理效果。

          事故現場需要分別由警察和道路維護進行保護和清理。模擬會停止受事故影響的車道上的交通,車輛等到道路清理完畢後再繼續行駛。如果事故嚴重到足以造成嚴重傷害,救護車也可能被叫到現場。如果清理事故現場導致長時間交通擁堵,代理商可能會重新計算他們的尋路方式,從而導致“危險”行為並掉頭尋找繞過阻塞車道的替代路線。

          【城市天際線2】開發日誌#2 交通AI-第5張

          如果更多車道是空閒的,車輛將使用它們來避開事故現場

          停車

          停車是《城市:天際線II》的新功能,也是尋路的四個主要方面之一。代理商在計算尋路並決定如何前往目的地時會考慮可用的停車位。通常,代理商最舒適的選擇是能夠將車停在他們要前往的建築物的地段上。如果無法做到這一點,他們將選擇其他停車選項或不同的交通方式。缺乏停車位會導致市民更喜歡其他地方進行活動,例如選擇不同的購物或休閒地點。

          公民年齡組在旅行舒適度、時間和旅行花費的金錢方面有不同的偏好。停車以一種或另一種方式影響所有這些方面。老年人更喜歡舒適,如果目的地附近有停車位,無論潛在的停車費如何,他們很可能會選擇它們。成年人最關心時間,選擇路線最快的地方,而青少年的錢最少,所以他們選擇便宜的停車選擇,即使這意味著他們必須走更長的距離或使用其他交通工具來完成他們的旅行。

          代理商的停車選擇和尋路成本計算可能會受到為個別停車場和建築物設定的費用以及添加到地區的路邊停車費的影響。低廉或不存在的費用鼓勵所有公民群體停車,而高額停車費則有利於較富裕的公民。

          【城市天際線2】開發日誌#2 交通AI-第6張

          停車場有多種尺寸,以及多層和地下停車場結構

          信息視圖

          城市:天際線 II 具有兩個信息視圖,即交通信息視圖和道路信息視圖,以幫助密切關注交通並儘早解決問題。

          流量概述

          交通信息視圖顯示整個城市的交通流量和交通量,當交通擁堵將道路塗成紅色時,可以輕鬆快速發現道路網絡中的問題區域。交通流量表示城市中的交通流量順暢程度。較大的數字表示沒有形成堵塞,而較小的數字表示可能會出現潛在的瓶頸。最後,交通量顯示一天中不同時間有多少車輛在道路網絡上行駛。交通量大表明高峰時間。


          【城市天際線2】開發日誌#2 交通AI-第7張

          在流量和流量之間切換,以查看您的網絡如何處理流量


          道路概覽

          道路信息視圖顯示有關單條道路的更深入信息,涵蓋道路狀況以及交通流量和流量。有了這些可用的工具,可以非常精確地增強道路網絡。如果某條道路交通量很大,它很可能是一條主要道路,隨著城市的發展,您可能需要密切關注它,並將其升級為更大的道路,以緩解未來的交通擁堵。

          路況對事故概率和行駛速度產生負面影響,增加事故風險並減慢交通速度。道路維護車輛在冬季保持道路狀況良好且無雪,使交通更順暢,旅行更安全。


          【城市天際線2】開發日誌#2 交通AI-第8張

          使用道路信息視圖檢查您的道路狀況並找到您的道路維修車輛


          服務車輛

          當服務車輛收到來自建築物和路段的訂單時,它們會計算出到達目的地的合適路徑。當車輛行駛到目的地時,它們會影響行駛路徑和/或其周圍環境,例如,當垃圾車收到前往下一個目的地撿拾垃圾的命令時,它們也會沿途撿拾垃圾。同樣,道路養護車輛將在前往當前目的地時修復路段。

          緊急車輛,如警車和消防車,有額外的規則影響他們的尋路。與公民、其他服務車輛和送貨車輛相比,他們的行為“更危險”:如果縮短了他們到達目的地的路線,他們就可以進行“非法”掉頭。如果可能,其他車輛將通過在多車道道路上切換車道來為緊急車輛讓路。

          警察巡邏隊對他們的行為有額外的規則,因為如果發生搶劫或交通事故等緊急情況,他們可以推翻他們的巡邏職責(降低他們所經過區域的犯罪概率)。

          公共交通車輛在指定線路上行駛,但出租車除外,出租車可以根據類似於私家車的尋路規則自由選擇路線。最初,他們在出租車站取車費,但隨著出租車站的升級,他們可以在城市的任何地方取車費。

          服務戰車的運營可以限制在玩家創建的區域內。在這些情況下,車輛僅響應命令並響應其指定區域內的緊急情況。默認情況下,任何城市服務都可以為一個或多個地區以及整個城市提供服務。

          【城市天際線2】開發日誌#2 交通AI-第9張

          如果可能的話,其他車輛讓路,以便緊急車輛可以更快地到達目的地

          其他城市之間的交通

          該遊戲還具有其他城市之間的交通,從一個外部連接到下一個外部連接。這種交通對城市經濟沒有貢獻,但隨著城市的發展和高速公路融入城市的道路網絡,交通可以成為整體交通流量的一部分。如果玩家在兩個外部連接之間建立較短的路線,如果這些城市之間的交通在尋路方面更具成本效益,則這些城市之間的流量將更改為使用新創建的選項。

          【城市天際線2】開發日誌#2 交通AI-第10張

          您可以在到達邊緣磁貼時添加新的外部連接

          有了這個,我們發現自己處於這本發展日記的末尾。我們希望這能讓您深入瞭解《城市:天際線II》中的交通行為,並幫助您設計理想的城市。交通AI一直是《城市:天際線》中反覆出現的話題,我們期待聽到您對《城市:天際線II》中更先進、更逼真的交通模擬的反饋。下週我們將討論公共和貨物運輸的主題,以及它如何與您的城市融合。


          © 2022 3樓貓 下載APP 站點地圖 廣告合作:asmrly666@gmail.com