免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

SR-Platform:用自然語言指令自動構(gòu)建機器人仿真環(huán)境的技術(shù)解析與實踐

SR-Platform:用自然語言指令自動構(gòu)建機器人仿真環(huán)境的技術(shù)解析與實踐 1. 項目概述當(dāng)自然語言指令遇上機器人仿真環(huán)境構(gòu)建最近在機器人仿真領(lǐng)域一個名為“SR-Platform”的項目引起了我的注意。它的核心目標非常吸引人讓開發(fā)者或研究者能夠直接用自然語言描述比如“創(chuàng)建一個有紅色機械臂和藍色立方體的桌面場景”系統(tǒng)就能自動生成對應(yīng)的、可運行的機器人仿真環(huán)境。這聽起來像是科幻電影里的場景但SR-Platform正試圖通過一個“Agentic Pipeline”智能體流水線將其變?yōu)楝F(xiàn)實。簡單來說它想成為機器人仿真領(lǐng)域的“Copilot”將人類模糊的意圖轉(zhuǎn)化為精確的、可執(zhí)行的物理仿真世界。這個想法背后直指當(dāng)前機器人仿真開發(fā)中的一個核心痛點環(huán)境構(gòu)建的門檻。無論是使用MuJoCo、PyBullet還是Isaac Sim創(chuàng)建一個哪怕是最基礎(chǔ)的仿真場景都需要開發(fā)者具備多方面的知識物理引擎的API、三維建模基礎(chǔ)、機器人URDF/SDF模型的理解、場景XML或MJCF文件的編寫以及Python等腳本語言的編程能力。這個過程不僅繁瑣、耗時而且極易出錯一個參數(shù)設(shè)置不當(dāng)就可能導(dǎo)致仿真崩潰或得到不符合物理規(guī)律的結(jié)果。SR-Platform的愿景正是要抽象掉這層復(fù)雜性讓用戶專注于任務(wù)邏輯和算法設(shè)計而不是環(huán)境搭建的細枝末節(jié)。從網(wǎng)絡(luò)上的討論熱度來看大家對這個方向的興趣是實實在在的。圍繞“MuJoCo”這個關(guān)鍵詞搜索最多的問題幾乎全是關(guān)于安裝、配置和基礎(chǔ)使用的“windows11 安裝mujoco”、“python安裝mujoco無法安裝”、“mujoco教程”、“安裝mujoco常見問題”。這充分說明大量有志于機器人學(xué)習(xí)、強化學(xué)習(xí)的研究者和工程師在第一道門檻——環(huán)境搭建上就遇到了巨大阻力。SR-Platform如果能夠成熟將極大地降低這個領(lǐng)域的入門和實驗成本加速從想法到驗證的迭代周期。2. 核心架構(gòu)拆解“智能體流水線”如何工作SR-Platform的標題中“Agentic Pipeline”是理解其技術(shù)路線的關(guān)鍵。這里的“Agentic”并非指一個單一的、全能的智能體而更像是一個由多個各司其職的“智能體”或稱為模塊、服務(wù)組成的自動化流水線。每個智能體負責(zé)將上一階段的輸出轉(zhuǎn)化為更接近最終目標的、結(jié)構(gòu)化的中間表示。這種設(shè)計思路借鑒了軟件工程中的微服務(wù)架構(gòu)和AI領(lǐng)域的智能體Agent協(xié)作思想旨在通過分工與協(xié)作完成從自然語言到仿真代碼的復(fù)雜轉(zhuǎn)換。一個典型的SR-Platform流水線可能包含以下幾個核心智能體2.1 語義解析與場景理解智能體這是流水線的第一站。它的任務(wù)是理解用戶輸入的、可能非常口語化的自然語言指令。例如用戶輸入“在MuJoCo里建一個場景要有一個七自由度的Franka機械臂機械臂前面放一張木紋桌子桌子上有一個綠色的球機械臂的任務(wù)是把球推到桌子邊緣?!边@個智能體需要完成實體識別識別出指令中的關(guān)鍵實體如“Franka機械臂”機器人模型、“木紋桌子”、“綠色的球”場景物體。屬性提取提取實體的屬性如機械臂的“七自由度”、球的顏色“綠色”、桌子的材質(zhì)“木紋”。關(guān)系與約束解析理解實體間的關(guān)系和空間約束如“機械臂前面放一張桌子”、“球在桌子上”、“把球推到桌子邊緣”這隱含了任務(wù)目標。意圖映射將上述解析結(jié)果映射到一個結(jié)構(gòu)化的場景描述框架中。這個框架可能是一種自定義的JSON或YAML格式它定義了場景的拓撲結(jié)構(gòu)、物體的初始位姿、物理屬性質(zhì)量、摩擦系數(shù)等以及潛在的任務(wù)目標。這個智能體很可能基于大型語言模型LLM構(gòu)建利用其強大的上下文理解和信息抽取能力。但難點在于如何讓LLM的輸出高度結(jié)構(gòu)化且符合仿真引擎的語義這需要精心設(shè)計提示詞Prompt和可能的后處理規(guī)則。2.2 資源檢索與模型適配智能體解析出場景描述后下一步是找到或創(chuàng)建對應(yīng)的三維模型和機器人模型。這個智能體負責(zé)模型庫查詢根據(jù)解析出的實體名稱如“Franka Panda”在一個預(yù)置的模型資產(chǎn)庫中進行檢索。這個庫可能包含常見的機器人URDF文件、基礎(chǔ)幾何體立方體、球體、圓柱體以及各種日常物體的MJCF或SDF描述。參數(shù)化生成對于某些簡單物體如“綠色的球”如果庫中沒有完全匹配的該智能體可以調(diào)用參數(shù)化生成工具根據(jù)屬性顏色、尺寸動態(tài)創(chuàng)建對應(yīng)的MJCF XML代碼片段。模型適配與驗證檢索到的模型可能不完全兼容。例如一個從ROS社區(qū)下載的URDF模型可能需要被轉(zhuǎn)換成MuJoCo的MJCF格式并確保其關(guān)節(jié)類型、慣性參數(shù)等設(shè)置合理。這個智能體需要集成或調(diào)用格式轉(zhuǎn)換工具并對轉(zhuǎn)換后的模型進行基礎(chǔ)驗證如檢查質(zhì)量是否為正數(shù)關(guān)節(jié)限位是否合理。2.3 場景組裝與物理參數(shù)化智能體這是將“零件”組裝成“機器”的關(guān)鍵環(huán)節(jié)。該智能體接收結(jié)構(gòu)化的場景描述和對應(yīng)的模型資產(chǎn)負責(zé)空間布局計算根據(jù)描述中的空間關(guān)系如“前面”、“上面”計算每個物體的初始位置和姿態(tài)。這可能需要一個簡單的空間推理模塊或者利用LLM進行坐標估算再通過碰撞檢測進行微調(diào)。MJCF/XML文件合成按照MuJoCo MJCF文件的語法將世界體、光線、地面、以及所有檢索/生成的模型機器人、桌子、球的XML代碼片段組裝成一個完整的、語法正確的.xml或.mjcf文件。這包括正確設(shè)置worldbody中的body層級關(guān)系、joint、geom等元素。物理屬性注入為物體賦予合理的物理屬性。這是最具挑戰(zhàn)性的部分之一。用戶的自然語言描述很少會指定“球的彈性系數(shù)是0.8”或“桌面的滑動摩擦是0.6”。該智能體需要基于常識或經(jīng)驗數(shù)據(jù)庫為物體分配默認的、合理的物理參數(shù)。例如金屬物體密度大、摩擦系數(shù)中等木制物體密度中等、摩擦系數(shù)較高塑料物體密度小、彈性可能較好。2.4 任務(wù)腳本生成與接口封裝智能體環(huán)境搭建好了但仿真需要“動起來”。這個智能體負責(zé)生成與仿真環(huán)境交互的Python腳本框架。API代碼生成根據(jù)場景中存在的機器人模型自動生成初始化MuJoCo模型、創(chuàng)建模擬器、獲取關(guān)節(jié)和執(zhí)行器索引、讀取傳感器數(shù)據(jù)等樣板代碼。任務(wù)骨架生成如果用戶指令中包含任務(wù)描述如“把球推到桌子邊緣”該智能體可以生成一個對應(yīng)的任務(wù)函數(shù)骨架。例如定義一個push_ball_to_edge()函數(shù)其中包含獲取球和桌子位置、計算機械臂末端所需軌跡等注釋和占位符引導(dǎo)用戶實現(xiàn)具體控制算法。標準化接口封裝為了便于與主流強化學(xué)習(xí)庫如Stable-Baselines3, RLlib集成該智能體可能會將生成的仿真環(huán)境包裝成類似Gym或Gymnasium的API格式即提供reset(),step(action),observation_space,action_space等標準方法和屬性。整個流水線像一條自動化生產(chǎn)線自然語言指令是原材料經(jīng)過多個智能體工站的加工最終產(chǎn)出可直接運行的仿真環(huán)境代碼和任務(wù)腳本。這種設(shè)計的優(yōu)勢在于模塊化每個智能體可以獨立優(yōu)化和升級。3. 關(guān)鍵技術(shù)挑戰(zhàn)與潛在解決方案將SR-Platform從概念變?yōu)閷嵱霉ぞ呙媾R著諸多嚴峻的技術(shù)挑戰(zhàn)。這些挑戰(zhàn)也正是該項目需要攻克的核心技術(shù)點。3.1 自然語言歧義性與空間關(guān)系的精確映射自然語言天生具有模糊性?!皺C械臂前面放一張桌子”——這個“前面”是相對于機械臂基座坐標系的前方還是末端執(zhí)行器的朝向距離是多少同樣“把球推到桌子邊緣”是推到任意邊緣還是特定的某一邊這種歧義性會導(dǎo)致生成的環(huán)境與用戶預(yù)期不符??赡艿慕鉀Q方案交互式澄清流水線可以設(shè)計一個“澄清智能體”。當(dāng)解析到模糊指令時自動生成幾個最可能的解釋選項以交互式問答的方式請求用戶確認。例如“您說的‘前面’是指機械臂基座坐標系X軸正方向1米處嗎”常識知識庫建立一個包含常見物體尺寸、典型布局的常識數(shù)據(jù)庫。當(dāng)用戶說“桌子”時默認使用一個長寬高為1.5m x 0.8m x 0.75m的模型說“前面”時默認距離為0.5米。這能處理大多數(shù)簡單場景。參考系與相對描述在用戶輸入界面引導(dǎo)用戶使用更精確的描述例如支持“以機械臂基座為原點在(0.5, 0, 0)位置放置一個立方體”這樣的半結(jié)構(gòu)化輸入作為補充。3.2 物理仿真的真實性與參數(shù)化難題這是最核心的挑戰(zhàn)之一。仿真環(huán)境的真實性直接決定了在其上訓(xùn)練的算法能否遷移到現(xiàn)實世界。SR-Platform自動分配的物理參數(shù)質(zhì)量、摩擦、彈性很可能不準確導(dǎo)致仿真出現(xiàn)“滑冰”摩擦太小或“蹦床”彈性太大等不真實現(xiàn)象。可能的解決方案分層參數(shù)數(shù)據(jù)庫構(gòu)建一個分層的物理參數(shù)庫。第一層是“材料庫”定義鋼、木、橡膠等常見材料的密度、摩擦、彈性范圍。第二層是“物體庫”將常見物體如“馬克杯”、“籃球”映射到材料組合和典型尺寸。當(dāng)用戶指定“木桌”、“橡膠球”時系統(tǒng)從庫中調(diào)用對應(yīng)參數(shù)。可調(diào)參數(shù)與敏感性標注在生成的MJCF文件中將影響任務(wù)的關(guān)鍵物理參數(shù)如滑動摩擦、阻尼設(shè)置為可通過外部配置文件輕松調(diào)整的變量并添加注釋說明該參數(shù)對任務(wù)可能的影響。同時系統(tǒng)可以標注出哪些參數(shù)是基于估計的建議用戶根據(jù)實際情況校準。集成系統(tǒng)辨識工具在高級版本中可以嘗試集成簡單的系統(tǒng)辨識流程。例如生成一個讓球自由落體或滑動的測試場景通過對比仿真與簡單物理公式的結(jié)果反向微調(diào)重力、摩擦等全局參數(shù)。3.3 復(fù)雜任務(wù)指令的分解與代碼生成用戶指令可能非常復(fù)雜例如“讓機械臂拿起桌上的筆然后在紙板上寫字”。這涉及一系列子任務(wù)識別筆、規(guī)劃抓取軌跡、控制手爪閉合、移動至紙板、執(zhí)行書寫動作。讓流水線直接生成完整的控制代碼幾乎不可能??赡艿慕鉀Q方案任務(wù)分解與技能庫映射流水線中的任務(wù)生成智能體需要將復(fù)雜任務(wù)分解為已知的“技能原語”Primitive如move_to(position),grasp(object),place(object)。系統(tǒng)維護一個技能原語庫并為每個原語提供默認的、簡單的實現(xiàn)如基于位置的控制。復(fù)雜任務(wù)被分解為這些原語的序列。生成任務(wù)規(guī)劃注釋而非完整代碼對于超出現(xiàn)有能力范圍的復(fù)雜任務(wù)智能體可以生成高度注釋化的任務(wù)規(guī)劃骨架。它會在代碼中用注釋清晰地標出任務(wù)分解步驟、所需的感知信息如“此處需要調(diào)用視覺API獲取筆的位置”、以及每個步驟建議調(diào)用的控制函數(shù)將具體算法的實現(xiàn)留給用戶。與高層任務(wù)規(guī)劃器結(jié)合將SR-Platform定位為“環(huán)境構(gòu)建器”而將復(fù)雜任務(wù)規(guī)劃交給專門的、基于LLM的任務(wù)規(guī)劃器。兩者通過標準接口如場景描述文件、技能原語列表進行協(xié)作。3.4 資產(chǎn)庫的構(gòu)建、管理與擴展一個豐富、高質(zhì)量、易檢索的模型資產(chǎn)庫是SR-Platform的基石。這個庫需要包含機器人、日常物體、家具、工具等各種模型且格式統(tǒng)一最好是MJCF物理屬性經(jīng)過初步校準??赡艿慕鉀Q方案社區(qū)共建與開源集成初期可以集成現(xiàn)有的開源模型庫如MuJoCo官方模型、RoboSuite資產(chǎn)、以及各大機器人研究機構(gòu)開源的URDF模型。建立一套自動化的格式轉(zhuǎn)換和質(zhì)量檢查流水線將外部模型“馴化”為內(nèi)部可用資產(chǎn)。參數(shù)化物體生成器對于簡單幾何體和一些常見結(jié)構(gòu)不同尺寸的柜子、架子開發(fā)參數(shù)化生成工具允許用戶通過調(diào)整幾個參數(shù)長、寬、高、孔洞數(shù)量來創(chuàng)建新物體并自動生成合理的物理屬性。從仿真到資產(chǎn)的閉環(huán)允許用戶在SR-Platform生成的基礎(chǔ)環(huán)境上進行修改和調(diào)優(yōu)例如手動調(diào)整了某個盒子的尺寸和摩擦系數(shù)并提供一個“保存為資產(chǎn)”的功能將用戶調(diào)校好的物體反向存入個人或共享資產(chǎn)庫實現(xiàn)庫的持續(xù)增長。4. 從概念到實操基于現(xiàn)有工具的探索路徑雖然完整的SR-Platform可能還在研發(fā)中但我們可以基于現(xiàn)有的開源工具鏈手動搭建一個簡化版的“自然語言驅(qū)動仿真生成”工作流親身體驗其核心環(huán)節(jié)。這個過程能幫助我們更深刻地理解SR-Platform需要解決的具體問題。4.1 環(huán)境準備MuJoCo與Python生態(tài)搭建這是所有工作的基礎(chǔ)也是網(wǎng)絡(luò)搜索中問題最多的環(huán)節(jié)。我們以在Linux/macOS系統(tǒng)下搭建一個穩(wěn)定的環(huán)境為例。步驟1安裝MuJoCo不再推薦從官網(wǎng)下載獨立安裝包。最穩(wěn)定、最推薦的方式是通過mujoco這個Python包來安裝它會自動處理二進制文件和許可證。# 創(chuàng)建并激活一個干凈的Python虛擬環(huán)境強烈建議 python -m venv sr-platform-env source sr-platform-env/bin/activate # Linux/macOS # sr-platform-env\Scripts\activate # Windows # 升級pip pip install --upgrade pip # 安裝mujoco包它會自動安裝對應(yīng)版本的MuJoCo本體 pip install mujoco # 驗證安裝 python -c import mujoco; print(mujoco.__version__)如果這一步成功說明MuJoCo核心庫已就位。網(wǎng)絡(luò)上常見的“無法安裝”問題多源于老教程中手動下載mjpro或mujoco210二進制文件、設(shè)置環(huán)境變量LD_LIBRARY_PATH或MUJOCO_PY的復(fù)雜流程。新的mujoco包已極大簡化了這一過程。步驟2安裝必要的輔助庫我們需要一些庫來處理3D、物理以及最重要的——與LLM交互。# 安裝PyMuJoCo這是官方的Python封裝API更現(xiàn)代 pip install mujoco # 安裝用于渲染和交互查看的庫 pip install glfw mujoco[gl] # 安裝OpenAI Gymnasium原Gym的維護分支作為環(huán)境接口標準可選但推薦 pip install gymnasium # 安裝用于可能進行模型格式轉(zhuǎn)換的庫如URDF轉(zhuǎn)MJCF # 注意這是一個活躍但可能不完美的領(lǐng)域以下是一些選項 # pip install yourdfpy # 用于加載和簡單處理URDF # 或者使用 mujoco 自帶的 urdf 加載功能在開發(fā)中 # 安裝OpenAI的Python SDK用于調(diào)用GPT等模型進行語義解析 pip install openai4.2 構(gòu)建核心流水線模塊簡化版我們將用Python腳本模擬SR-Platform流水線中的幾個關(guān)鍵智能體。模塊1基于LLM的語義解析器 (nlp_parser.py)這個模塊使用大語言模型如GPT-4將自然語言指令轉(zhuǎn)換為結(jié)構(gòu)化的JSON。import openai import json import os class SceneParser: def __init__(self, api_key): openai.api_key api_key # 定義我們希望LLM輸出的結(jié)構(gòu)化格式 self.scene_schema { type: object, properties: { robots: { type: array, items: { type: object, properties: { name: {type: string}, type: {type: string}, position: {type: array, items: {type: number}, minItems: 3, maxItems: 3} } } }, objects: { type: array, items: { type: object, properties: { name: {type: string}, shape: {type: string, enum: [box, sphere, cylinder]}, color: {type: string}, size: {type: array, items: {type: number}}, position: {type: array, items: {type: number}, minItems: 3, maxItems: 3} } } }, task: {type: string} } } def parse_instruction(self, instruction): prompt f 請將以下關(guān)于機器人仿真場景的自然語言描述解析為結(jié)構(gòu)化的JSON數(shù)據(jù)。 描述{instruction} 要求 1. 識別出場景中的機器人指定其名稱、類型和初始位置[x, y, z]。位置是估算值單位是米。 2. 識別出場景中的物體指定其名稱、形狀(box/sphere/cylinder)、顏色、尺寸(對于box是[長,寬,高]對于sphere是[半徑]對于cylinder是[半徑,高度])和初始位置。 3. 提取任務(wù)描述。 請只輸出JSON不要有其他任何解釋。 JSON結(jié)構(gòu)必須嚴格遵循{json.dumps(self.scene_schema, indent2)} try: response openai.ChatCompletion.create( modelgpt-4, # 或 gpt-3.5-turbo messages[{role: user, content: prompt}], temperature0.1 # 低溫度保證輸出結(jié)構(gòu)化 ) result response.choices[0].message.content # 清理響應(yīng)提取JSON部分 json_start result.find({) json_end result.rfind(}) 1 if json_start ! -1 and json_end ! 0: json_str result[json_start:json_end] scene_data json.loads(json_str) return scene_data else: raise ValueError(未能從LLM響應(yīng)中提取有效JSON) except Exception as e: print(f解析指令時出錯{e}) return None # 使用示例 if __name__ __main__: parser SceneParser(api_keyos.getenv(OPENAI_API_KEY)) instruction 創(chuàng)建一個場景中央有一個紅色的Franka機械臂其前方0.5米處有一張棕色的桌子桌子上有一個藍色的球體。機械臂的任務(wù)是觸摸這個球。 scene parser.parse_instruction(instruction) print(json.dumps(scene, indent2))這個解析器利用了LLM的指令跟隨和結(jié)構(gòu)化輸出能力。關(guān)鍵在于設(shè)計一個清晰、完整的JSON Schema來約束LLM的輸出格式。在實際應(yīng)用中Schema需要定義得更加詳盡以覆蓋更多屬性如關(guān)節(jié)類型、材質(zhì)、物理參數(shù)等。模塊2MJCF場景組裝器 (scene_builder.py)這個模塊將結(jié)構(gòu)化的場景描述轉(zhuǎn)換為MuJoCo的MJCF XML字符串。import xml.etree.ElementTree as ET from xml.dom import minidom class MJCFBuilder: def __init__(self): self.root ET.Element(mujoco, modelauto_generated_scene) # 添加編譯器選項 compiler ET.SubElement(self.root, compiler, angleradian, inertiafromgeomtrue) # 添加默認的視覺和物理選項 option ET.SubElement(self.root, option, timestep0.01, gravity0 0 -9.81) # 添加世界體 self.worldbody ET.SubElement(self.root, worldbody) # 添加地面 ET.SubElement(self.worldbody, geom, nameground, typeplane, size10 10 0.1, rgba0.8 0.9 0.8 1) # 添加光源 ET.SubElement(self.worldbody, light, nametop, pos0 0 4, dir0 0 -1) self.asset ET.SubElement(self.root, asset) # 可以在這里預(yù)定義一些材質(zhì)和紋理 ET.SubElement(self.asset, material, namedefault, rgba0.7 0.7 0.7 1) def _add_robot(self, robot_info): # 這是一個簡化示例。實際中這里需要根據(jù)robot_info[type]從資產(chǎn)庫加載對應(yīng)的MJCF/URDF片段。 # 我們這里用一個簡單的固定基座機械臂模型代替。 if robot_info[type].lower() franka: # 假設(shè)Franka機器人的MJCF模型字符串簡化版僅示意 franka_xml body namefranka_base pos0 0 0 geom typebox size0.2 0.2 0.1 rgba0.5 0.5 0.5 1/ body namelink1 pos0 0 0.2 joint namejoint1 typehinge axis0 0 1 range-180 180/ geom typecylinder size0.05 0.2 rgba1 0 0 1/ body namelink2 pos0 0 0.4 joint namejoint2 typehinge axis0 1 0 range-90 90/ geom typecylinder size0.04 0.15 rgba0 1 0 1/ /body /body /body robot_root ET.fromstring(franka_xml) # 設(shè)置機器人基座位置 pos_str .join(map(str, robot_info.get(position, [0, 0, 0]))) robot_root.set(pos, pos_str) self.worldbody.append(robot_root) else: print(f警告未知機器人類型 {robot_info[type]}已跳過。) def _add_object(self, obj_info): name obj_info[name] shape obj_info[shape] color obj_info.get(color, 0.5 0.5 0.8) pos obj_info.get(position, [0, 0, 0.5]) pos_str .join(map(str, pos)) size obj_info.get(size, [0.05, 0.05, 0.05]) # 將顏色名稱轉(zhuǎn)換為RGBA值簡化處理 color_map { red: 1 0 0 1, blue: 0 0 1 1, green: 0 1 0 1, brown: 0.6 0.4 0.2 1, } rgba color_map.get(color.lower(), 0.7 0.7 0.7 1) body_elem ET.SubElement(self.worldbody, body, namename, pospos_str) if shape box: size_str .join(map(str, size)) ET.SubElement(body_elem, geom, typebox, sizesize_str, rgbargba) elif shape sphere: radius size[0] if isinstance(size, list) else size ET.SubElement(body_elem, geom, typesphere, sizestr(radius), rgbargba) elif shape cylinder: radius size[0] height size[1] if len(size) 1 else 0.1 ET.SubElement(body_elem, geom, typecylinder, sizef{radius} {height}, rgbargba) # 為物體添加自由關(guān)節(jié)使其可以自由運動 ET.SubElement(body_elem, joint, namef{name}_joint, typefree) def build_from_scene_data(self, scene_data): # 添加機器人 for robot in scene_data.get(robots, []): self._add_robot(robot) # 添加物體 for obj in scene_data.get(objects, []): self._add_object(obj) def get_xml_string(self): # 美化輸出XML rough_string ET.tostring(self.root, utf-8) reparsed minidom.parseString(rough_string) return reparsed.toprettyxml(indent ) def save_to_file(self, filename): xml_str self.get_xml_string() with open(filename, w) as f: f.write(xml_str) # 使用示例 if __name__ __main__: # 假設(shè)這是從語義解析器得到的場景數(shù)據(jù) sample_scene { robots: [ {name: franka, type: Franka, position: [0, 0, 0]} ], objects: [ {name: table, shape: box, color: brown, size: [0.8, 0.8, 0.05], position: [0.7, 0, 0.4]}, {name: ball, shape: sphere, color: blue, size: [0.05], position: [0.7, 0, 0.5]} ], task: Touch the blue ball. } builder MJCFBuilder() builder.build_from_scene_data(sample_scene) builder.save_to_file(generated_scene.xml) print(MJCF文件已生成generated_scene.xml)這個組裝器是高度簡化的。一個生產(chǎn)級的組裝器需要一個龐大的、可擴展的模型資產(chǎn)庫。復(fù)雜的空間布局算法來處理“桌子上”、“前面”等關(guān)系。更完善的物理屬性密度、摩擦、彈性分配邏輯。對復(fù)雜機器人模型多連桿、復(fù)合關(guān)節(jié)的支持。模塊3仿真運行與任務(wù)封裝 (sim_runner.py)這個模塊負責(zé)加載生成的MJCF文件并封裝成一個簡單的、可交互的仿真環(huán)境。import mujoco import mujoco.viewer import numpy as np import time class GeneratedSimulation: def __init__(self, xml_path): # 加載模型 self.model mujoco.MjModel.from_xml_path(xml_path) self.data mujoco.MjData(self.model) # 查找機器人關(guān)節(jié)和執(zhí)行器簡化假設(shè)前N個執(zhí)行器是機器人的 self.robot_actuator_indices [] self.robot_joint_indices [] # 這里需要更復(fù)雜的邏輯來識別機器人部分。假設(shè)模型名包含franka的執(zhí)行器是機器人的。 for i in range(self.model.nu): act_name mujoco.mj_id2name(self.model, mujoco.mjtObj.mjOBJ_ACTUATOR, i) if act_name and franka in act_name.lower(): self.robot_actuator_indices.append(i) # 找到該執(zhí)行器對應(yīng)的關(guān)節(jié) jnt_id self.model.actuator_trnid[i, 0] self.robot_joint_indices.append(jnt_id) print(f找到 {len(self.robot_actuator_indices)} 個機器人執(zhí)行器。) def reset(self): mujoco.mj_resetData(self.model, self.data) # 可以在這里設(shè)置特定的初始狀態(tài)如物體隨機位置 return self._get_observation() def _get_observation(self): # 一個簡單的觀測機器人關(guān)節(jié)位置、速度以及球的位置 obs [] # 機器人關(guān)節(jié)信息 for jnt_id in self.robot_joint_indices: obs.append(self.data.qpos[jnt_id]) obs.append(self.data.qvel[jnt_id]) # 查找球的位置通過物體名 ball_body_id mujoco.mj_name2id(self.model, mujoco.mjtObj.mjOBJ_BODY, ball) if ball_body_id ! -1: obs.extend(self.data.xpos[ball_body_id]) # 球的三維位置 return np.array(obs) def step(self, action): # action 應(yīng)該是一個向量長度等于 robot_actuator_indices if len(action) ! len(self.robot_actuator_indices): raise ValueError(f動作維度{len(action)}與執(zhí)行器數(shù)量{len(self.robot_actuator_indices)}不匹配) # 將動作施加到對應(yīng)的執(zhí)行器上 for i, act_idx in enumerate(self.robot_actuator_indices): self.data.ctrl[act_idx] action[i] # 步進仿真 mujoco.mj_step(self.model, self.data) # 獲取新觀測 obs self._get_observation() # 計算一個簡單的獎勵機械臂末端與球的距離負值越小越好 reward 0 # 這里需要獲取末端位置和球位置計算距離。為簡化先返回0。 done False info {} return obs, reward, done, info def render(self, viewer_handleNone): # 使用 mujoco.viewer 進行渲染 pass def run_simulation(xml_path): sim GeneratedSimulation(xml_path) sim.reset() # 創(chuàng)建一個簡單的循環(huán)讓機械臂關(guān)節(jié)做正弦運動 try: with mujoco.viewer.launch_passive(sim.model, sim.data) as viewer: start time.time() while viewer.is_running() and time.time() - start 10.0: # 運行10秒 step_start time.time() # 生成一個簡單的振蕩動作 t time.time() - start action 0.5 * np.sin(t * 2) * np.ones(len(sim.robot_actuator_indices)) sim.step(action) # 同步渲染 viewer.sync() # 粗略的實時同步 time_until_next_step sim.model.opt.timestep - (time.time() - step_start) if time_until_next_step 0: time.sleep(time_until_next_step) except Exception as e: print(f仿真運行出錯{e}) if __name__ __main__: run_simulation(generated_scene.xml)這個運行器提供了最基本的仿真循環(huán)和Gym-like的接口雛形。在實際的SR-Platform中這個模塊需要生成更完善的環(huán)境類包括正確的觀測空間、動作空間定義以及根據(jù)用戶指定的任務(wù)如“觸摸球”來設(shè)計獎勵函數(shù)和終止條件。4.3 整合與測試將以上模塊串聯(lián)起來形成一個最小可行的工作流# main.py import os from nlp_parser import SceneParser from scene_builder import MJCFBuilder from sim_runner import run_simulation import json def main(): # 1. 解析自然語言指令 api_key os.getenv(OPENAI_API_KEY) if not api_key: print(請設(shè)置 OPENAI_API_KEY 環(huán)境變量。) return parser SceneParser(api_key) user_instruction input(請輸入您想創(chuàng)建的仿真場景描述\n) # 例如一個紅色的Franka機械臂在原點它前面0.5米處有一個藍色的盒子。 scene_data parser.parse_instruction(user_instruction) if not scene_data: print(指令解析失敗。) return print(解析出的場景數(shù)據(jù)) print(json.dumps(scene_data, indent2)) # 2. 構(gòu)建MJCF場景文件 builder MJCFBuilder() builder.build_from_scene_data(scene_data) output_file user_generated_scene.xml builder.save_to_file(output_file) print(f\n場景文件已生成{output_file}) # 3. 運行仿真可選 run_choice input(\n是否要立即運行仿真(y/n): ).lower() if run_choice y: print(啟動仿真查看器...) run_simulation(output_file) else: print(f您可以在其他程序中加載 {output_file} 文件進行仿真。) if __name__ __main__: main()這個流程演示了SR-Platform的核心思想。當(dāng)然它距離一個魯棒、實用的工具還有很長的路要走但已經(jīng)清晰地勾勒出了從語言到仿真的技術(shù)路徑。5. 實操中的挑戰(zhàn)、心得與未來展望在嘗試手動實現(xiàn)上述簡化流水線的過程中我遇到了許多預(yù)料之中和預(yù)料之外的困難這些也正是SR-Platform這類項目必須解決的深水區(qū)問題。挑戰(zhàn)一LLM輸出的不穩(wěn)定性與幻覺即便使用了嚴格的JSON Schema和低溫度參數(shù)LLM如GPT-4在解析復(fù)雜或模糊指令時仍然可能產(chǎn)生不一致的輸出或“幻覺”編造不存在的信息。例如它可能將一個“機械臂”解析為兩個獨立的“機器人”實體或者為“桌子”分配一個不合理的尺寸如高度10米。我的心得是不能完全信任LLM的第一次輸出。必須在流水線中設(shè)計一個“驗證與修正”環(huán)節(jié)。這個環(huán)節(jié)可以基于簡單的物理常識規(guī)則如物體尺寸應(yīng)在合理范圍內(nèi)位置不應(yīng)穿透地面對解析結(jié)果進行過濾和修正。更高級的做法是引入一個“仿真預(yù)覽”循環(huán)快速渲染生成的環(huán)境讓用戶直觀確認是否符合預(yù)期并提供圖形化界面進行微調(diào)。挑戰(zhàn)二資產(chǎn)缺失與模型兼容性我們的簡化組裝器只能處理幾種基本幾何體。一旦用戶提到“Franka機械臂”、“KUKA iiwa”或者“一輛汽車”系統(tǒng)就需要對應(yīng)的MJCF或URDF模型文件。網(wǎng)絡(luò)上的模型質(zhì)量參差不齊單位不統(tǒng)一米 vs. 毫米關(guān)節(jié)定義方式各異直接使用會導(dǎo)致仿真崩潰或行為異常。解決方案是建立一個高質(zhì)量的“基礎(chǔ)資產(chǎn)包”。SR-Platform的初期版本必須自帶一個經(jīng)過精心挑選和校準的模型庫包含最流行的機器人、常見家具和物體。對于庫中沒有的模型可以提供“模型上傳與轉(zhuǎn)換”功能引導(dǎo)用戶上傳URDF文件并提供一個帶驗證的轉(zhuǎn)換工具同時明確告知用戶需要自行檢查轉(zhuǎn)換后的模型。挑戰(zhàn)三物理參數(shù)的“合理性”黑洞這是仿真領(lǐng)域的老大難問題。自動分配的摩擦系數(shù)、質(zhì)量、慣性矩幾乎不可能完全準確。一個不合理的參數(shù)會導(dǎo)致算法訓(xùn)練陷入局部最優(yōu)或者學(xué)到的策略無法遷移到現(xiàn)實。在實踐中我采取的策略是“分層調(diào)參”和“任務(wù)敏感性分析”。在生成的MJCF文件中將所有可能影響任務(wù)的物理參數(shù)特別是接觸屬性設(shè)置為可輕松從外部配置文件修改的變量。同時在文檔或代碼注釋中明確指出“此場景中球與桌面的滑動摩擦系數(shù)設(shè)置為0.4這是一個估計值。對于推動任務(wù)建議您在0.2到0.6之間進行調(diào)參以匹配真實情況或任務(wù)需求?!?將參數(shù)暴露出來并給出調(diào)整指南比提供一個看似完美但脆弱的“黑箱”更有價值。挑戰(zhàn)四從靜態(tài)場景到動態(tài)任務(wù)生成一個靜態(tài)場景相對容易但生成一個可完成特定任務(wù)如“推球”、“開門”的環(huán)境則困難得多。這需要定義任務(wù)的目標狀態(tài)、獎勵函數(shù)、終止條件。一個務(wù)實的思路是“任務(wù)模板化”。SR-Platform可以預(yù)置一系列常見的任務(wù)模板如“Reach”末端到達某位置、“Push”推動物體、“PickAndPlace”抓取放置。當(dāng)用戶指令匹配到某個模板時如“觸摸球”匹配“Reach”系統(tǒng)就自動套用該模板的獎勵函數(shù)和終止條件定義并將目標物體球的位置作為參數(shù)注入。對于無法匹配的復(fù)雜任務(wù)則生成一個任務(wù)框架并在關(guān)鍵處添加詳細的TODO注釋引導(dǎo)用戶自己實現(xiàn)核心邏輯。未來展望SR-Platform的演進方向我認為一個成熟的SR-Platform不會試圖成為一個“萬能魔法棒”而更可能演進為一個“強大的場景構(gòu)建助手”和“仿真實驗管理平臺”。它的發(fā)展方向可能包括交互式構(gòu)建結(jié)合圖形界面用戶用語言描述大致場景后可以在3D預(yù)覽中直接拖拽調(diào)整物體位置、旋轉(zhuǎn)視角系統(tǒng)同步更新背后的MJCF代碼。與物理參數(shù)辨識工具深度集成用戶可以提供一段真實世界的視頻如球在桌上滑動平臺能嘗試調(diào)整仿真參數(shù)使仿真行為與視頻匹配。支持多引擎后端不僅生成MuJoCo的MJCF文件還能輸出PyBullet的URDF場景、Isaac Sim的USD場景甚至Unity的Prefab讓用戶根據(jù)需求選擇仿真引擎。場景復(fù)雜度分級對于初學(xué)者生成簡單、穩(wěn)定的基礎(chǔ)場景對于高級用戶提供選項來生成包含隨機擾動、傳感器噪聲、動態(tài)障礙物的復(fù)雜場景用于魯棒性測試。社區(qū)與共享用戶生成和調(diào)校好的場景可以發(fā)布到平臺社區(qū)形成不斷增長的場景庫其他人可以一鍵復(fù)用或在此基礎(chǔ)上修改。最終SR-Platform的價值不在于完全取代仿真工程師而在于將工程師從重復(fù)、繁瑣的環(huán)境搭建工作中解放出來讓他們能將更多精力投入到機器人算法、控制器設(shè)計等更具創(chuàng)造性的工作中。它降低了機器人仿真的入門門檻讓更多領(lǐng)域的研究者如機器學(xué)習(xí)、認知科學(xué)能夠快速構(gòu)建實驗環(huán)境從而可能催生出更多跨學(xué)科的創(chuàng)新。從手動編寫每一行XML到用自然語言描述心中所想這無疑是機器人仿真開發(fā)范式的一次重要演進。雖然前路挑戰(zhàn)重重但方向已經(jīng)清晰值得每一個機器人領(lǐng)域的從業(yè)者保持關(guān)注和期待。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
黄色中文字目| 色天堂操| 99ri视频在线播放| 亚洲五月丁| 玖玖婷婷五月天毛片| 日本天天色| 丁香五月天色综合| 亚洲综合无码| 日本色久| 男人天堂 久久| 久久久18| 超碰91人人操| 思思热在线观看| 婷婷五月丁香在线观看| 色色婷婷五月天| 丁香社92视频| 色99欧洲色19| 国产特黄色精品一区二区三区精品无广告| 国产看真人毛片爱做A片| 婷婷五月天播播| 26uuu色噜噜精品一区| 天天操五月天| AV无码免费| 少妇水多A片太爽了| 五月天停婷基地| 婷婷五月天人妻| 成片免费播放| 久久作爱| 久操b网| 日本三级色| 99国产精品久久久久久久久久久| 狠狠操狠狠插| 欧美成人精品A片免费一区99| 五月婷婷激情| 欧美日韩999| 亚洲色网址| 丁香婷婷中文字幕| 婷婷色激情五月天| 五月婷婷激情综合av| 五月婷婷六月奇米网丁香| 亚洲丁香花色| 青青草a在线| av在线观看免费| 婷婷成人在线| 色综合色| Va另类视频| 六月婷婷无码观看| 国产精品成人av在线观看春天| 第四色色六月色综合| 另类在线| 五月婷婷成人网首页| 欧美情月伍月天| 亚洲五月天婷婷| 特级操b片| 色99婷婷五月天| 色婷婷精品视频在线播放| www.lchjjc.com| 9色91视频| 国产乱妇无乱码大黄AA片| 激情五月综合网| 色婷婷久久| 亚洲美女高潮久久久久久69| 无码AV免费精品一区二区三区 | 五月婷婷熟女| 五月丁香六月婷婷视频| 五月婷婷五月天| 九九香蕉网| 日本片日本片祼观看网站在线看中文版网页在线看 | 日本丁香五月| www.夜夜操| 青青草免费公开视频| 国产古装妇女野外A片| 婷婷丁香六月天| 墨西哥毛片内射精| 九九热这里只有精品7| 婷婷伊在线| 丁香六月视频| WWW.99视频| 99视频久久| 开心激情网五月天| 91久久九九| 激情五月天色婷婷综合| 九九成人精品| 97色久| 亚洲人妻av伦理| 欧美一黄一色一乱一伦| 狠狠操.com| 激情五月天之六月婷婷| 久久9视频欧美| 人人播| 久久44| 日本色图综合| 亚洲精品午夜国产va久久成人| 婷婷综合一二三| 九九色综合| 97超碰9久热婷婷热| 超碰99热精品| 99热精品一| 色久丁香五| 人妻中文在线| 久久综合色五月| 激情啪啪五月天| 这里只有精品视频免费在线观看| ..真实国产乱子伦毛片| 99这里是99在线视频| 久久开心五月婷婷| 极品少妇XXXX精品少妇偷拍| 九九色99| 91玖玖| 色色色激情网| 婷婷丁香五月久久| 色香蕉影院| 五月天久久网站| 色五月丁香激情视频| 99九九视频| 天天揷综合网| 色五月婷婷、老熟女| 六月天婷婷| 日韩精品AV一区二区三区| 天天干,天天操,天天射| 亚洲日日日| 精品一二三区久久AAA片| 色激情五月| 久久只这里有精品| 综合色色五月| 婷婷综合五月色播| se色婷婷视频| 丁香六月视频免费观看| 国外亚洲成AV人片在线观看| 99热这只有| 色六月婷婷| 99综合入口| 激情综合网,婷婷| 日良久久| www.99热| 狠狠操狠狠插| 立川无码av| 亚洲精品大片| 26uuu色噜噜精品一区| 在线天堂9| 丁香婷婷五月天成人| 婷婷丁香人妻| 91色五月在线观看| 色婷狠狠| 色情久久久| 天天日综合| 狠狠色婷婷综合开心影视| 色色综合日韩| 色色色色色色色五月| 丁香成人综合| 日韩五月婷婷久久| 五月丁香六月激情在线| 91超碰在线播放| 色色色网站| 综合久久伊人| 婷婷在线精品| 日韩狠狠色婷婷| 国产99热| 玖玖资源站蜜臀| 国产亚洲AV人片在线| 丁香丝袜五月| 婷婷97碰碰| 4399在线日本A片| 超碰成人电影| WWW.久久.COM| 婷婷色综合av| 五月天婷婷三级黄| 欧美一级毛卡片无码| 丁香五月婷婷影院| 91人人爽狠狠狠| 99爱爱| 五月天婷婷视频| 99小视频在线| www色哟哟| 久久人妻精品| 99热精品在线播放观看| 青青艹b| 婷婷五月天国产在线播放| 玖玖婷婷色| 日本视频99| 色优久久| 噜噜精品| 色婷婷色五月另类综合| 五月久久| 人妻内射一区二区在线视频| 久久亚洲天堂| 婷婷六月丁香色| av一区免费看| 中文字幕日产A片在线看| 襙逼网| 久草五月天| 99视频在线| 欧美久久五月婷婷| 97视频.干com| 97婷婷五月丁香| 亚洲综合另类| 久久A V无码视频| 九九99九九99| 去色色五月天| 五月综合激情久久| 这里只有精品视频免费在线观看| 亚洲激情久久| 丁香久久久| 51XX午夜影福利| 色婷婷激情五月天| 人人色婷婷五月天| 色婷婷五月在线| 亚洲精品国产A久久久久久| 青草五月天| 99热精品在线播放| 五月丁香综合成人社区| 九色综合网| 久久99久久99精品免观看粉嫩| 亚洲色婷婷婷婷人人爽| 99精品国产热久久91色欲| 国产又粗又大又爽又黄| 欧美va视频| 婷婷爱婷婷| 久久综合激情| 99热综合在线| 亚洲AV第二区国产精品| 色婷婷久久视屏| 午夜少妇在线观看视频| 欧美这里只有精品| 丁香激情久久| 97操碰在线视频| 99精彩视频在线观看| 久久久久9| 免费在线观看av网站| 综合久久婷婷| 91超级碰碰碰| 色999亚洲人成色| 久久激情五月婷婷| 最新丁香六月婷婷| 九九热视频精品| 美女要搞搞天天搞搞搞网站| 五月深爱婷婷| 99re热久久| 日日骑夜夜撸| 深爱婷婷基地| 伊人久久激情图区五月| 丁香五月激情宗合网| 丁香五月婷婷综合91| 在线视频婷婷| 一本到不卡高清DVD| 久热这里| 4399啪啪视频| 香蕉曰比| 色婷婷AⅤ| 色婷婷激情Av久久久| 色婷婷色99国产综合精品| 亚洲AV日韩无码| 99久久玖玖| 久久99热精品a片在线观看| 99国产小视频2013| 天天草天天舔| 开心五月深爱激情| 日日操夜夜爽| 亚洲精品成人| 99re这里只有精品视频了| 婷婷五月天成人视频| 久久小说网| 精品人妻一区二区三区在| 九色PORNY9l原创自拍| 爱射综合| 欧美成人AAA片一区国产精品| 狠狠干在线| 五月天婷婷激情小说电影| 婷婷色丁香五月| 国产激情AV| 久色网址| 欧美性色A片免费免费观看的| 亚洲综合另类| 激情婷婷激情在线不卡| 婷婷五月天久久综合88| 26uuu欧美日韩| 六月综和久久| 99久热这里只有精品| 色激情五月天| 99热这里只有精品5| 久草五月| 99热免费18| 婷婷自拍| 思思热久在线观看视频| 五月天激情视频网站| 天天干天天操| 五月香婷婷| 天天色播| 在线伦子99热| 99这里只有精品8| 小视频一区 | 91久久久久| 久久久久久久久久婷婷| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 亚洲色vA| 五月婷婷在线免费观看| 亚洲国产黄色电影| 亚洲激情丁香五月天色| 国产精品美女| 久99999热视频在线观看免费| 99视频综合网| 婷婷日在线观看| 日韩av网址大全| 91丨九色丨白浆秘| 国产精品 的国产| 激情q青青草在线婷婷| 欧美日本一区二区三区| 天天做天天爱| 超碰93在线观看| 伊人在线婷婷草| 五月天偷拍| 五月天社区| 肏日网在线看| 婷婷五月丁香五月天| 久久综合五月| 五月天大香蕉av| 99爽视频| 天天艹夜夜艹| 九九爱精品网站| jiujiu热在线视频| 六月丁香色色| 39视频第二区| 久久五月激情| 亚洲精品白浆高清久久久久久| 91色干| 插插干干干色| 九九视频在线| 91九色在线| 五月丁香婷婷成人网| 九九色逼| 99视频这里只有免费精品| 五月丁香六月激情在线| 天天日日| 婷婷开心激情综合五月天| 久操热线| www999日韩精品| 激情丁香六月| 婷色综合| Www.激情| 亚洲婷婷综合视频| 婷婷色激情五月天| 激情精品久久| 婷婷五月天干干| 99精品在线观看| 六月丁香久久| 日韩1区2区| 狠狠色狠狠| 色五月欧美| 久综合九综合99| 婷婷五月天色网久| 日韩黄色影院| 婷婷五月天亚洲综合| 97人人草| 狠狠色丁婷婷日日,伊人激情综合网| 色三级色三级| 99综合免费视频| www.91.com黄| 九九色中文| 91精品久久久久久77777| 丁香五月网址| 婷婷五月激情丁香| 97丁香五月天| 久久五月婷天天干| 婷婷婷婷婷婷婷五月丁香| 99热个人在线| 79精品视频| 九九九九热99超碰| 色综合色色色| 久久免费9| 操碰99| 久久9久| 97色在线| 五月婷婷久久爱| 丁香五月之久操视频| 久色五月婷婷综合| 婷婷激情啪啪| 亚洲综合成人网| www.99视频| 99热在线观看免费精品| wwccc久久久| 九月丁香久久网| 久久婷婷五月天激情唯美| 婷婷五月综合基地| 色五月超碰| 久久狼人天堂| AA片在线观看视频在线播放| 99久久玖玖| 五月婷婷九九热| www.henhenl| 99免费热在线精品| 激情综合五月丁香六月婷婷| 六月丁香婷婷综合狠狠爱夜夜爱| 99久热这里有精品| 久久五月婷综合网| 99久久网站| 99 这里只有精品| 婷婷天天五月天| 日韩 中文 欧美| 欧美A级网站| 大色鬼综合| 精品人妻久久久久久| 色五月色图| 久久99精品视频| 99爱免费在线视频| 欧美精品999| 办公室少妇激情呻吟A片在线观看| 思思热在线视频99| 97精品综合久久| 91色色五月天| wwwss在线观看| 视色综合| 深爱五月激情网| 人人综合色| 色区久久| 成年人丁香五月| 激情小说五月丁香在线视频观看视频| 伊人影院久久网| 操人91| 婷婷五月天国产在线播放| 热九九在线| 91jiuseshunv| 六月成人网| 婷婷色情网| 婷婷四色成人综合色视| 色五月天.con| 国产午夜精品一区二区| 在线观看日韩12345区| 91久久久久久| 狠狠干综合网| 婷婷综合精品视频97| 婷婷月五天在线在线看| 182TV大香蕉| 激情九月婷婷九月| 五月天婷婷基地| 99成人| 婷婷激情丁香六月| 97干婷婷五月天| 亚洲色久| 人人操97| 在线天堂9| 天堂va久久久噜噜噜久久Va| 五月丁香婷婷成人网| 欧美影院婷婷| 在线观看免费狠狠色丁香香综合| 五月婷婷无码| 狠狠操狠狠干综合| 艾小青av| anquye五月| 日本va网站| www九九热| 激情久久丁香| 中文AV在线观看| 精品五月花| 2018夜夜草| 99热在线观看| 欧美性猛交99久久久久99按摩| 五月丁香婷婷综合网| 亚洲黄色精品| 黄色AV日韩| 精品99在线| 另类小说色婷婷| 99爱这里只有精品免费视频| 色婷婷久久综合中文久久一本| 五月丁香久久呀| 开心亚洲久久开心| 丰满人妻一区三区三区| 狠狠色综合网站| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 五月WWW| 5月婷婷六月丁香| 婷婷瑟五月天久久综合| 日本激情五月| 噜噜五月天综合| 色在线视频网2025| 九九大香蕉黄色影院| 婷婷 伊人 久久| 丁香六月综合激情| 色婷婷丁香五月| 色色A| 97色色网| 99热超碰人| 好大好粗嗯啊-一级黄色大片免费观看-成人AV| 人妻在线网站| 中文字幕AV在线| 99视频这里只有免费精品| 婷婷五月天美女| 99re思思精品视频在线观看| 婷婷六月花| 99re思思热久久| 天天日天天草| 99久久6| 少妇AB又爽又紧无码网站| 电影91久久久| 99伊人性爱在线影院| 99视频自拍| 久久成人性爱| 99这里| 另类小说五月天| 国产成人片| 亚洲AV日韩在线观看| 丁香五月婷婷婷桃花影院| 久久总和99| 婷婷五月天伊人在线| 天天综合五月| 五月丁香综合影院| 2018国产大陆天天弄| 热久久这里只有三级视频| 色综合久久中文| 天天肏屄夜夜爽| 天天视频亚洲| 色播五月天激情| 91黄色五月天视频| 色五月婷婷五月丁香五月激情五月视频| 五月婷婷m| 天天综合久久| 亚洲午夜在线视频| 色停停香蕉视频| 襙逼网| 成人五月天丁香| 日欧一片内射VA在线影院| 中文字幕婷婷在线| 亚洲欧洲自拍图片专区五月天| 五月丁香婷婷成人网| 色婷婷五月在线| 伊人大香蕉爱聚| 综合激情伊人影视在线| 五月丁香偷拍| 亚洲av电影网站| 青草网在线观看| 亚洲成人五月天| 99成人| 成人网在线视频| 六月天六月婷| 亚洲人妻AV| 国产激情在线观看| 99成人小视频| 国产精品久久久久久喷浆| 成人中文字幕在线| 激情五月天电影| 96精品成人无码A片观看金桔| 青青草轻轻操| 日日操夜夜爽| 国产免费av网站| 天天干天天日日| 激情九月婷婷| 182TV大香蕉| 五月天综合图片| 午夜不卡久久精品无码免费 | 人人噜天天上| 色色色五月天婷婷| 全国最新疫情| 欧美精品中文字幕亚洲专区| 天天开心婷婷丁香五月| 综合久久婷婷| 91ncom.色| 久久五月婷婷丁香| 婷婷五月天综合AV| 噜噜狠狠色综无码久久合欧美| 五月天激情色色| 婷婷四月 成人 狠狠干| 天天爱天天爽| 丁香五月天激情| 久久女婷| 99热99色| 开心四月婷婷在线色播播| 天天插天天插天天插天天插| 玖玖在线视频| 99热欧美| 五月天激情网图片 - 百度| 色色性爱视频| 色色99色色| 久久婷婷视频| 婷婷亚洲丁香五月| www99精品在线观看| 啪啪激情网站| 亚洲区1| 婷婷综合网| 大香久久伊人网| www.夜夜操| 丁香激情四射| 久久免片| 五月婷人妻| 久操欧美在线观看97| 另类国产综合| 天综合日日夜综合7799| 色色综合激情| 99国产er热视频| 五月天偷拍| 九九视频精品在线免费| 婷婷中文综合网| 日本色爽| 色播五月婷婷| 97久久人人人干| 激情五月天激情综合网| 99啪啪网| 丁香五月激情啪啪| 丁香五月五月婷婷五月天激情四射| 日日操夜夜操中国无码| 婷婷伊人综合中文字幕| 久久婷婷丁香五月一二三| 无遮挡国产高潮视频免费观看 | www.av视频xx999.com| 久草热8精品视频在线观看| 国产日日操夜夜操的肉棒视频| 美女视频图片久久91| 性综合网| 三区激情四射av| 超碰69天堂| 五月丁香婷婷色色色| 第四色五月激情网| 91九色成人原创视频| 五月婷中文字幕| 婷婷五月俺要去| 97在线日本| 色婷婷电影网| 欧美成人A片AAA片在线播放| 亚洲视频a| 久久性爱网| 碰超99| 天天射影视综合网| 婷婷丁香97| www五月婷婷88导航| 五月丁香激情综合啪啪| 激情综合网亚洲色图| 九九人人自拍| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 精品一二三区久久AAA片| 国产密乳av一区二区三区四区| 精品乱码视频| 久久的爱大香蕉| 天天做天天爱| 五月丁香 啪啪| 综合六月激情婷婷| 少妇日麻屄| 五月丁香综合影院| www,婷婷,com| 丝袜大香蕉| 日本WWW九九九| 五月丁香啪啪啪啪| 在线国产精品色| 亚洲色综久久五月| 国内熟女黄色系列| 成人无码精品1区2区3区免费看| 久久人人九| 婷婷激情5月| 激情综合自拍五月婷婷色五月| 婷婷九月丁香天堂丁香天堂| 婷婷五月天国产传媒| 色色色色色色色色综合网| 深爱激情六月天| 天天狠狠色噜噜| 五月婷婷丁香啪啪| 激情九月婷婷| 琪琪色五月天| 超级碰碰91| 婷婷色一二三区波多野结衣| 91久女| 成人做爰A片免费看网站找不到了| 在线中文av| 婷婷五月天av| 五月婷婷五月色| 九九热这里只有精品在线观看| 成人必爱视| 丁香色五月婷婷17C| 91视频一起草| 亚韩在线视频| 久久电影4399| 国产97色在线 | 日韩| 久草九九| 国产亚洲网站在线| 亚洲色色五月天| 香蕉大综综综合久久| 丁香五月WWW| 激情超碰网| 嫩草视频| 色婷婷丁香社综合| 天天肏天天肏天天肏| 欧美色碰| 99热综合网| 婷婷精品免费久久| 人人草成人视频| 色VA| 丁香六月婷婷综合网| 五月丁香六月婷婷综合伊人| 九九热视频免费的| av五月天婷婷丁香| 亚洲va综合va国产va中文| 成人永久免费视频在线观看| 97视频久久| 激情五月天丁香| 五月婷婷色| 少妇人妻丰满做爰XXX| 色青青电影色五月| 卡视频1区2区| 久9热视频在线观看| 亚洲色综合| 青青草a在线| 色综合综合色| 五月婷婷影院| 色婷婷五月天| 亚洲99热| 黄色精品五月婷婷| 99久热这里有精品| 夜夜骑天天玩天天日| 天天爽天天| 91丨九色丨东北熟女| 99re6在线视频精品免费| 99婷五月| 天天射天天干天插色综合| 婷婷丁香社区网| 五月婷婷深爱六月| 五月天婷婷綜合院| 婷婷午夜激情| 天天色2017| 大香蕉七区| 久久五月视频| 丁香婷婷成人网站| 99这里都是精品| 久婷婷视平| 久久性刺激| 天天做天天双| 99九九在线视频| 99热思思| 超碰在线超碰| 九九草热在线观看| 九九色色网| 五月美女婷婷风骚| 久99| 天天综合中文| 婷婷香蕉| 婷婷激情视频| 久久久久久综合五月婷婷| 婷婷涩涩五月天| 丁香五月天操B| 五月婷婷中文字幕| 婷婷五月天激情综合深爱激情| 激情综合网五月丁香| 亚洲色图欧美色图日本视频| 99激情在线| 久久色这里只有精品| 狼人久草| 91精品婷婷国产综合| 久久婷婷亚洲五月天| 五月婷婷色色| 久操97| 欧美久久婷婷| 欧美性生交XXXXX无码小说| 亚洲操精品| 婷婷亚洲欧美丁香五月| 性做爰1一7伦| 99在线精品视频免费| 大天天伊人| 五月丁香色色色| 91精品熟女| 婷婷啪啪| 黄色五月婷婷| 97热在线精品| 色色九区| 六月丁香综合| 91人无码久久久久久| 五月天激情网址| 婷婷五月天影院| 成人午夜无码视频| 激情久久久久久| 婷婷丁香五月色偷偷| 婷婷五月六月激情| 丁香五月天大香蕉啪啪| 森林影视大全,最好看的2019年视频 | 久1色色| 亭亭玉月丁香| 天天开心天天色| WWW久久久| 色哟哟www| 久久3p| 六月婷欧美| 思思热在线视频精品| 亚洲免费电影2| cc精品国产性传播| 五月天婷婷网站| va亚洲中文在线| 狠狠狠狠狠狠草| 亚洲色情网站| 99ri视频在线观看| 99久热这里只有精品| 激情丁香五月天图片| 人妻精品一区二区三区| 久久影视婷婷五月| 人人摸人人澡人人| 伊人碰碰婷婷| 91爱操| 亚洲人妻AV| 国产精品美女| 五月丁香婷婷成人伊人网| 第四色在线观看| 婷婷四色成人综合色视| 色综合中文综合网| 看片视频在线免费日产在线看| 五月婷婷草| 99热偷拍| 婷婷五月天va| 日本色色视频| 五月丁香六月| 色色色激情| 免费无码毛片一区二区A片| 人人色AV| 六月丁香婷婷综合影院| 久9无码视频| 综合激情伊人影视在线| 国产精品a无线| 久久精品亚洲热| 91久久电影| 99热在线观看精品| 白天AV月月| 亚洲激情六月| 色婷婷免费观看| 亚洲久久视频| 亚洲视频另类| 伊人超碰| 久久有码| 久久久性爱网| 99国产精品久久久久久久久久久| 天天干天天干天天干天天干天| 丝袜激情网| 婷婷五月天成人| 精品人妻久久久久| 五月6香色婷婷视频| 性生生活大片又黄又| 狠狠干夜夜干| 激情五月天激情网| 婷婷日本色| 97色婷婷| 天天做好综合色| 激情网战码亚洲A| 五月丁香 狠狠爱| 综合久| 丁香五月在线观看完整版| 欧美视频五区| 色色色com| 久九色| 色五月婷婷五月丁香五月| 伊人网大香| 精品国婬伦V无码久久久| 亚洲激情视频在线观看| 亚州精品久久久久AV无码| 久婷婷婷| 狠狠色综合久久久久| 深爱激情综合| 色色综合激情| 婷婷综合六| 丁香五月婷婷激情小说| 天天网曰日曰夜夜综合永久免费| 久草五月| 久久久999精品| 亚洲色激情| 国产裸舞福利资源在线视频| 五月天婷婷伊人| 久久受www免费人成| 亚洲欧美婷婷五月色综合| 天天操比比| 91大屁股| 九九这里有精品视频| 丁香九月综合| 久久资源综合| AV在线不卡播放| 99热亚洲| 九九99九九99| 婷婷五月天在线视频网站| 爱婷婷久久视频| 丁香香五月激情免费视频| 日本高清久| 激情骚五月| 一本久久婷婷| 9精品久久999| 国产精品一区在线观看你懂的| 欧美丁香五月97色| 射久久丁香五月| 天天五月天综合网址| 丁香五月第四色88| 开心五月婷婷激情网| 激情婷婷五月亚洲| 秋霞免费三级片| 超碰成人在线观看| 色婷婷A| 狠狠色丁香久久| 九热电影av| 婷婷五月六月| 免费人人操| 99热99| 色综合久久综合| 18久久| 婷婷五月激情五月丁香五月| 一区二区aV电影免费看| 久热爱大香蕉在线蜜臀悦色| 九一九九黄色| 9999热在线| 婷婷五月欧美| 婷婷丁香www视频日本韩国| 日本欧美999久久久三级片| 秋霞网在线免费基地五月婷婷丁香| 26uuu色五月| 二区成人视频| www久久久久| xx久久| 91久久99久久91熟女精品| 欧美日本VA| 亚洲五月六丁香激情| 色视五月天婷婷| 亚洲性色XXXXX| 99热这里只有精品国产首页| 五月天婷婷在线播放| 99热国产免费| 香蕉综合在线| 五月婷婷六月丁香| 狠狠ri| 久久九九婷婷| 日韩成人中文字幕| 七七九九色色| 婷婷丁香五月天中文字幕| 精品人妻久久久久| 色婷婷超碰| 来吧亚洲综合网| 久久五月婷6 9| 97人人干。| 激情综合网五月丁香| 欧美va精品va老师va| 激情五月综亚网| 色色射| 国产免费一区二区在线A片视频| 日韩成人综合网| 国产在线网| 偷偷操99| 六月综和久久| Www.狠狠| 婷婷丁香在线| av婷婷六月丁香社区在线观看| txt五月激情四射网综合俺也来了| 久久9久久| 亚洲性爱干干| 九九99视频| 丁香五月天激情视频| 黄色国久久| WWW免费视频碰碰碰碰| 日本的α片xxxwww| 79精品视频在线观看,| 79精品视频在线观看,| 久久九九激情五月天| 色七七九九| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 人人爱国产| 亚洲av另类在线观看| 九九婷婷综合| 婷婷色情小说| 97精品综合| 久久婷五月影院| 九色视频91| 夜夜操,天天撸| 午夜色婷婷| www91久久| 婷婷五月天伦理| 超碰免费人妻| 大鸡巴伊人网| 免费的日逼视频| 美欧成人视频| 九九精品大香蕉| 五月天国产成人| 五月丁香五月婷婷| 国产真实乱对白精彩| 中文字幕av久久爽一区| 另类激情网| 99热自拍| 人人摸人人操人人爽| 色狠久| 国精产品一区一区三区免费视频| 一级精品999WWW| 99热这里只有精品最新网址| 五月婷婷色| 婷婷九月亚洲| 五月亭亭六月天| 亚洲亚洲人成综合网络| 99自拍视频在线| 涩婷婷五月天在线精品视频| www.91五月| 99热成人精品| 天天插综合| 亚洲天堂啪啪| 久久久噜噜噜久久人妻| 久热精品免费视频4| 日本va欧美va精品发布视频| 婷婷的99视频网站| 五月天激情四射网站| 亚洲热久久| 九月婷婷在线视频| 亚洲综合网激情小说| 久碰视频| 妇激情基地| 丁香六月久久| 亚洲成人av在线| 综合网啪| 欧美WW在线网| 色播五月婷婷| 九九精品re免费视频| 亚洲欧州色情在线观看| 99国产在线精品视频| 99re思思在线视频| 久久伊人大香蕉| 亚洲婷婷丁香五月在线| 久久ab| 五月天激情国产综合婷婷婷就去爱| 丁香五月另类色婷婷麻豆| 九九色播五月丁香| 1024操逼视频| 伊人色综合影院视频| 精品久久9| 国产 亚洲 在线| 亚洲色五月| 99久久精彩视频。| 色综合99| 第六色在线| 另类在线免费视频| 色色色色网色色网色色| 五月婷婷性爱网| 第四色婷婷丁香五月| 大胆伊人久久| 色婷婷五月综合在线| 天天操B| www.夜夜操| 99色丁香婷婷综合网| av高清无码| 六月丁AV| 日韩av在线免费观看| 成人在线视频网| 99精品视频免费在线播放| www.色婷婷.com| 99热九九在线| 久久一级免费黄色片| 超碰资源在线| 99综合色色色| 九九一区| 深爱综合网| 色情综合| 国产成人精品一区二三区熟女在线| 丁香婷婷五月六月天| 日本97人人| 内射综合网| www.夜夜操.con| A片试看120分钟做受图片| 五月色色激情网| 丁香五月激情啪| 久99| 天天爽天天日天天舔| 丁香久久综合| 99热久久这里只有精品| 深爱五月日韩| 五月停亭六月,六月停亭的英语| www.久久99| 丁香六月亭亭久久综合| 激情综合网激情五月天| 亚洲人妻AV| 九九亚洲视频| 亚洲操操| 无码碰碰| 五月大香蕉| 国模淫穴色图| 色色爽爽天天| 中文字幕婷婷9月天| 激情综合色婷婷啪啪六月天| 69堂午夜视频最新地址| 婷婷久久婷婷色五月| 丁香五月激情啪啪| 五月天激情无码专区| 五月婷亚洲精品AV天堂| 五月天综合在线网| 网色99| 99热这里只有的精品视| 五月婷婷激情性爱| 欧美天堂婷婷日韩| 五月亭亭六月天| 丁香五月婷婷六月| 青青夜夜狠狠夜夜狠狠| 色婷婷丁香社综合| 欧美在线| 日韩综合天堂| 丁香六月激情网C0W| 久久精彩免费视频精彩免费视频| 九九九AAA热视频| 国产一级片| 色综合丁香婷婷| www.激情五月天| 久久综合激情五月天| 激情宗合 激情宗合| 精品国产AV色一区二区深夜久久 | 激情九月婷婷九月| 五月婷婷成人| 久久色9| 欧美色五月天| 性爱在线播放av| 激情六月丁香| 色婷婷综合电影| 婷婷在线网| 99精品在线播放| 激情综合网五月丁香| 婷婷激情五月综合| 激情五月视频| 五月婷婷六月激情在线| 亚洲超碰在线| 99久re热| 黄色91在线观看| 人碰人人人玩91| 极品人妻VIDEOSSS人妻| 亚洲五月天婷婷| 久久与婷婷| 五月激情在线| 人妻久久久久久久久久久| 婷婷综合激情五月综合| 五月激情六月| 久久精品爱爱| 人人爱操| AAA久久| 综合久久97| 99爽视频| 超碰93在线观看| 99人人操| 丁香婷婷超碰 | 人妻射精AV| 五月婷婷六月丁香| 99色综合网| 9l视频自拍9l九色成人| 久久婷婷网站| 中文AV在线播放| 色婷丁香| 五月天啪啪| 五月丁香爱婷婷深深| 天天做天天爱天天爽夜夜揉| 大香蕉九九| 全亚洲最大的婷婷五月天网站COM| 色婷婷中文在线| 91一起艹| 久久婷婷五月综合97色一本| 亚洲区,视频区,视频区免费| 综合激情五月丁香| 日本a片网址| 五月婷婷激情四季| va婷婷在线| 能看的AV网站| 五月丁香婷婷开心| 99精品在线观看视频| 影音先锋偷偷色男人站| 91九色精品| 五月婷综合| 亚洲爆乳无码精品AAA片蜜桃| 亚洲精品又粗又大又爽A片| 国产真人做爰视频免费| 五月婷婷香蕉| 五月婷婷九九久久| 丁香五月人妻| 91久久久久久| 婷婷色系婷色| 丁香六月激情网C0W| 五月丁香六月婷婷啪啪| 久久人人九九| 九九99精品视频在线观看| 国产精品日本一区二区在线播放| 色综合视频在线| 五月花激情网| 久久久人妻人伦| 五月伊人视频在线看| 丁香激情综合| 99热国内精品| 91欧美| 久久天堂女人| 97碰久久| www婷婷色情网| 五月丁香在线观看| 99热综合| 婷婷婷婷午夜| 欧美天堂久久| 婷婷五月天亚洲天堂| www色色com| 激情婷婷五月| 五月天综合视频| 99欧美热| 狠狠色噜噜狠狠狠狠综合| 99热这里只有精品21| 色五月婷婷五月天激情综合| 97久久久久| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 91狠狠色| 综合色五月亭亭| 五月丁香六月婷婷成人| 久er7久热| 综合色播| 狠狠色婷婷7777久| 蜜桃婷婷狠狠久久综合| 色色网站免费在线视频| 九热视频| 操操啪| 久久99精品久久久久久三级| 婷婷色五月综合丁香| 婷婷五月天在线一区| 天天干夜晚夜操| 五月婷综合| 亚洲婷婷五月草久| www久久艹| 99热 日韩| 99热在线爱| 天天日天天爽| 亚洲综合网在线| 久久婷婷亚洲| 99久在线精品99re8| 99热在线观看| www.色色五月天.com| www夜夜操wwwcon| 免费视频99| 精品亚洲国产成AV人片传媒| 婷婷五月丁香五月天| 亚洲成人综合在线| 日韩AV中文字幕在线| 五月天婷婷色播综合在线| 五月婷婷亚洲| 婷婷激情五月天激情小说| 五月天开心成人网| 人人操99| g00d人体西西| 激情婷婷网| 免费无码毛片一区二区A片| 亚洲天堂99| www热久久yy9| 色吊丝av中文字幕| 婷婷丁香五月欧美人| AV电影在线播放| 久久色婷婷| 五月丁香在线| 亚洲综合欧美色丁香婷婷888月图片| 一本久久亚洲五月婷婷| 91碰碰| 人人干99| 99在线免费观看| 国产人人操| 婷婷五月噜噜| 最新无毒无码AV| 婷婷大美在线| 综合婷婷| 五月天激情播播网| 99热久| 日韩成人电影AV| 五月婷精品| 开心五月婷婷婷美女| 欧美五月婷婷| 久久色午夜在线导航| 亚洲久热无码| 丁香五月综合网| 久久久久人无码人妻| 亚洲深喉aV| 深爱开心五月天| 欧美成人猛片AAAAAAA| 激情五月天综合图片小说网站| 五月天色色网站| 国产亚洲色婷婷99精品| 色色色综合| AAAA亚洲| 福利视频在线播放| 精品无码人妻一区| 男人操女人高潮91视频| 婷婷综合六| 成人在线免费网址| 五月天成人综合|