91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

觀察AI如何找到出口 強化游戲體驗

ouxn_HW_Digital ? 來源:華為開發(fā)者社區(qū) ? 作者:華為開發(fā)者社區(qū) ? 2021-08-24 09:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作為一名快樂的肥宅,玩游戲是居家必備,無論是王者榮耀、吃雞、原神這些大熱游戲,還是跳一跳、合成大西瓜、2048、這些風(fēng)靡一時得小游戲,咱都有涉及。但是為了成為一個“頭號玩家”,我總是瘋狂的去個各大社區(qū)、網(wǎng)站尋找各種攻略,跟著攻略成長,我時常在想,什么時候俺才能成為一代攻略大神啊,讓大家學(xué)習(xí)我的技術(shù),豈不是很刺激!

靈光一閃,畢竟我是個有點小技術(shù)的肥宅,曾經(jīng)也癡迷過deepmind,跑過AlphaGo,這不得訓(xùn)練一個AI玩一玩。

強化學(xué)習(xí)訓(xùn)練2048游戲,

觀察AI如何找到出口?

既然要練手,那就先從2048這種簡單,不考驗操作,純策略的游戲入手吧。在網(wǎng)上搜羅了一番,果然讓我找到了開源的2048游戲環(huán)境,GitHub地址:

https://github.com/rgal/gym-2048。

下一步就是把這個算法和強化學(xué)習(xí)結(jié)合了。

算法部分很簡單,目前我才用的是最傳統(tǒng)的DQN,10分鐘就可以達到一個還可以的模型效果。如果小伙伴們有想法,可以試試RainBow,PPO,A2C,SAC這類算法,相信會獲得更佳的效果。

我開發(fā)這個模型,用的是來自華為云的ModelArts(它是一個在線、開箱即用的AI平臺,還有免費的GPU算力,每天不限次數(shù)使用,不要太爽!),所以代碼是在ipynb中跑的。

整體步驟大概可以分為3步:

1.創(chuàng)建游戲環(huán)境

2.創(chuàng)建DQN算法

def learn(self, buffer): # 當(dāng)replaybuffer中存儲的數(shù)據(jù)大于batchsize時,從中隨機采樣一個batch的數(shù)據(jù)學(xué)習(xí) if buffer.size 》=self.args.batch_size: # 更新target_model的參數(shù) if self.learn_step_counter %args.target_update_freq == 0: self.target_model.load_state_dict(self.behaviour_model.state_dict()) self.learn_step_counter += 1 # 從replaybuffer中隨機采樣一個五元組(當(dāng)前觀測值,動作,下一個觀測值,是否一局結(jié)束,獎勵值) s1, a, s2, done, r =buffer.get_sample(self.args.batch_size) s1 =torch.FloatTensor(s1).to(device) s2 = torch.FloatTensor(s2).to(device) r = torch.FloatTensor(r).to(device) a = torch.LongTensor(a).to(device) if args.use_nature_dqn: q =self.target_model(s2).detach() else: q = self.behaviour_model(s2) # 每個動作的q值=r+gamma*(1-0或1)*q_max target_q = r +torch.FloatTensor(args.gamma * (1 - done)).to(device) * q.max(1)[0] target_q =target_q.view(args.batch_size, 1) eval_q = self.behaviour_model(s1).gather(1,torch.reshape(a, shape=(a.size()[0], -1))) # 計算損失函數(shù) loss = self.criterion(eval_q,target_q) self.optimizer.zero_grad() loss.backward() self.optimizer.step() def get_action(self, state, explore=True): # 判斷是否探索,如果探索,則采用貪婪探索策略決定行為 if explore: if np.random.uniform() 》=args.epsilon: action = randint(0,self.action_dim - 1) else: # Choose the best action accordingto the network. q =self.behaviour_model(torch.FloatTensor(state).to(device)) m, index = torch.max(q, 1) action =index.data.cpu().numpy()[0] else: q = self.behaviour_model(torch.FloatTensor(state).to(device)) m, index = torch.max(q, 1) action =index.data.cpu().numpy()[0] return action classReplayBuffer: def __init__(self, buffer_size, obs_space): self.s1 = np.zeros(obs_space, dtype=np.float32) self.s2 = np.zeros(obs_space,dtype=np.float32) self.a = np.zeros(buffer_size,dtype=np.int32) self.r = np.zeros(buffer_size,dtype=np.float32) self.done = np.zeros(buffer_size,dtype=np.float32) # replaybuffer大小 self.buffer_size = buffer_size self.size = 0 self.pos = 0 # 不斷將數(shù)據(jù)存儲入buffer def add_transition(self, s1, action, s2,done, reward): self.s1[self.pos] = s1 self.a[self.pos] = action if not done: self.s2[self.pos] = s2 self.done[self.pos] = done self.r[self.pos] = reward self.pos = (self.pos + 1) %self.buffer_size self.size = min(self.size + 1,self.buffer_size) # 隨機采樣一個batchsize def get_sample(self, sample_size): i = sample(range(0, self.size), sample_size) return self.s1[i], self.a[i],self.s2[i], self.done[i], self.r[i]

3.創(chuàng)建網(wǎng)絡(luò)模型

此處我用的就是一個非常簡單的三層卷積網(wǎng)絡(luò)

classNet(nn.Module): #obs是狀態(tài)空間輸入,available_actions_count為動作輸出維度 def __init__(self, obs,available_actions_count): super(Net, self).__init__() self.conv1 = nn.Conv2d(obs, 128,kernel_size=2, stride=1) self.conv2 = nn.Conv2d(128, 64,kernel_size=2, stride=1) self.conv3 = nn.Conv2d(64, 16,kernel_size=2, stride=1) self.fc1 = nn.Linear(16,available_actions_count) self.relu = nn.ReLU(inplace=True) def forward(self, x): x = x.permute(0, 3, 1, 2) x = self.relu(self.conv1(x)) x = self.relu(self.conv2(x)) x = self.relu(self.conv3(x)) x = self.fc1(x.view(x.shape[0], -1)) return x

完成以上三步,就可以愉快的開始訓(xùn)練啦:

print(‘

training.。。’)begin_t= time.time()max_reward= 0fori_episode in range(args.epochs): # 每局開始,重置環(huán)境 s = env.reset() # 累計獎勵值 ep_r = 0 while True: # 計算動作 a = dqn.get_action(np.expand_dims(s,axis=0)) # 執(zhí)行動作 s_, r, done, info = env.step(a) # 存儲信息 memory.add_transition(s, a, s_, done,r) ep_r += r # 學(xué)習(xí)優(yōu)化過程 dqn.learn(memory) if done: print(‘Ep: ’, i_episode, ‘| Ep_r: ’, round(ep_r, 2)) if ep_r 》 max_reward: max_reward = ep_r print(“current_max_reward{}”.format(max_reward)) # 保存模型 torch.save(dqn.behaviour_model,“2048.pt”) break s = s_print(“finish!time cost is {}s”.format(time.time() - begin_t))

我只訓(xùn)練了10分鐘,在這個不能錯步的嚴格環(huán)境下,推理時可以達到256分,如果采用更先進算法,更長的訓(xùn)練時間,2048不是夢。

詳細代碼獲取方式:

通過此鏈接可直接在線運行,或者下載

https://marketplace.huaweicloud.com/markets/aihub/notebook/detail/?id=3a11d09b-85f5-4ae4-b4a7-9b19be2b444d

這個技術(shù)來源是我在去年華為云AI全棧成長計劃中接觸到的,據(jù)說今年華為云又開始了新一輪【AI實戰(zhàn)營】,6大分類實戰(zhàn)營Python、ModelArts、MindSpore AI框架、深度、強化、機器學(xué)習(xí),助我們成為“AI王者”!

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • AI
    AI
    +關(guān)注

    關(guān)注

    88

    文章

    35093

    瀏覽量

    279529
  • 強化學(xué)習(xí)
    +關(guān)注

    關(guān)注

    4

    文章

    269

    瀏覽量

    11597
  • 華為云
    +關(guān)注

    關(guān)注

    3

    文章

    2770

    瀏覽量

    18301

原文標題:游戲“外掛”?- AI生成游戲最強攻略

文章出處:【微信號:HW-DigitalHome,微信公眾號:華為數(shù)字家庭】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    大家都在用什么AI軟件?有沒有好用的免費的AI軟件推薦一下?

    大家都在用什么AI軟件?有沒有好用的免費的AI軟件推薦一下?直接發(fā)個安裝包,謝謝。比如deepseek、Chatgpt、豆包、阿里AI、百度AI、騰訊
    發(fā)表于 07-09 18:30

    技嘉正式推出 RTX? 5060 Ti 和 5060 顯卡,先進散熱方案提升游戲AI 體驗

    ? 5060 系列顯卡,并將于 4 月 16 日起陸續(xù)上市。此系列產(chǎn)品專為主流游戲玩家、創(chuàng)作者與 AI 入門使用者設(shè)計,通過升級版 WINDFORCE 散熱系統(tǒng),在性能與散熱效率間達到絕衡,帶來更流暢
    的頭像 發(fā)表于 04-16 10:07 ?390次閱讀

    韓國半導(dǎo)體對華出口暴跌 信息通信產(chǎn)業(yè)出口額減少31.8%

    據(jù)外媒《朝鮮日報》報道稱,在2025年2月份韓國信息通信產(chǎn)業(yè)出口額創(chuàng)下了歷年同月第二高的好成績;出口額達到167.1億美元,同比增長了1.2%。但是對我國的出口減少31.8%。 而韓國對越南
    的頭像 發(fā)表于 03-18 15:26 ?589次閱讀

    AI Agent 應(yīng)用與項目實戰(zhàn)》----- 學(xué)習(xí)如何開發(fā)視頻應(yīng)用

    上傳與視頻生成相關(guān)的知識庫文檔,以便AI助手能夠基于這些知識進行回答和生成視頻。 在AI助手的配置中,找到與視頻生成相關(guān)的功能模塊。 根據(jù)需要選擇或上傳視頻生成模型,這些模型可以是語聚AI
    發(fā)表于 03-05 19:52

    拜登擬在卸任前加強AI芯片出口管制

    拜登政府計劃在離任之際宣布對中國實施最廣泛的人工智能(AI)芯片出口管制,引發(fā)美國科技行業(yè)的廣泛批評。代表美國科技行業(yè)的貿(mào)易協(xié)會——美國信息技術(shù)產(chǎn)業(yè)理事會(ITI)7日敦促拜登政府不要在卸任前最后
    的頭像 發(fā)表于 01-09 17:27 ?427次閱讀

    韓國半導(dǎo)體出口動態(tài):2024年對華出口下滑,對臺越出口增長

    近日,最新發(fā)布的產(chǎn)業(yè)數(shù)據(jù)揭示了韓國半導(dǎo)體出口在2024年的新趨勢。據(jù)韓國產(chǎn)業(yè)通商資源部于1月5日公布的官方數(shù)據(jù)顯示,盡管整體半導(dǎo)體出口額實現(xiàn)了顯著增長,但出口市場的分布卻發(fā)生了顯著變化。 數(shù)據(jù)顯示
    的頭像 發(fā)表于 01-07 14:32 ?808次閱讀

    巨人網(wǎng)絡(luò)發(fā)布“千影”大模型,加速“游戲+AI”布局

    近日,巨人網(wǎng)絡(luò)在2024年度中國游戲產(chǎn)業(yè)年會上,正式推出了名為“千影?QianYing”的有聲游戲生成大模型。這一創(chuàng)新舉措標志著巨人網(wǎng)絡(luò)在“游戲+AI”賽道上的又一重要布局。 “千影
    的頭像 發(fā)表于 12-16 09:45 ?1538次閱讀

    如何使用 PyTorch 進行強化學(xué)習(xí)

    的計算圖和自動微分功能,非常適合實現(xiàn)復(fù)雜的強化學(xué)習(xí)算法。 1. 環(huán)境(Environment) 在強化學(xué)習(xí)中,環(huán)境是一個抽象的概念,它定義了智能體(agent)可以執(zhí)行的動作(actions)、觀察
    的頭像 發(fā)表于 11-05 17:34 ?1037次閱讀

    谷歌發(fā)布革命性AI游戲引擎GameNGen

    谷歌近期震撼推出全球首款完全由人工智能驅(qū)動的游戲引擎——GameNGen,這一創(chuàng)新技術(shù)標志著游戲開發(fā)領(lǐng)域的新紀元。GameNGen憑借其強大的計算能力,能夠在單個TPU上實現(xiàn)每秒20幀的實時游戲生成,每一幀畫面均源自精密的擴散模
    的頭像 發(fā)表于 08-29 18:07 ?1133次閱讀

    谷歌研究人員推出革命性首個AI驅(qū)動游戲引擎

    在科技日新月異的今天,人工智能(AI)正以前所未有的速度滲透到我們生活的每一個角落,從自動駕駛汽車到智能家居,無一不彰顯著其巨大的潛力和無限可能。而最近,谷歌研究團隊的一項突破性成果更是將AI的邊界
    的頭像 發(fā)表于 08-29 17:21 ?828次閱讀

    英偉達首推AI NPC,革新游戲體驗

    英偉達在游戲界再次引領(lǐng)創(chuàng)新潮流,宣布其首個基于AI技術(shù)的NPC(非玩家角色)正式入駐游戲。在一段令人矚目的demo中,玩家通過語音對話與NPC無縫交流,不僅獲取了詳盡的關(guān)卡指引,還能根據(jù)建議優(yōu)化裝備配置,甚至實時調(diào)整武器外觀,隨
    的頭像 發(fā)表于 08-23 15:57 ?635次閱讀

    技嘉 AORUS 前進 Gamescom 2024帶來 AI 游戲新體驗

    發(fā)行的游戲大作,并在游戲挑戰(zhàn)中競逐好禮。 AORUS 于現(xiàn)場展示新款的 AI PC,包括搭載 Intel? Core? 第14代 HX 系列筆記本電腦處理器和 NVIDI
    的頭像 發(fā)表于 08-09 16:08 ?516次閱讀

    AMD 2024 ChinaJoy圓滿收官 AI+游戲 為熱愛全力以赴

    2024年7月26日~29日,AMD在上海成功舉辦了主題為 「 AI+ 游戲,為熱愛全力以赴!」 的AMD 2024 ChinaJoy。AMD攜手眾多合作伙伴為粉絲、硬件和游戲愛好者們帶來了最新的銳
    的頭像 發(fā)表于 08-05 15:21 ?892次閱讀

    微軟攜手Lumen Technologies擴容并強化AI網(wǎng)絡(luò)能力合作

    微軟在7月25日宣布了一項重大舉措,旨在通過深化其Copilot等生成式AI服務(wù)在企業(yè)、組織、教育及普通消費者領(lǐng)域的布局,來滿足日益增長的對AI算力及網(wǎng)絡(luò)能力的需求。為實現(xiàn)這一目標,微軟攜手網(wǎng)絡(luò)系統(tǒng)領(lǐng)域的領(lǐng)先企業(yè)Lumen Technologies,共同開啟了一段旨在擴容
    的頭像 發(fā)表于 07-25 14:39 ?965次閱讀
    主站蜘蛛池模板: 一区二区三区久久 | 经典三级一区在线播放 | 日韩一级片在线播放 | 黄色录像三级 | 天天综合色天天综合网 | 国产色婷婷精品免费视频 | 国片一级 免费看 | bt天堂在线最新版在线 | 最近观看免费高清视频 | 久久国产精品无码网站 | 嫩草影院入口一二三免费 | 日本三级理论 | 三级全黄a| 天天色综合2 | 一级片在线观看视频 | 日本福利网址 | 色激情网| 天天干天天草天天 | 国产三级日本三级日产三 | 爱搞逼综合 | 黄网站视频 | 农村妇女色又黄一级毛片卡 | 午夜一级毛片看看 | 天天射天天射 | 国产小视频在线高清播放 | china国语对白刺激videos chinese国产videoxx实拍 | 女同性大尺度床戏视频 | 欧美激情片网站 | 天天爆操| 一级毛片视屏 | 成人小视频在线 | 欧美日韩不卡码一区二区三区 | 色月丁香 | 一区| 久久本道综合色狠狠五月 | 国产精品久久福利网站 | 亚洲综合激情九月婷婷 | 激情网婷婷 | 色吧在线视频在线观看 | 精品乱人伦一区二区三区 | 啪啪免费视频 |