System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及人工智能,尤其涉及一種智能體控制方法、裝置、設備及存儲介質。
技術介紹
1、近年來,隨著游戲產業的不斷發展,基于人工智能(artificial?intelligence,ai)的游戲智能體的設計已成為游戲開發中不可或缺的一個重要環節。模擬游戲(simulation?game,slg)作為輕競爭、重養成的游戲品類,其中的智能體的目標是為玩家提供更好的游戲體驗。特別的,在slg據點爭奪等競爭場景中,智能體的目的不是戰勝人類玩家,而是在確保人類玩家有一定程度的損失下,同時讓玩家勝利,以提升玩家的游戲體驗,增加玩家黏性。
2、現有通過行為樹(behavior?tree)所訓練的智能體通過在設計時定義了固定的行為和決策邏輯,導致很難在運行時動態地修改和適應新的情境和變化的游戲狀態,并由于智能體行為的固定性加大了智能體的暴露風險。隨著行為樹的擴展和增加新節點的需求,其結構可能變得復雜、混亂、耦合,這可能導致行為樹后期維護困難且難以進一步擴展。
3、因此亟需一種智能體控制方法,使得智能體的靈活性與動態性能大幅提升,以使智能體能在如slg環境下動態的適配玩家行為采取相應的行動。
技術實現思路
1、本申請提供了一種智能體控制方法、裝置、設備及存儲介質,旨在解決現有通過行為樹(behavior?tree)所訓練的智能體通過在設計時定義了固定的行為和決策邏輯,導致很難在運行時動態地修改和適應新的情境和變化的游戲狀態,并由于智能體行為的固定性加大了智能體的暴露風險。隨著行
2、第一方面,本申請提供了一種智能體控制方法,包括:
3、獲取模擬游戲中待對局的游戲角色信息,游戲角色信息至少包括游戲角色數量和游戲角色戰力;
4、根據游戲角色數量和游戲角色戰力生成智能體數量和智能體戰力;
5、根據智能體數量和智能體戰力生成多個智能體,將生成的智能體添加至模擬游戲中,以開啟模擬游戲的對局;
6、根據智能體數量、智能體戰力、游戲角色數量和游戲角色戰力生成目標戰損率;
7、獲取模擬游戲的對局中游戲角色對應的當前戰損率;
8、若當前戰損率大于目標戰損率,控制智能體在模擬游戲的對局中投降。
9、在一些實施例中,目標戰損率包括階段戰損率和總戰損率,總戰損率大于階段戰損率;若當前戰損率大于目標戰損率,控制智能體在模擬游戲的對局中投降,包括:若當前戰損率小于階段戰損率,更新游戲角色數量、游戲角色戰力、智能體數量和智能體戰力;根據更新后的游戲角色數量、游戲角色戰力、智能體數量和智能體戰力調整智能體數量和智能體戰力,重新開始模擬游戲的對局;更新當前戰損率,直至當前戰損率大于階段戰損率;若當前戰損率大于總戰損率,控制智能體在模擬游戲的對局中投降。
10、示例性的,根據更新后的游戲角色數量、游戲角色戰力、智能體數量和智能體戰力調整智能體數量和智能體戰力,包括:根據游戲角色數量和游戲角色戰力生成游戲角色戰力值;根據智能體數量和智能體戰力生成智能體戰力值;獲取模擬游戲的當前對局輪數和期望對局輪數;根據游戲角色戰力值、智能體戰力值當前對局輪數和期望對局輪數調整智能體數量和智能體戰力,智能體數量和智能體戰力的調整對應的表達式包括:
11、
12、其中,fai,control表示調整智能體戰力值,nai,control表示調整后的智能體數量,pai,cobtrol表示調整后的智能體戰力,fai,max表示智能體戰力值,fu,max表示游戲角色戰力值,n1表示當前對局輪數,n2表示期望對局輪數。
13、示例性的,若當前戰損率小于或等于總戰損率,方法還包括:更新智能體數量、智能體戰力、游戲角色數量和游戲角色戰力;根據當前戰損率、智能體數量、智能體戰力、游戲角色數量和游戲角色戰力更新階段戰損率,重新開始模擬游戲,直至當前戰損率大于階段戰損率和總戰損率。
14、在一些實施例中,根據智能體數量、智能體戰力、游戲角色數量和游戲角色戰力生成目標戰損率,包括:獲取模擬游戲的期望對局輪數;根據智能體數量、智能體戰力、游戲角色數量和游戲角色戰力生成模擬游戲對應的單次戰損比例;根據期望對局輪數和單次戰損比例獲取目標戰損率。
15、示例性的,根據期望對局輪數和單次戰損比例獲取目標戰損率,包括:根據預設的目標戰損率計算公式、期望對局輪數和單次戰損比例計算目標戰損率;其中,目標戰損率計算公式包括:
16、
17、其中,n2表示期望對局輪數,表示單次戰損比例。
18、在一些實施例中,根據游戲角色數量和游戲角色戰力生成智能體數量和智能體戰力,包括:獲取模擬游戲對應的難度信息;根據難度信息獲取智能體對應的數量生成系數和戰力生成系數;根據游戲角色數量和數量生成系數生成智能體數量;根據戰力生成系數和游戲角色戰力生成智能體戰力。
19、第二方面,本申請還提供了一種智能體控制裝置,包括:
20、信息獲取模塊,用于獲取模擬游戲中待對局的游戲角色信息,游戲角色信息至少包括游戲角色數量和游戲角色戰力;
21、戰力生成模塊,用于根據游戲角色數量和游戲角色戰力生成智能體數量和智能體戰力;
22、智能體生成模塊,用于根據智能體數量和智能體戰力生成多個智能體,將生成的智能體添加至模擬游戲中,以開啟模擬游戲的對局;
23、目標生成模塊,用于根據智能體數量、智能體戰力、游戲角色數量和游戲角色戰力生成目標戰損率;
24、戰損獲取模塊,用于獲取模擬游戲的對局中游戲角色對應的當前戰損率;
25、控制完成模塊,用于若當前戰損率大于目標戰損率,控制智能體在模擬游戲的對局中投降。
26、第三方面,本申請還提供了一種計算機設備,包括:
27、存儲器和處理器;
28、所述存儲器用于存儲計算機程序;
29、所述處理器,用于執行所述計算機程序并在執行所述計算機程序時實現如上第一方面所述的智能體控制方法的步驟。
30、第四方面,本申請還提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序被處理器執行時使所述處理器實現如上第一方面所述的智能體控制方法的步驟。
31、所提供的方法通過在模擬游戲開始前,獲取和分析待對局游戲角色的信息。這些信息包括:游戲角色的數量。游戲角色的戰力(其實力水平、能力等)?;讷@取的游戲角色數量和戰力信息,系統生成相應數量的智能體,并為每個智能體分配合適的戰力。此步驟確保智能體的生成與當前游戲環境狀態相契合,支持后續模擬的合理性。通過將生成的多個智能體添加到模擬游戲場景中,完成智能體的初始配置。準備階段結束后,模擬游戲的對局即可展開。利用智能體和游戲角色的數量及戰力,計算并設置針對本次對局的目標戰損率。目標本文檔來自技高網...
【技術保護點】
1.一種智能體控制方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述目標戰損率包括階段戰損率和總戰損率,所述總戰損率大于所述階段戰損率;所述若所述當前戰損率大于所述目標戰損率,控制所述智能體在所述模擬游戲的對局中投降,包括:
3.根據權利要求2所述的方法,其特征在于,所述根據更新后的所述游戲角色數量、游戲角色戰力、智能體數量和智能體戰力調整所述智能體數量和智能體戰力,包括:
4.根據權利要求2所述的方法,其特征在于,若所述當前戰損率小于或等于所述總戰損率,所述方法還包括:
5.根據權利要求1所述的方法,其特征在于,所述根據所述智能體數量、智能體戰力、游戲角色數量和游戲角色戰力生成目標戰損率,包括:
6.根據權利要求5所述的方法,其特征在于,所述根據所述期望對局輪數和所述單次戰損比例獲取所述目標戰損率,包括:
7.根據權利要求1所述的方法,其特征在于,所述根據所述游戲角色數量和游戲角色戰力生成智能體數量和智能體戰力,包括:
8.一種智能體控制裝置,其特征在于,包括:
...【技術特征摘要】
1.一種智能體控制方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述目標戰損率包括階段戰損率和總戰損率,所述總戰損率大于所述階段戰損率;所述若所述當前戰損率大于所述目標戰損率,控制所述智能體在所述模擬游戲的對局中投降,包括:
3.根據權利要求2所述的方法,其特征在于,所述根據更新后的所述游戲角色數量、游戲角色戰力、智能體數量和智能體戰力調整所述智能體數量和智能體戰力,包括:
4.根據權利要求2所述的方法,其特征在于,若所述當前戰損率小于或等于所述總戰損率,所述方法還包括:
5.根據權利要求1所述的方法,其特征在于,所述根據所述智能體數量...
【專利技術屬性】
技術研發人員:陳家濤,許壯,
申請(專利權)人:超參數科技深圳有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。