99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

OpenClaw-RL實(shí)戰(zhàn):基于OPD教師模型的強(qiáng)化學(xué)習(xí)策略優(yōu)化

OpenClaw-RL實(shí)戰(zhàn):基于OPD教師模型的強(qiáng)化學(xué)習(xí)策略優(yōu)化 1. 項(xiàng)目概述從“后悔”到“聰明”的AI進(jìn)化之路最近在搞強(qiáng)化學(xué)習(xí)項(xiàng)目特別是基于OpenClaw-RL框架的探索發(fā)現(xiàn)一個(gè)特別有意思的課題如何讓AI學(xué)會(huì)“聰明”地做決策而不是像個(gè)莽夫一樣亂撞。這聽(tīng)起來(lái)有點(diǎn)玄乎但核心其實(shí)就一個(gè)詞——“后悔”。我們?nèi)祟愖鲥e(cuò)事會(huì)后悔然后下次就知道怎么做了AI能不能也這樣當(dāng)然能這就是OPDOptimal Policy Distillation最優(yōu)策略蒸餾教師模型訓(xùn)練的核心思想。簡(jiǎn)單來(lái)說(shuō)它不是讓AI從零開(kāi)始瞎摸索而是先給它看一個(gè)“笨老師”是怎么做的然后讓AI去分析這個(gè)“笨老師”哪里做錯(cuò)了、哪里可以做得更好最后自己總結(jié)出一套更“聰明”的策略。這個(gè)過(guò)程本質(zhì)上就是讓AI學(xué)會(huì)從“后悔”對(duì)次優(yōu)行為的反思中學(xué)習(xí)。這個(gè)項(xiàng)目標(biāo)題“OpenClaw-RL 實(shí)戰(zhàn) 09OPD教師模型訓(xùn)練”點(diǎn)明了幾個(gè)關(guān)鍵信息首先它是一個(gè)實(shí)戰(zhàn)系列的一部分意味著我們要?jiǎng)邮肿霾皇强照劺碚撈浯嗡贠penClaw-RL這個(gè)框架這是一個(gè)用于機(jī)器人操作或復(fù)雜決策任務(wù)的強(qiáng)化學(xué)習(xí)庫(kù)最后核心是OPD教師模型訓(xùn)練。這里的“教師模型”不是指一個(gè)已經(jīng)完美無(wú)缺的專家而更像是一個(gè)“先行者”或“示范者”它可能策略不完美但它的經(jīng)驗(yàn)包括成功和失敗是學(xué)生模型學(xué)習(xí)的寶貴素材。我們最終的目標(biāo)是訓(xùn)練出一個(gè)能超越這位“教師”的、更“聰明”的學(xué)生模型。那么這適合誰(shuí)呢如果你正在研究強(qiáng)化學(xué)習(xí)特別是模仿學(xué)習(xí)、離線強(qiáng)化學(xué)習(xí)或者策略蒸餾想提升智能體在稀疏獎(jiǎng)勵(lì)或復(fù)雜環(huán)境下的表現(xiàn)那這個(gè)內(nèi)容就是為你準(zhǔn)備的。即使你對(duì)OpenClaw-RL不熟但理解OPD的思想和實(shí)現(xiàn)流程也能輕松遷移到其他RL框架中。接下來(lái)我們就拆開(kāi)揉碎了看看怎么一步步讓AI學(xué)會(huì)“吃一塹長(zhǎng)一智”。2. OPD核心思想與為什么需要“后悔”在深入代碼之前我們必須先搞清楚OPD到底在解決什么問(wèn)題以及“后悔”這個(gè)概念是如何被量化和利用的。傳統(tǒng)的強(qiáng)化學(xué)習(xí)比如DQN、PPO是讓智能體通過(guò)與環(huán)境交互根據(jù)獲得的獎(jiǎng)勵(lì)或懲罰來(lái)調(diào)整自己的行為。這就像教小孩走路摔一跤負(fù)獎(jiǎng)勵(lì)就知道下次要小心。但在很多現(xiàn)實(shí)任務(wù)中比如機(jī)器人抓取、游戲?qū)墨@取高質(zhì)量、稠密的獎(jiǎng)勵(lì)信號(hào)非常困難或者交互成本極高。智能體很容易陷入局部最優(yōu)或者探索效率極低。模仿學(xué)習(xí)Imitation Learning是一種思路直接給智能體看專家演示專家軌跡讓它照著學(xué)。但這要求專家數(shù)據(jù)必須高質(zhì)量且充足成本很高。而且如果專家也不是完美的呢學(xué)生最多只能達(dá)到老師的水平無(wú)法青出于藍(lán)。OPD提供了一條中間道路。它不要求教師模型是最優(yōu)策略甚至允許教師策略是次優(yōu)的。它的核心是利用教師模型產(chǎn)生的軌跡狀態(tài)-動(dòng)作序列通過(guò)離線策略評(píng)估的方法比如重要性采樣、Fitted Q Evaluation來(lái)估計(jì)這些軌跡中每個(gè)決策的“優(yōu)勢(shì)”Advantage或“后悔值”Regret。這個(gè)“后悔值”衡量的是在某個(gè)狀態(tài)下教師采取的動(dòng)作相比于可能的最佳動(dòng)作差了多少。2.1 “后悔”的數(shù)學(xué)化優(yōu)勢(shì)函數(shù)與Q值怎么計(jì)算這個(gè)“后悔”呢這里就需要引入強(qiáng)化學(xué)習(xí)里的兩個(gè)核心函數(shù)狀態(tài)價(jià)值函數(shù)V(s)和動(dòng)作價(jià)值函數(shù)Q(s, a)。V(s)表示從狀態(tài)s開(kāi)始遵循當(dāng)前策略能獲得的期望累積回報(bào)。它評(píng)價(jià)一個(gè)狀態(tài)“好不好”。Q(s, a)表示在狀態(tài)s下采取動(dòng)作a然后遵循當(dāng)前策略能獲得的期望累積回報(bào)。它評(píng)價(jià)一個(gè)狀態(tài)-動(dòng)作對(duì)“好不好”。那么優(yōu)勢(shì)函數(shù)A(s, a) Q(s, a) - V(s)。它的含義非常直觀在狀態(tài)s下采取動(dòng)作a比遵循當(dāng)前策略的平均水平好或差多少。如果A(s, a) 0說(shuō)明這個(gè)動(dòng)作比“平常表現(xiàn)”要好是值得鼓勵(lì)的如果A(s, a) 0說(shuō)明這個(gè)動(dòng)作拖了后腿相當(dāng)于一次“后悔”。在OPD中我們使用教師策略π_teacher與環(huán)境交互收集到一批軌跡數(shù)據(jù)D {(s_t, a_t, s_{t1}, r_t)}。然后我們利用這批數(shù)據(jù)通過(guò)離線評(píng)估算法例如訓(xùn)練一個(gè)Q網(wǎng)絡(luò)來(lái)擬合教師數(shù)據(jù)中的回報(bào)估算出教師軌跡中每個(gè)(s_t, a_t)對(duì)應(yīng)的Q_teacher(s_t, a_t)。同時(shí)我們也能估算出V_teacher(s_t)例如通過(guò)對(duì)所有可能動(dòng)作的Q值按教師策略概率加權(quán)平均或者直接用另一個(gè)網(wǎng)絡(luò)擬合狀態(tài)價(jià)值。這樣一來(lái)我們就能計(jì)算出每個(gè)教師動(dòng)作的優(yōu)勢(shì)值A(chǔ)_teacher(s_t, a_t) Q_teacher(s_t, a_t) - V_teacher(s_t)。這個(gè)A_teacher(s_t, a_t)就是我們量化后的“后悔”當(dāng)它為負(fù)時(shí)或“驚喜”當(dāng)它為正時(shí)。學(xué)生模型的學(xué)習(xí)目標(biāo)就是要去模仿那些優(yōu)勢(shì)值為正表現(xiàn)好的動(dòng)作同時(shí)避免或糾正那些優(yōu)勢(shì)值為負(fù)表現(xiàn)差即令人“后悔”的動(dòng)作。它不僅僅模仿行為更模仿行為背后的“價(jià)值判斷”。2.2 OPD與行為克隆、DQN的區(qū)別為了更清楚理解OPD的定位我們把它和常見(jiàn)方法做個(gè)對(duì)比方法數(shù)據(jù)來(lái)源學(xué)習(xí)目標(biāo)優(yōu)點(diǎn)缺點(diǎn)行為克隆專家軌跡 (s, a)最小化動(dòng)作預(yù)測(cè)誤差簡(jiǎn)單直接樣本效率高需要完美專家復(fù)合誤差累積無(wú)法超越專家DQN在線交互 (s, a, r, s)最小化時(shí)序差分誤差能發(fā)現(xiàn)新策略理論上有最優(yōu)解探索成本高需要稠密獎(jiǎng)勵(lì)訓(xùn)練不穩(wěn)定OPD教師軌跡 (s, a, r, s)最大化期望優(yōu)勢(shì)值能利用次優(yōu)數(shù)據(jù)可超越教師樣本效率較高依賴離線評(píng)估的準(zhǔn)確性計(jì)算復(fù)雜度稍高注意OPD中的“教師”不一定是一個(gè)人也可以是一個(gè)訓(xùn)練到一半的RL策略、一個(gè)基于規(guī)則的控制器甚至是多個(gè)不同策略的混合。這大大拓寬了可用數(shù)據(jù)的來(lái)源。所以O(shè)PD的精妙之處在于它把“模仿”升級(jí)成了“批判性模仿”。學(xué)生模型不再盲目照搬老師的每一個(gè)動(dòng)作而是學(xué)會(huì)了評(píng)價(jià)“老師在這個(gè)地方這么干其實(shí)挺蠢的優(yōu)勢(shì)為負(fù)我下次得換個(gè)法子?!?或者“老師這手操作真妙優(yōu)勢(shì)為正我得好好學(xué)?!?這個(gè)過(guò)程就是AI從“后悔”中學(xué)會(huì)“聰明”的本質(zhì)。3. OpenClaw-RL框架下的OPD實(shí)戰(zhàn)設(shè)計(jì)理解了理論我們就要在OpenClaw-RL這個(gè)具體框架里把它實(shí)現(xiàn)。OpenClaw-RL通常用于機(jī)器人靈巧操作任務(wù)比如抓取、擺放、旋擰等。這些任務(wù)狀態(tài)空間圖像、關(guān)節(jié)角度和動(dòng)作空間連續(xù)電機(jī)控制都非常復(fù)雜獎(jiǎng)勵(lì)函數(shù)難以設(shè)計(jì)因此OPD這類方法特別有吸引力。我們的實(shí)戰(zhàn)目標(biāo)可以設(shè)定為訓(xùn)練一個(gè)機(jī)械爪Claw完成將某個(gè)物體從A點(diǎn)抓取并放到B點(diǎn)的任務(wù)。我們有一個(gè)基于傳統(tǒng)控制器或者簡(jiǎn)單RL訓(xùn)練出來(lái)的“教師策略”這個(gè)策略成功率可能只有60%且動(dòng)作有時(shí)冗余、不流暢。我們要用OPD訓(xùn)練一個(gè)“學(xué)生策略”目標(biāo)是超越教師達(dá)到85%以上的成功率并且動(dòng)作更優(yōu)化。3.1 系統(tǒng)整體架構(gòu)設(shè)計(jì)整個(gè)OPD訓(xùn)練流程可以分解為四個(gè)核心模塊它們形成一個(gè)閉環(huán)數(shù)據(jù)收集模塊運(yùn)行教師策略π_teacher在環(huán)境中采集大量軌跡數(shù)據(jù)存儲(chǔ)為經(jīng)驗(yàn)回放緩沖區(qū)D_teacher。每條數(shù)據(jù)包括狀態(tài)s_t動(dòng)作a_t獎(jiǎng)勵(lì)r_t下一狀態(tài)s_{t1}回合結(jié)束標(biāo)志done。實(shí)操要點(diǎn)采集的數(shù)據(jù)量要足夠大以覆蓋任務(wù)的各種狀態(tài)。教師策略可以是隨機(jī)噪聲稍小的策略以增加數(shù)據(jù)的多樣性。離線評(píng)估模塊這是OPD的核心。使用D_teacher中的數(shù)據(jù)訓(xùn)練一個(gè)Q值網(wǎng)絡(luò)Q_phi(s, a)和一個(gè)狀態(tài)價(jià)值網(wǎng)絡(luò)V_psi(s)。目標(biāo)是讓Q_phi能準(zhǔn)確預(yù)測(cè)教師數(shù)據(jù)中累積回報(bào)的期望。常用方法Fitted Q Evaluation (FQE)。通過(guò)最小化時(shí)序差分TD誤差來(lái)訓(xùn)練Q網(wǎng)絡(luò)L E[(r γ * Q_phi(s, a) - Q_phi(s, a))^2]其中a是根據(jù)教師策略在s下采樣的動(dòng)作。V網(wǎng)絡(luò)可以從Q網(wǎng)絡(luò)推導(dǎo)也可以獨(dú)立訓(xùn)練。優(yōu)勢(shì)計(jì)算與數(shù)據(jù)過(guò)濾模塊對(duì)于D_teacher中的每一個(gè)數(shù)據(jù)點(diǎn)(s, a)利用訓(xùn)練好的Q_phi和V_psi計(jì)算優(yōu)勢(shì)值A(chǔ)(s, a) Q_phi(s, a) - V_psi(s)。我們可以根據(jù)優(yōu)勢(shì)值對(duì)數(shù)據(jù)進(jìn)行過(guò)濾或加權(quán)。常見(jiàn)技巧只保留優(yōu)勢(shì)值為正的數(shù)據(jù)即教師做得好的部分給學(xué)生學(xué)習(xí)?;蛘呓o每條數(shù)據(jù)分配一個(gè)權(quán)重例如weight exp(A(s, a) / temperature)優(yōu)勢(shì)越高的數(shù)據(jù)權(quán)重越大。學(xué)生策略訓(xùn)練模塊學(xué)生策略π_theta是一個(gè)神經(jīng)網(wǎng)絡(luò)如高斯策略。它的訓(xùn)練目標(biāo)不再是簡(jiǎn)單的行為克隆模仿動(dòng)作a而是最大化它所采取的動(dòng)作的預(yù)期優(yōu)勢(shì)值。損失函數(shù)可以設(shè)計(jì)為L(zhǎng)(θ) - E_{s~D} [ A(s, π_θ(s)) ] 同時(shí)可以加上一個(gè)與教師動(dòng)作分布KL散度的約束防止策略偏離太遠(yuǎn)導(dǎo)致不穩(wěn)定。實(shí)現(xiàn)方式這類似于策略梯度。我們可以用重參數(shù)化技巧采樣學(xué)生動(dòng)作然后用計(jì)算出的優(yōu)勢(shì)值作為權(quán)重來(lái)更新策略網(wǎng)絡(luò)。這四個(gè)模塊構(gòu)成了迭代優(yōu)化的基礎(chǔ)。學(xué)生策略提升后甚至可以將其作為新的“教師”收集數(shù)據(jù)重新進(jìn)行離線評(píng)估和訓(xùn)練實(shí)現(xiàn)自我進(jìn)化。3.2 關(guān)鍵超參數(shù)與設(shè)計(jì)選擇在動(dòng)手寫代碼前有幾個(gè)關(guān)鍵設(shè)計(jì)需要想清楚網(wǎng)絡(luò)結(jié)構(gòu)Q_phi和π_theta的輸入是狀態(tài)s可能是圖像和向量狀態(tài)的融合輸出分別是標(biāo)量Q值和動(dòng)作分布參數(shù)。網(wǎng)絡(luò)深度和寬度需要根據(jù)任務(wù)復(fù)雜度調(diào)整。對(duì)于機(jī)械爪視覺(jué)任務(wù)通常使用CNN提取圖像特征再與向量狀態(tài)拼接后輸入全連接層。優(yōu)勢(shì)估計(jì)的準(zhǔn)確性這是OPD成敗的關(guān)鍵。FQE的訓(xùn)練穩(wěn)定性需要關(guān)注。技巧包括使用雙Q網(wǎng)絡(luò)減少過(guò)估計(jì)、使用目標(biāo)網(wǎng)絡(luò)穩(wěn)定訓(xùn)練、對(duì)Q值進(jìn)行歸一化等。數(shù)據(jù)過(guò)濾閾值優(yōu)勢(shì)值多大才算“好”這需要一個(gè)閾值??梢詮?開(kāi)始逐步調(diào)整。也可以使用百分位例如只保留優(yōu)勢(shì)值排名前50%的數(shù)據(jù)。策略約束強(qiáng)度在優(yōu)化學(xué)生策略時(shí)完全放開(kāi)可能會(huì)導(dǎo)致在優(yōu)勢(shì)估計(jì)不準(zhǔn)的區(qū)域做出極端行為。因此需要加入與教師策略的KL散度約束系數(shù)β需要調(diào)優(yōu)L_total -E[A(s, π_θ(s))] β * KL(π_θ(·|s) || π_teacher(·|s))。溫度系數(shù)τ在基于權(quán)重的數(shù)據(jù)采樣中溫度τ控制了對(duì)高優(yōu)勢(shì)數(shù)據(jù)的偏好程度。τ越小越傾向于只學(xué)習(xí)最好的那些片段。4. 實(shí)操步驟一教師數(shù)據(jù)收集與環(huán)境搭建我們假設(shè)已經(jīng)有一個(gè)在OpenClaw-RL環(huán)境中能基本運(yùn)行但表現(xiàn)不完美的教師策略。這個(gè)策略可能是一個(gè)訓(xùn)練了100萬(wàn)步的PPO模型成功率飽和在65%。4.1 準(zhǔn)備教師策略與環(huán)境首先確保你的OpenClaw-RL環(huán)境例如一個(gè)模擬的機(jī)器人抓取環(huán)境可以正常導(dǎo)入和運(yùn)行。教師策略通常保存為一個(gè)PyTorch的.pt文件。import torch import gym # 假設(shè)你的環(huán)境是自定義的需要注冊(cè)或直接導(dǎo)入 from openclaw_env import OpenClawGraspEnv # 初始化環(huán)境 env OpenClawGraspEnv(render_modergb_array) state_dim env.observation_space.shape action_dim env.action_space.shape[0] # 加載教師策略模型 class TeacherPolicy(torch.nn.Module): def __init__(self, state_dim, action_dim): super().__init__() # 定義網(wǎng)絡(luò)結(jié)構(gòu)需與保存時(shí)一致 self.fc torch.nn.Sequential( torch.nn.Linear(state_dim[0], 256), torch.nn.ReLU(), torch.nn.Linear(256, 256), torch.nn.ReLU(), torch.nn.Linear(256, action_dim * 2) # 輸出均值和對(duì)數(shù)標(biāo)準(zhǔn)差 ) def forward(self, state): return self.fc(state) teacher_model TeacherPolicy(state_dim, action_dim) teacher_model.load_state_dict(torch.load(./teacher_model_1M.pt)) teacher_model.eval()4.2 收集并存儲(chǔ)軌跡數(shù)據(jù)接下來(lái)運(yùn)行教師策略與環(huán)境交互收集數(shù)據(jù)。我們不僅存儲(chǔ)(s, a, r, s, done)為了后續(xù)方便最好也存儲(chǔ)每個(gè)回合的累計(jì)回報(bào)return和優(yōu)勢(shì)值先占位。import numpy as np from collections import deque import pickle def collect_teacher_data(env, model, num_episodes1000, max_steps500): 收集教師策略的軌跡數(shù)據(jù) buffer { states: [], actions: [], rewards: [], next_states: [], dones: [], returns: [], # 用于后續(xù)驗(yàn)證 advantages: [] # 先占位填0 } for ep in range(num_episodes): state, _ env.reset() episode_states, episode_actions, episode_rewards [], [], [] done False steps 0 while not done and steps max_steps: with torch.no_grad(): state_tensor torch.FloatTensor(state).unsqueeze(0) # 教師策略輸出動(dòng)作分布參數(shù)這里假設(shè)是高斯分布 output model(state_tensor) mean, log_std output.chunk(2, dim-1) std torch.exp(log_std) dist torch.distributions.Normal(mean, std) action dist.sample().numpy().flatten() # 也可以直接取均值但采樣能保留一定的探索性 # action mean.numpy().flatten() next_state, reward, terminated, truncated, _ env.step(action) done terminated or truncated buffer[states].append(state.copy()) buffer[actions].append(action.copy()) buffer[rewards].append(reward) buffer[next_states].append(next_state.copy()) buffer[dones].append(done) buffer[advantages].append(0.0) # 占位 episode_states.append(state) episode_actions.append(action) episode_rewards.append(reward) state next_state steps 1 # 計(jì)算本回合的回報(bào)Monte Carlo Return returns [] G 0 for r in reversed(episode_rewards): G r 0.99 * G # 折扣因子γ0.99 returns.insert(0, G) buffer[returns].extend(returns) if (ep 1) % 100 0: print(fEpisode {ep1}, Total Steps: {len(buffer[states])}, Avg Return: {np.mean(returns):.2f}) # 轉(zhuǎn)換為numpy數(shù)組節(jié)省空間 for key in buffer: buffer[key] np.array(buffer[key]) # 保存數(shù)據(jù) with open(./teacher_data.pkl, wb) as f: pickle.dump(buffer, f) print(f數(shù)據(jù)收集完成共 {len(buffer[states])} 條數(shù)據(jù)。) return buffer # 開(kāi)始收集 teacher_buffer collect_teacher_data(env, teacher_model, num_episodes500)實(shí)操心得收集數(shù)據(jù)時(shí)建議讓教師策略帶有一定的隨機(jī)性如高斯采樣而不是完全確定性輸出。這能增加數(shù)據(jù)的覆蓋度避免學(xué)生只學(xué)到一種僵化的模式。數(shù)據(jù)量建議在10萬(wàn)條以上對(duì)于復(fù)雜任務(wù)可能需要更多。5. 實(shí)操步驟二離線評(píng)估與優(yōu)勢(shì)值計(jì)算有了數(shù)據(jù)我們就可以開(kāi)始最關(guān)鍵的步驟評(píng)估教師策略在每個(gè)決策點(diǎn)上的價(jià)值即計(jì)算Q值和優(yōu)勢(shì)值。5.1 實(shí)現(xiàn)Fitted Q Evaluation (FQE)我們將實(shí)現(xiàn)一個(gè)相對(duì)標(biāo)準(zhǔn)的FQE來(lái)訓(xùn)練Q網(wǎng)絡(luò)。為了穩(wěn)定我們使用目標(biāo)網(wǎng)絡(luò)和雙Q網(wǎng)絡(luò)。import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, TensorDataset class QNetwork(nn.Module): Q(s, a) 網(wǎng)絡(luò) def __init__(self, state_dim, action_dim, hidden_dim256): super().__init__() # 假設(shè)狀態(tài)和動(dòng)作先拼接 self.net nn.Sequential( nn.Linear(state_dim action_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, 1) # 輸出標(biāo)量Q值 ) def forward(self, state, action): x torch.cat([state, action], dim1) return self.net(x) def train_fqe(buffer, state_dim, action_dim, epochs50, batch_size256, lr1e-3): 訓(xùn)練FQE Q網(wǎng)絡(luò) # 準(zhǔn)備數(shù)據(jù) states torch.FloatTensor(buffer[states]) actions torch.FloatTensor(buffer[actions]) rewards torch.FloatTensor(buffer[rewards]) next_states torch.FloatTensor(buffer[next_states]) dones torch.FloatTensor(buffer[dones]) # 初始化兩個(gè)Q網(wǎng)絡(luò)和目標(biāo)網(wǎng)絡(luò)減少過(guò)估計(jì) q_net1 QNetwork(state_dim, action_dim) q_net2 QNetwork(state_dim, action_dim) target_q_net1 QNetwork(state_dim, action_dim) target_q_net2 QNetwork(state_dim, action_dim) target_q_net1.load_state_dict(q_net1.state_dict()) target_q_net2.load_state_dict(q_net2.state_dict()) optimizer1 optim.Adam(q_net1.parameters(), lrlr) optimizer2 optim.Adam(q_net2.parameters(), lrlr) dataset TensorDataset(states, actions, rewards, next_states, dones) dataloader DataLoader(dataset, batch_sizebatch_size, shuffleTrue) for epoch in range(epochs): total_loss 0 for batch_states, batch_actions, batch_rewards, batch_next_states, batch_dones in dataloader: # 計(jì)算目標(biāo)Q值r γ * min(Q1_target, Q2_target) with torch.no_grad(): # 教師策略在下一狀態(tài)的動(dòng)作這里需要教師策略模型我們近似使用數(shù)據(jù)中的下一個(gè)動(dòng)作 # 注意嚴(yán)格FQE需要教師策略π_teacher。這里我們使用一個(gè)簡(jiǎn)化假設(shè)數(shù)據(jù)中的下一個(gè)動(dòng)作就是教師策略給出的。 # 更好的做法是用教師策略模型對(duì)batch_next_states重新采樣動(dòng)作。 next_actions torch.FloatTensor(buffer[actions][...]) # 這里需要索引對(duì)應(yīng)簡(jiǎn)化處理 # 實(shí)際應(yīng)調(diào)用 teacher_model(batch_next_states) 采樣動(dòng)作此處為示例簡(jiǎn)化。 # 我們假設(shè)next_actions已準(zhǔn)備好。 target_q1 target_q_net1(batch_next_states, next_actions) target_q2 target_q_net2(batch_next_states, next_actions) target_q torch.min(target_q1, target_q2) # 雙Q學(xué)習(xí)取最小 target batch_rewards.unsqueeze(1) 0.99 * (1 - batch_dones.unsqueeze(1)) * target_q # 計(jì)算當(dāng)前Q值 current_q1 q_net1(batch_states, batch_actions) current_q2 q_net2(batch_states, batch_actions) # 計(jì)算損失 loss1 nn.MSELoss()(current_q1, target) loss2 nn.MSELoss()(current_q2, target) # 反向傳播 optimizer1.zero_grad() loss1.backward() optimizer1.step() optimizer2.zero_grad() loss2.backward() optimizer2.step() total_loss (loss1.item() loss2.item()) / 2 # 軟更新目標(biāo)網(wǎng)絡(luò) tau 0.005 for target_param, param in zip(target_q_net1.parameters(), q_net1.parameters()): target_param.data.copy_(tau * param.data (1.0 - tau) * target_param.data) for target_param, param in zip(target_q_net2.parameters(), q_net2.parameters()): target_param.data.copy_(tau * param.data (1.0 - tau) * target_param.data) if (epoch 1) % 10 0: print(fFQE Epoch {epoch1}, Avg Loss: {total_loss/len(dataloader):.4f}) # 我們使用q_net1作為最終的Q評(píng)估器 return q_net1 # 訓(xùn)練Q網(wǎng)絡(luò) print(開(kāi)始訓(xùn)練FQE Q網(wǎng)絡(luò)...) q_net train_fqe(teacher_buffer, state_dim[0], action_dim) torch.save(q_net.state_dict(), ./fqe_q_net.pt)5.2 計(jì)算優(yōu)勢(shì)值并過(guò)濾數(shù)據(jù)有了訓(xùn)練好的Q網(wǎng)絡(luò)我們可以為緩沖區(qū)里的每條數(shù)據(jù)計(jì)算Q值。要計(jì)算優(yōu)勢(shì)A(s,a)我們還需要V(s)。一個(gè)實(shí)用的近似是V(s) ≈ E_{a~π_teacher}[Q(s, a)]。我們可以用蒙特卡洛估計(jì)從教師策略中采樣多個(gè)動(dòng)作計(jì)算Q值的平均。def compute_advantages(buffer, q_net, teacher_model, num_samples10): 計(jì)算緩沖區(qū)中所有數(shù)據(jù)的優(yōu)勢(shì)值 states torch.FloatTensor(buffer[states]) actions torch.FloatTensor(buffer[actions]) advantages [] q_net.eval() teacher_model.eval() with torch.no_grad(): # 計(jì)算 Q(s, a) for the taken action q_values q_net(states, actions).squeeze().numpy() # 估計(jì) V(s) E[Q(s, a)] under teacher policy v_values [] for i, state in enumerate(states): state_repeated state.repeat(num_samples, 1) # 從教師策略采樣動(dòng)作 output teacher_model(state_repeated) mean, log_std output.chunk(2, dim-1) std torch.exp(log_std) dist torch.distributions.Normal(mean, std) sampled_actions dist.sample() # 計(jì)算采樣動(dòng)作的Q值并取平均 q_samples q_net(state_repeated, sampled_actions) v q_samples.mean().item() v_values.append(v) v_values np.array(v_values) # 優(yōu)勢(shì) A(s,a) Q(s,a) - V(s) adv q_values - v_values advantages adv.tolist() buffer[advantages] np.array(advantages) print(f優(yōu)勢(shì)值計(jì)算完成。范圍[{np.min(adv):.3f}, {np.max(adv):.3f}], 均值{np.mean(adv):.3f}) return buffer, adv # 計(jì)算優(yōu)勢(shì) teacher_buffer, all_advantages compute_advantages(teacher_buffer, q_net, teacher_model) # 數(shù)據(jù)過(guò)濾只保留優(yōu)勢(shì)值為正的數(shù)據(jù)教師做得好的部分 positive_mask all_advantages 0 filtered_states teacher_buffer[states][positive_mask] filtered_actions teacher_buffer[actions][positive_mask] filtered_advantages teacher_buffer[advantages][positive_mask] print(f原始數(shù)據(jù)量{len(teacher_buffer[states])}, 過(guò)濾后優(yōu)勢(shì)0數(shù)據(jù)量{len(filtered_states)}) print(f正優(yōu)勢(shì)比例{len(filtered_states)/len(teacher_buffer[states])*100:.1f}%)注意事項(xiàng)計(jì)算V(s)時(shí)采樣動(dòng)作的數(shù)量num_samples會(huì)影響估計(jì)的準(zhǔn)確性。數(shù)量太少估計(jì)方差大數(shù)量太多計(jì)算成本高。一般取10-20是一個(gè)折中的選擇。另外如果教師策略是確定性的比如直接輸出均值那么V(s)就等于Q(s, π_teacher(s))計(jì)算更簡(jiǎn)單。6. 實(shí)操步驟三學(xué)生策略訓(xùn)練與優(yōu)化現(xiàn)在我們有了“精華”數(shù)據(jù)——教師表現(xiàn)好的那些狀態(tài)-動(dòng)作對(duì)以及它們對(duì)應(yīng)的優(yōu)勢(shì)值可以看作是一種加權(quán)的重要性。接下來(lái)我們訓(xùn)練學(xué)生策略π_θ讓它學(xué)會(huì)采取具有高優(yōu)勢(shì)值的動(dòng)作。6.1 定義學(xué)生策略網(wǎng)絡(luò)與損失函數(shù)學(xué)生策略網(wǎng)絡(luò)結(jié)構(gòu)可以和教師類似但參數(shù)獨(dú)立。class StudentPolicy(nn.Module): def __init__(self, state_dim, action_dim, hidden_dim256): super().__init__() self.fc nn.Sequential( nn.Linear(state_dim, hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, hidden_dim), nn.ReLU(), ) self.mean_layer nn.Linear(hidden_dim, action_dim) self.log_std_layer nn.Linear(hidden_dim, action_dim) # 可訓(xùn)練的對(duì)數(shù)標(biāo)準(zhǔn)差參數(shù) self.log_std nn.Parameter(torch.zeros(1, action_dim)) def forward(self, state): x self.fc(state) mean self.mean_layer(x) # 使用可訓(xùn)練的參數(shù)而非網(wǎng)絡(luò)輸出更穩(wěn)定 log_std self.log_std.expand_as(mean) std torch.exp(log_std) return mean, std def train_student_policy(filtered_states, filtered_actions, filtered_advantages, teacher_model, epochs100, batch_size64, lr1e-4, kl_coef0.1): 訓(xùn)練學(xué)生策略最大化優(yōu)勢(shì)同時(shí)約束與教師策略的KL散度 states torch.FloatTensor(filtered_states) actions torch.FloatTensor(filtered_actions) advantages torch.FloatTensor(filtered_advantages).unsqueeze(1) # 保持維度 student_model StudentPolicy(state_dim[0], action_dim) optimizer optim.Adam(student_model.parameters(), lrlr) # 我們還需要教師模型來(lái)計(jì)算KL散度 teacher_model.eval() dataset TensorDataset(states, actions, advantages) dataloader DataLoader(dataset, batch_sizebatch_size, shuffleTrue) for epoch in range(epochs): total_policy_loss 0 total_kl_loss 0 for batch_states, batch_actions, batch_advantages in dataloader: # 學(xué)生策略輸出 student_mean, student_std student_model(batch_states) student_dist torch.distributions.Normal(student_mean, student_std) # 教師策略輸出用于KL計(jì)算 with torch.no_grad(): teacher_output teacher_model(batch_states) teacher_mean, teacher_log_std teacher_output.chunk(2, dim-1) teacher_std torch.exp(teacher_log_std) teacher_dist torch.distributions.Normal(teacher_mean, teacher_std) # 策略梯度損失 -E[ A * log π_θ(a|s) ] # 注意這里我們使用重參數(shù)化技巧但對(duì)于已采樣的動(dòng)作我們計(jì)算其對(duì)數(shù)概率 log_prob student_dist.log_prob(batch_actions).sum(dim-1, keepdimTrue) policy_loss - (batch_advantages * log_prob).mean() # KL散度損失 E[ KL( π_θ || π_teacher ) ] kl_div torch.distributions.kl.kl_divergence(student_dist, teacher_dist).sum(dim-1, keepdimTrue) kl_loss kl_div.mean() # 總損失 loss policy_loss kl_coef * kl_loss optimizer.zero_grad() loss.backward() torch.nn.utils.clip_grad_norm_(student_model.parameters(), max_norm0.5) # 梯度裁剪 optimizer.step() total_policy_loss policy_loss.item() total_kl_loss kl_loss.item() if (epoch 1) % 20 0: avg_pl total_policy_loss / len(dataloader) avg_kl total_kl_loss / len(dataloader) print(fEpoch {epoch1}: Policy Loss{avg_pl:.4f}, KL Loss{avg_kl:.4f}) print(學(xué)生策略訓(xùn)練完成。) return student_model print(開(kāi)始訓(xùn)練學(xué)生策略...) student_model train_student_policy(filtered_states, filtered_actions, filtered_advantages, teacher_model) torch.save(student_model.state_dict(), ./student_model_opd.pt)6.2 訓(xùn)練技巧與迭代優(yōu)化上面的訓(xùn)練循環(huán)是一個(gè)基礎(chǔ)版本。在實(shí)際操作中你可能需要加入以下技巧來(lái)提升效果優(yōu)勢(shì)歸一化在計(jì)算策略損失前對(duì)batch_advantages進(jìn)行歸一化減去均值除以標(biāo)準(zhǔn)差可以穩(wěn)定訓(xùn)練。batch_advantages (batch_advantages - batch_advantages.mean()) / (batch_advantages.std() 1e-8)自適應(yīng)KL系數(shù)固定KL系數(shù)可能難以調(diào)優(yōu)。可以設(shè)計(jì)一個(gè)自適應(yīng)機(jī)制例如當(dāng)KL散度超過(guò)目標(biāo)值時(shí)增大系數(shù)低于時(shí)減小系數(shù)。多次迭代與數(shù)據(jù)重估訓(xùn)練完一代學(xué)生策略后可以用它作為新的“教師”去收集數(shù)據(jù)或與舊數(shù)據(jù)混合然后用FQE重新評(píng)估新數(shù)據(jù)計(jì)算新的優(yōu)勢(shì)值再訓(xùn)練下一代學(xué)生。這個(gè)過(guò)程可以迭代數(shù)次讓策略不斷進(jìn)化。集成與平滑訓(xùn)練多個(gè)Q網(wǎng)絡(luò)進(jìn)行集成用其輸出的最小值或平均值作為更穩(wěn)健的優(yōu)勢(shì)估計(jì)可以減少離線評(píng)估的誤差。7. 效果評(píng)估與問(wèn)題排查訓(xùn)練完成后我們必須在獨(dú)立的環(huán)境中對(duì)學(xué)生策略進(jìn)行測(cè)試并與原始教師策略對(duì)比。7.1 性能對(duì)比測(cè)試編寫一個(gè)測(cè)試函數(shù)在環(huán)境中運(yùn)行策略若干回合統(tǒng)計(jì)成功率、平均回報(bào)等指標(biāo)。def evaluate_policy(env, model, num_episodes50, max_steps500, deterministicTrue): 評(píng)估策略性能 total_rewards [] success_count 0 model.eval() for ep in range(num_episodes): state, _ env.reset() episode_reward 0 done False steps 0 while not done and steps max_steps: with torch.no_grad(): state_tensor torch.FloatTensor(state).unsqueeze(0) mean, std model(state_tensor) if deterministic: action mean.numpy().flatten() # 測(cè)試時(shí)用確定性動(dòng)作 else: dist torch.distributions.Normal(mean, std) action dist.sample().numpy().flatten() next_state, reward, terminated, truncated, info env.step(action) done terminated or truncated episode_reward reward state next_state steps 1 # 假設(shè)環(huán)境在info中提供success標(biāo)志 if done and info.get(success, False): success_count 1 total_rewards.append(episode_reward) avg_reward np.mean(total_rewards) success_rate success_count / num_episodes * 100 print(f評(píng)估結(jié)果 ({num_episodes}回合):) print(f 平均回報(bào): {avg_reward:.2f}) print(f 成功率: {success_rate:.1f}%) return avg_reward, success_rate print(評(píng)估教師策略...) teacher_avg_reward, teacher_success evaluate_policy(env, teacher_model, num_episodes20) print(\n評(píng)估學(xué)生策略...) student_avg_reward, student_success evaluate_policy(env, student_model, num_episodes20)7.2 常見(jiàn)問(wèn)題與排查技巧在實(shí)際操作中你可能會(huì)遇到以下典型問(wèn)題問(wèn)題現(xiàn)象可能原因排查與解決思路學(xué)生策略性能毫無(wú)提升甚至下降1. 優(yōu)勢(shì)估計(jì)不準(zhǔn)FQE訓(xùn)練失敗。2. 數(shù)據(jù)過(guò)濾太激進(jìn)正樣本太少。3. KL約束太強(qiáng)學(xué)生無(wú)法偏離教師。1.檢查FQE繪制Q值預(yù)測(cè)與真實(shí)回報(bào)蒙特卡洛的散點(diǎn)圖看相關(guān)性。確保FQE訓(xùn)練充分損失收斂。2.調(diào)整過(guò)濾閾值嘗試保留優(yōu)勢(shì)值前70%的數(shù)據(jù)而不是僅大于0的數(shù)據(jù)?;蛘呤褂眉訖?quán)采樣。3.調(diào)整KL系數(shù)逐步減小kl_coef如從0.1到0.01給學(xué)生更多探索空間。訓(xùn)練不穩(wěn)定損失劇烈波動(dòng)1. 優(yōu)勢(shì)值方差過(guò)大。2. 梯度爆炸。3. 批量大小不合適。1.優(yōu)勢(shì)歸一化強(qiáng)制對(duì)每批數(shù)據(jù)的優(yōu)勢(shì)進(jìn)行歸一化。2.梯度裁剪已在上文代碼中加入檢查裁剪閾值max_norm。3.增大批量嘗試增大batch_size如256。學(xué)生策略很快收斂到單一模式失去多樣性1. 過(guò)濾后數(shù)據(jù)多樣性不足。2. 策略網(wǎng)絡(luò)表達(dá)能力不夠或探索不足。1.數(shù)據(jù)增強(qiáng)對(duì)過(guò)濾后的狀態(tài)進(jìn)行輕微擾動(dòng)如添加噪聲增加泛化性。2.探索鼓勵(lì)在損失函數(shù)中加入策略熵的獎(jiǎng)勵(lì)項(xiàng)-β * H(π_θ)鼓勵(lì)探索。離線評(píng)估的Q值普遍過(guò)于樂(lè)觀或悲觀1. 分布偏移問(wèn)題。FQE在教師數(shù)據(jù)分布上訓(xùn)練但學(xué)生策略可能訪問(wèn)到不同的狀態(tài)。1.保守Q學(xué)習(xí)在FQE目標(biāo)中引入懲罰項(xiàng)對(duì)OOD分布外動(dòng)作給予較低Q值。2.迭代更新采用迭代式OPD用學(xué)生策略收集新數(shù)據(jù)混合訓(xùn)練讓Q網(wǎng)絡(luò)適應(yīng)新分布。計(jì)算資源消耗大訓(xùn)練慢1. FQE需要訓(xùn)練額外的Q網(wǎng)絡(luò)。2. 計(jì)算優(yōu)勢(shì)時(shí)需多次采樣。1.簡(jiǎn)化網(wǎng)絡(luò)使用更小的Q網(wǎng)絡(luò)。2.減少采樣數(shù)計(jì)算V(s)時(shí)采樣數(shù)num_samples可減至5。3.批次計(jì)算對(duì)整批狀態(tài)一次性采樣多個(gè)動(dòng)作利用GPU并行計(jì)算。一個(gè)關(guān)鍵的實(shí)操心得OPD的成功非常依賴于離線評(píng)估的質(zhì)量。在正式訓(xùn)練學(xué)生策略前務(wù)必花時(shí)間驗(yàn)證你的FQE Q網(wǎng)絡(luò)是可靠的。一個(gè)簡(jiǎn)單的檢查方法是從經(jīng)驗(yàn)緩沖區(qū)中隨機(jī)選取一些完整的軌跡用訓(xùn)練好的Q網(wǎng)絡(luò)估算軌跡起點(diǎn)狀態(tài)的Q值并與該軌跡的實(shí)際折扣回報(bào)Monte Carlo Return進(jìn)行比較。如果兩者趨勢(shì)一致不一定完全相等說(shuō)明Q網(wǎng)絡(luò)學(xué)習(xí)到了合理的價(jià)值函數(shù)。如果相差甚遠(yuǎn)你需要回頭檢查FQE的訓(xùn)練過(guò)程學(xué)習(xí)率、網(wǎng)絡(luò)結(jié)構(gòu)、目標(biāo)網(wǎng)絡(luò)更新頻率等。8. 進(jìn)階思考與擴(kuò)展方向當(dāng)你跑通了基礎(chǔ)的OPD流程后可以思考以下幾個(gè)方向來(lái)進(jìn)一步提升性能或適應(yīng)更復(fù)雜的場(chǎng)景混合策略教師教師不一定是一個(gè)單一策略。你可以收集來(lái)自多個(gè)不同策略甚至包括一些隨機(jī)策略的數(shù)據(jù)混合成一個(gè)大的經(jīng)驗(yàn)池。OPD的優(yōu)勢(shì)計(jì)算機(jī)制會(huì)自動(dòng)從中挑出“好”的行為學(xué)生可以博采眾長(zhǎng)。結(jié)合在線微調(diào)OPD可以作為一個(gè)強(qiáng)大的預(yù)訓(xùn)練或初始化方法。先用OPD從歷史數(shù)據(jù)中學(xué)到一個(gè)不錯(cuò)的策略然后再放到真實(shí)環(huán)境中進(jìn)行在線強(qiáng)化學(xué)習(xí)如PPO微調(diào)這樣可以大大減少在線交互的樣本消耗并提升訓(xùn)練安全性。處理高維視覺(jué)輸入如果狀態(tài)是圖像上述流程中的Q網(wǎng)絡(luò)和策略網(wǎng)絡(luò)都需要引入CNN編碼器。需要確保圖像編碼器在離線評(píng)估和策略訓(xùn)練中共享或分別訓(xùn)練得當(dāng)避免表征不一致。應(yīng)用于多任務(wù)學(xué)習(xí)OPD的思想可以擴(kuò)展到多任務(wù)。收集不同任務(wù)上的教師數(shù)據(jù)為每個(gè)任務(wù)分別計(jì)算優(yōu)勢(shì)。學(xué)生策略網(wǎng)絡(luò)可以共享主干但通過(guò)任務(wù)標(biāo)識(shí)來(lái)區(qū)分學(xué)習(xí)在不同任務(wù)下選擇高優(yōu)勢(shì)的動(dòng)作。讓AI從“后悔”中學(xué)習(xí)本質(zhì)上是將人類反思和歸納的能力賦予了算法。OPD教師模型訓(xùn)練提供了一條切實(shí)可行的路徑讓我們能夠利用那些不完美、但富含信息的數(shù)據(jù)培育出更“聰明”的智能體。這個(gè)過(guò)程里最耗時(shí)的往往不是寫代碼而是調(diào)參、診斷和迭代。耐心地分析優(yōu)勢(shì)值的分布、檢查Q網(wǎng)絡(luò)的預(yù)測(cè)質(zhì)量、觀察學(xué)生策略的行為變化這些細(xì)致的工作才是最終成功的關(guān)鍵。我自己的體會(huì)是當(dāng)看到學(xué)生策略第一次做出一個(gè)教師從未展示過(guò)的、更優(yōu)雅的解決方案時(shí)那種感覺(jué)就像看到學(xué)生真正理解了問(wèn)題的本質(zhì)而不是機(jī)械地模仿這大概就是強(qiáng)化學(xué)習(xí)讓人著迷的地方吧。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
深爱激情综合网| 亚洲av电影网站| 99re热在线视频| 久久资源网五月婷| 一區四區歐美日韓| 婷婷久久五月丁香| 99这里有精品久久97| www.婷婷五月天| 九月婷婷综合八月丁香在线观看| 国产成人一区二区三区在线观看| 日韩欧美一级大黄网站| 99免费在线视频| 婷婷色色综合激情| www.久久爱.c n| 午夜一区| 日日操,天天操| Caoub青青超碰| 青草五月天| 欧美性爱五月天| 全部老头和老太XXXXX| 成人五月天视频播放| 91无码高清| 久久五月丁香| 精品久久艹| 三级黄网站| 无码少妇高潮喷水A片免费| 五月停停激情网| 92国产福利| 9999久久久久| 欧美日韩成人在线网站| 亚洲婷婷六月天| 天天操五月天| 丁香六月婷| 天天日天天干天天插天天射| 操碰97| 国产XXXX搡XXXXX搡麻豆 | 婷婷丁香五月天狠狠| 九月激情综合婷婷| 久久性爱99国产| 成年人最刺激的综合网| 亚洲五月婷天天操| 在线看片av| 影音先锋男人女人| 亚洲最大视频| 狠狠干天天日| 五月丁香亚洲综合网| 99热人人操人人操| 噼里啪啦在线观看免费完整版视频 | 91视频五月丁香| 精品国产va久久久久| 68热超碰在线| 开心激情网五月天| 婷婷成人AV| 五月婷人妻| 丁香五月开心亚洲| 色播激情| 成人做爰A片免费看视频| 日本人人xxx| 9.1综合网| 久久九九囯产| 97在线观视频免费观看| 五月激情站| 99久久激情视频| 色噜噜狠狠色综合AV兰草影视| 国产成人AV不卡| 久久天堂网| 艹| 亚洲午夜av| 婷婷国产五月天17c| www婷婷| 欧美色性色好| 五月丁香花婷婷玉莉AV| 婷婷五月天综合蜜桃| 婷婷五月天精品| 无遮羞AV| 亚洲乱码精品久久久久..| 色婷婷六月天| 五月丁香综合| 战争与艾拉电影免费观看| 九九热99re8热免费观看| se色综合网| 少妇性BBB搡BBB爽爽爽视頻| 激情五月天色色网| 久久99综合| 久久少妇视频| 婷婷五月天干干| 天天天操天天天爰| 久久久妻人人人| 五月天综合久久丁香91| 9久9久| 亚洲久久天堂| 色五月婷婷在线观看第一页舔| 99热成人| 五月天.com| 五月婷激情| 九九热99精品在线| 五月婷在线色视频| 思思久久96热在精品国产,| 激情综合啪啪啪| 大香久久伊人网| 91久久久久久久久久18| 做爰丰满少妇1313| 欧美日韩中文国产一区发布| 伊人五月天| 99爱爱网| 激情綜合網址| 激情性爱五月| 91婷婷搞| 伊人久久大香网| 激情综合网色播五月| 精品A√| 麻豆五月丁香婷婷| 欧美综合五月丁香五月天| 亚洲综合色网站| 亚洲综合婷婷| 九九视频免费| 第四色色六月色综合| 国产精品成人AV在线| 人妻激情网| 懂色av粉嫩AV蜜臀AV| 天天干,天天日| 5月丁香啪啪啪| 国产精品电影网| 99热只有| 欧美99热| 99re8在这里只有精品| 99毛片| 色五月亚洲| 日欧大屏操| 亚洲激情.com| 日本天天色| 激情色色色| 婷婷色基地| 激情五月婷婷在线| 热99在线| 日韩狠狠色| 色婷婷AV在线| 1024日韩| 亚洲综合在线视频| 变态 另类 在线| 婷婷午夜| 狠狠干.com| 天天日中文| 这里只有精品96| 国产精品第一国产精品| 热婷婷av| 影音先锋天天日| 99九九中文字幕视频| 97操在线资源| 99视频35精品视频在线观看| 另类激情码| 五月丁香亭亭操逼| 日本的α片xxxwww| 亚洲色 视频| 夜夜夜夜夜骑撸| 亚洲天堂aaaa| 色9999日韩国产| 丁香五月天色婷婷| 日韩成人影片网站| 免费啪啪啪网站| 午夜成人在线免费视频| 久久性视频| 人人色人人摸人人看| 免费99情趣网视频| 婷婷射婷婷舔| 99热新网址| 99免费在线| 九九香蕉网| 久操欧美在线观看97| 91大操| 欧美精品A片一区在线观看| www99久久| 99操视频| 天天摸日日舔狠狠添婷婷婷| 五月天天天天天天天天天天天天天天天婷婷婷| 9久热| 久久香蕉网| 国内自拍97在线| 久久网址99热| 丁香五月日韩| 久久婷婷婷婷伊人| 外国碰视频网站97| 丁香五月天堂网| 亚洲黄网AV| 九月丁香婷婷网| 玖玖婷婷色五月| 大香蕉婷婷丁香天堂AV| 99热只有精品在线观看| 婷久久| 日本欧美成人片AAAA| 五月Huangsewang| 任你干aa| 久久er视频6| 狠狠干青青草| 五月丁香亭亭操逼| www,奇米影视| 91色涩| 三区激情四射av| 久久这里有精品视频在线免费观看| 五月丁香成人小说| 九九视频在线| 日本三级片片| 色六月丁香婷婷狠狠干| 婷婷娌伦网| 精品久久人妻| 色婷婷玖玖影院| 激情欧美婷婷| 欧洲激情精品婷婷| 五月天激情小说| 日本玖玖在线| 98毛片| 日日夜夜久| 色情婷婷五月天| 久久ri精品| 丁香婷婷色| 久久精品小视频| 激情五月婷黄版| 婷婷五月天激情综合深爱激情 | 成人久久天天x资源站| 天天日,天天插| 超碰人人干| 99爱视频免费| 超碰爱爱爱| 天天天久久久| 五月天丁香成人社| 久久这里只有精品视频15 | 99热精品免费| 97操操网| 欧美性二区| 国产精品日韩十五区| 亚洲无码播放| 丁香婷婷午夜| 亚洲行行色色| 色综合色色| 亚洲色婷婷| 天天综合91入口| 五月丁香六月婷婷中文版| 综合久久高清| 91伦| 五月色情网| 久久久ww| 婷婷五月综合色中文字幕| 色色色色色级无码| 色色99| 六月丁花香啪啪激情欧美| 男人天堂99| 五月婷庭丁香在线| 婷婷综合网| 天天肏天天肏| 99青青草| www.97视频| 蜜臀丁香黄色婷婷五月天| 五月丁香婷婷俺| www.色婷婷.com| 久久99久久久| 五月天综合婷婷| 日日噜噜夜夜狠狠久久丁香五月| 久久与婷婷| 牛牛碰免费| 99综合视频一体| 99在线免费视频| 26uuu欧美日本| 99视频这里有精品| 激情婷婷综合| 六月婷婷综合| 丁香综合婷婷开心激情网| 五月丁香婷婷网在线在线| 嫩草AV久久伊人妇女超级A| 亚洲av综合网| 五月丁香婷婷久久| 日本三久久| 丁香六月五月天| 婷婷色色综合| 五月天激情小说电影| 婷婷伊人綜合中文字幕小说| 99九九精品视频| 婷婷丁香五月综合激情小说| 久久丁香综合香蕉| 狠狠色综合网站| 夜精品无码A片一区二区蜜桃| 成人在线精品| 精品久热| 激情综合久久| 婷婷激情四射| 天天狠狠婷婷在线| 99热这里| 久久婷婷丁香五月一二三| 五月婷在线| 婷婷九月综合| www.五月天色色.com| 五月婷婷丁香五月婷婷丁香| 久久9RE热视频精品98| 色婷婷小说| 五月丁香婷婷狠狠操| 色五月色综合| 丁香五月婷婷社区| w婷婷五月婷婷w| 五月深情久久| 日韩黄黄| 国产精品激情AV久久久青桔| 亚洲 无码 中文字幕 中出| 99爱在线视频| 99aese| 无码激情AAAAA片-区区| 五月天色婷婷图片| 狠狠干最新地址| 九九久久这里只有精品XB| 国产亚洲精品久久久久久久久动漫| 亚州激情网站无码| 99视频| 色婷婷六月综合| 国产精品一区在线观看你懂的| 在线国产精品色| 色五月婷婷五月天| www,8050,午夜三级| 在线只有精品| 五月天婷婷爱丁香中文字幕| 伊人久久大香线蕉精品| 另类五月激情| 91精品又长又大又粗又爽又猛| 九九热精品视频在线观看| 啪啪夜久久| 色色色婷婷五月| 婷婷色五月激情| 这里只有精彩视频| 色五月丁香婷婷综合| 伊人久久婷婷五月综合97色| 久久久久久性爱视频| 91日综合欧美| 婷婷激情综合| 亚洲性爱干干| 沈娜娜av| 婷婷激情在线| 丁香五月天欧洲在线| 国产熟妇的荡欲午夜视频| 久久婷婷五月激情网站| 青青草原爱爱网| 五月色综合| 中文字幕av久久爽一区| 性爱综合网| 激情五月com| 丁香五月 性爱| 婷婷六月激情| 久久天天天| 少妇高潮A片无套内谢麻豆传| 亚洲AAAA网| 六月丁香啪| 91精品综合久久婷婷九色| 色婷婷操逼| 婷婷成人五月天| 色视五月天婷婷| 夜色爱爱亚洲| 99操碰| 这里只有在线精品| 国产性爱色| 色综合天天| 久久婷色| 激情综合网激情五月俺也去| 青青草轻轻操| 丁香五月aV| 国产免费av网站| 久久久.COM| 天天拍夜夜撸| 五月丁香六月婷婷综合| 日本色五月| 千人斩操逼| 色综合久久久综合久久网| 丁香五月婷婷五月天| 色色操| 天久综合91综合首页| 精品人妻一区二区| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 狠狠色狠狠| 粉嫩AV久久一区二区三区| 九九热国产| 337p大胆噜噜噜噜噜91Av| 99国产精品白浆在线观看免费| 天天激情站| 色婷婷XXXXX| 婷婷五月激情欧美大胆视频| aa久久| 色综合久久88色综合天天人守婷| 精品爆操| 九九九九操逼| 久久九九网| 激情五月,深深爱五月| 五月婷婷色播| 国产人妻777人伦精品HD| 这里只有精品视频一区| 六月色色| 97碰碰人人视频| 99精品在线下载| 婷婷五月丁香花综合| 九九无码| 成人在线不卡| 天天色激情| 热九九精品| 激情玖玖综合网| 99热99色| 丁香五月六月综合激情| 五月综合亚洲| 婷婷亚洲天堂| 9超碰在线| 做爰丰满少妇1313| 丁香色婷婷| 亚洲色亚洲精品| 天天狠狠婷婷在线| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 99热精品一区| 中文字幕成人| 超热久碰.com| 九九热123| 99热国产精品| 婷婷六月花| 成人天天爽| 91久久久久久久久久| 99re热视频这里只精品| AA丁香综合激情| 99热官网精品在线| 天天插天天干天天舔| 激情文学久久| 偷拍九九五月丁香婷婷| 天天干天天av天天射| 欧美日韩aaa| 日日噜噜夜夜狠狠久久丁香五月| 色情五月天首页| 另类图片天天影视在线观看| 五月丁香综合影院| 国产女18毛片多18精品| 嫩草AV久久伊人妇女超级A| 日韩无码成人电影| 99色精品| 思思热视频| 99re思思精品在线观看| 丁香六月亚洲| www.五月天婷婷.com| 五月婷婷深深爱| 久久99网| 七月丁香婷婷 色色| 国产在这里只有精品| 伊人玖玖婷婷| 五月婷婷在线视频| 婷婷五月天高清无码| 青娱乐美女福利视频美臀| 天天色月| 色色五月天激情| ′久久99一| 一级七香蕉| 婷婷五月天成人视频| 欧美性猛交99久久久久99按摩| 91要啪| 五月婷婷成人| 久热免费| 99热这里只有精品首页| 丁香五月Av| 久久66成人网站| 乱抡小BB| 99热99精品在线观看| 99re在线观看视频| 婷婷五月 丁香六月| 99热九九这里只有精品| 97在线精品| 操操操91| 亚洲AV另类| 99热传媒| 色婷婷av综合网| 婷婷视频在线| 欧美综合五月天婷婷tin| 青草视频在线观看视频| 激情五月婷| 久久综合五月| 99色在线视频| 久热婷婷| 国产毛片精品一区二区色欲黄A片| 久久婷婷色| 久久人人妻| 婷婷六月激情| 99性视频| 综合激情视频| 色播五月婷婷| 欧美黑人巨大性生话| 99这里有精品| 字幕网AV中文字幕| 午夜微拍福利| 另类图片五月天婷婷| 99啪视频在线观看| 五月丁香婷婷啪啪综合| 日韩成人综合| 国产性爱一级| 久草天堂| 都市激情蜜桃婷婷五月天 | 丁香婷婷激情四射五月| 碰碰碰91| 五月丁香婷中文| 亚洲精久久| 七七九九色色| 人人视频色| 五月叮香啪| 91丨九色丨熟女丰满| 午夜色婷婷| 六月综合婷婷开心伊人| 欧美肉大捧一进一出免费视频| 少妇2做爰HD韩国电影| 夜夜嗨一区二区三区直播内容 | 成人午夜无码视频| 欧美精品XXXXBBBB| 五月天啪啪网| 九月av| 日韩综合网络男女香蕉a片| 久草婷婷| 色婷婷色五月丁香| 色亚洲欧洲| 国产.亚洲.欧洲视频在线| 九月婷婷久久| 天天肏夜夜肏| 综合色色五月| 蜜乳AV成人| 欧美精品A片一区在线观看| 91婷婷搞| 日本人妻丁香婷婷久久寝取熟女五月| 激情婷婷五月黑人| 天天xxxxxx天天日| 色婷婷久久综合| 专区无日本视频高清8| 五月天婷婷色综合| 九九热99视频| 亚洲 无码 中文字幕 中出| 五月激情婷婷在线| 婷婷五月天av| 极品五月天| 97狠狠色| 六月亭亭久久综合激情| 欧美婷婷日本| 五月综合激情久久| 粉嫩av蜜桃av蜜臀av| 婷婷五月天深爱| 精品人妻一区| 丁香婷婷综合激情五月色| 久久九九囯产| 久久五月六月| 色色亚洲视频| 成人无码髙潮喷水A片| 超级碰碰视频无码| 久久网站观看免费欧洲国产| 色五婷婷开心缴| 夜夜撸日日操| 大香久久伊人网| 综合丁香婷婷五月天| 亚洲bt丁香五月天婷婷激情小说| 99性视频| 91干在线视频| 激情涩涩网| 人人干av| 日韩中文字幕| 欧洲亚洲免费视频9| 啪啪激情网站| 91久操| 精品AV无码超碰| 五月天激情黄色小说在线观看| 色五月婷婷天天操夜夜操| 大香蕉婷婷丁香天堂AV| 无码人妻一区二区一牛影视| 色婷丁香五月| 天天做天天爱天天玩| 丁香五月花| 九九这里是免费的视频5| 五月丁香婷中文字幕| 国产成人+综合亚洲+天堂| 久久久久9久无码视频| 激情五月丁香五月| 激情六月色| 亚洲字幕AV一区二区三区四区| 91久久精品无码一区二区三区| 激情五月天免费视频| 婷婷久久久| 一级黄色操B| 狠狠色丁婷婷日日,伊人激情综合网| 第四色五月婷婷| 色色五月婷婷狠狠| 五月天激日本色情在线| 欧美大香蕉视频| 欧美97超碰| 立川无码av| 婷婷中文无码| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 人妻中文字幕网| 色亚洲色宗合| 色色热| av国产精品偷| 亚洲最大视频| 天天爱天天天射AV| 色综合色综合色综合高潮| 玖玖综合色| 99婷婷五月天激情| 激情五月四色| 亚洲日韩操B| 亚洲综合激情五月天婷婷| 26UUU欧美激情一区二区| 中文婷婷狠狠| 第四色婷婷五月| 婷婷五月在线视频| 啪啪一区| PORNY九色9l自拍视频成人| 五月丁香婷婷综合网色欲| 99爱视频在线免费观看| 伊人五月天| 开心五月六月婷婷| 婷婷久久五月| 色综合天堂| 激情五月婷婷在线观看| 婷婷久久婷婷色五月| 五月中旬婷婷丁香六| 五月综合激情婷婷六月色窝| 国产VA播放| 九九碰九九爱97| 99视频九九热| 激情中文在线| 婷婷九月在线| 九九在线精品| 激情 婷婷| 久久九九免费视频| 色 噜噜 九月 婷婷| 99综合激情久久精品久久| 96自拍视频九色在线观看| 精品久久人妻热| 色婷婷色99国产综合精品| 99热都是精品| 99久久九九| 97香蕉碰碰人妻国产欧美| 日本视频99| 99超级碰碰| 思思99热| 97色永久免费视频| 日韩AV片| 国产99久久久| 99热网站| www.粉嫩av.com| 日日综合网| 成人看片网站| 中文av网| 五月天伊人av| 国产精品久久久久久亚洲毛片| 思思久ren热| www.狠狠操| 激情五月婷婷欧美极品 | 成人网址在线观看| 丁香 婷婷 激情 综合 五月| 97五月天| 美女100%露全身无挡网站| 欧美成人精品三区综合A片| 久久er+| 中文字幕日产A片在线看| 婷婷亚洲丁香五月| 大香伊人久色| 婷婷久久亚洲| 中文字幕成人影视| 婷婷精品在线| 99色色热| 国产XXXX搡XXXXX搡麻豆| 99re这里有精品手机在线| 操97在线观看| 夜夜撸夜夜骑| 婷婷激情性爱| 无码色色色| 色婷婷4| 国产毛片操B| 婷婷五月天电影区小说区| 综合网网欲色| 九九精品自拍| 狠狠色丁香综合| 最近中文字幕大全免费版在线 | 五月涩涩网| 五月天伊人久久| 91人操| 成人色五月天婷婷| 亚洲精品字幕| 激情五月色播五月| 亚欧州精品视频| 伊人五月综合网| 99热久久最新地址| 九月婷婷激情久久| 婷婷丁香激情综合色情| www.25五月婷婷| 午夜天天精品视频| 婷婷亚洲五月| 色九九综合| 国产精品久久久久久久久久免费| 丁香五月天在线| 五月天久久www| 日韩啪啪网| 五月婷婷开心六月激情小说| 91色久| 国产精品蜜臀99| 69精品人妻不卡视频| 九九99免费视频| 国产寻花在线| 综合www色| 五月激情站| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 一本久道综合色婷婷五月| 丁香五月AV| 久久少妇视频| 久99热| 五月丁小婷婷激情四射| 日本色99| 99 这里只有精品| 性爱激情小说AV五月丁香花| 激情六月天| 天天色激情| 色欲婷婷五月天| 影音先锋91网站在线观看| 亚洲成人五月| www色婷婷久久综合久色 | 九九aV| 色小说五月婷婷| 色v综合网| 最近免费中文字幕大全高清大全1| 综合网天天| 99艹精品在线观看| 综合网亚洲| 色五狠狠| 99re最新地址视频| Www.se.久久| 亚洲视频99| 九九久热| 夜夜躁狠狠 | 思思热久久阴99| 五月天激情日色在线| 丁香婷婷影院| 亚洲六月色| 欧日美女Va| 色婷婷五月成人网| 性一交一乱一交A片久| www五月| 激情网狠狠干| 久久精品4| 激情综合五月丁香六月婷婷| 天天色视频| 亚洲久久激情| 丁香婷婷五月天色播| 激情婷婷久久| 无码AV大香线蕉伊人| 99热精品在这里| 婷婷激情五月综合| 色婷婷丁香五月观看| 激情久久久久久久久| 久cao香蕉影院| 高清无码入口| 日韩一级网站| 亚洲色 视频| 综合在线网| 成人电影AV在线观看| 日本在线观看99| 97色色网| 久久99热这里只有精品23| 天堂五月婷婷| 97超级碰人人| 午夜性做爰电影| 九九五月天| 色五月综合在线| 五月婷婷久久内射| 色五月婷婷婷婷婷婷婷婷婷婷| 9久操| 91操人人操| 婷婷久久五月天| 欧美在线操| 五月天婷婷激情在线色图| 99视频精品全部免费 在线| www.色婷婷| 铁牛TV人妻| 久9热插入| 日产精品一线二线三线芒果| 亚洲精品99| 成人在线不卡| 国产毛片精品一区二区色欲黄A片| 婷婷色情小说| 五月天婷婷六月| 色性综合| 武则天精品久久| 九九精品亚洲| 丁香五月www| 影音先锋一区二区资源站| 办公室少妇激情呻吟A片在线观看 白人荫道BBWBBB大荫道 | 婷婷五月天AV| 超碰av在线| 久婷婷婷| 久9热视频| 五月天四色房丁香亭亭| 人人视频色| 色情播放| 五月丁香六月婷婷免费| www.激情五月天.com| 96丁香六月婷婷蜜桃综合久久| 日韩伊人大香蕉| 操碰99在线视频观看| 丁香五月婷婷图片综合| 在线观看免费人成视频无码| 久9热| 激情婷婷五月天| av狠狠操| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 婷婷操逼| 婷婷五月天视频| 亚洲久久激情| 色播五月| 开心激情网五月天| 久草五月天| 亚洲99热| 亚洲精品午夜国产va久久成人| 狠狠爱婷婷爱| 内射综合网| 色婷婷9| 五月天激情久久| 色五月超碰| 亚洲成人AV在线播放| 午夜成人网站在线观看| 午夜成人网站在线观看| 97在线/亚洲| 久久久大香蕉| 我爱大香蕉| 亚洲色五月| 99热这里只有精品22| 久热99| www.婷婷五月天.com| 天天日天天色| www.色婷婷.com| 欧美搡BBBBB摔BBBBB| 国产又爽又猛又粗的视频A片| 国产69久久久欧美黑人A片 | 亚洲久久视频| 激情五月综合色婷婷| 夜夜爽日日躁| 99性感视频| 国产精品热搜丁香五月婷婷| 五月天激情亚洲| 天天天干夜夜夜操| 色婷婷在线视频| 日韩久热| 天天干天天操天天爽| 国产激情久久| 久久综合久色欧美综合狠狠| 级人人91| 九九久久精品國產| 亚洲视频操| 亚洲综合在线视频| 久久成人性爱| 五月天色在线| 天天日,天天干,天天操| 手机旧版看人妻1025| 久久久网站| 五月天成人综合| 97日韩无套内| 色站9/| 久久久.COM| 色婷婷五月天激情| 精品99网站| 色激情五月| 色五月天丁香婷婷| 九九热精品| AⅤ网站在线看| 久久日本wwww色| 五月停停999| 五月丁香美女| 久热这里只有精品视频6| 婷婷婷婷婷开心无码播放| 色婷婷超碰| 99这里只有| 黑人巨粗进入警花疼哭A片| 国产精品男人AV不卡| 久久久久99精品成人网站| 超碰99在线观看| www.婷婷五月天啪啪| 婷婷激情丁香六月| 色七七九九| 久久久五月天| 九九综合网| 欧美五月婷婷| 五月色情婷婷开心五月色情| 婷婷丁香五月亚洲| 国产精品久久久久久白浆色欲| 成人综合网站| 九月大香蕉| 婷婷激情五月综合| 99精品在线下载| 六月婷婷色综合| 国产这里只有精品| 大香蕉福利导航| 久久婷.com| 色婷婷色五月色丁香| 久久人妻乱| 亚洲激情五月天| 激情五月天天| 色色五月天网站| 五月天色综合服务平台| 开心婷婷五月| 九九激情网| 艹色18p| 午夜大香蕉| 天天操天爱综合| 五月丁香成人| 国产婷伊人| 色综合中文色综合网| 天天综合插插| 荷兰av一级| 成人做爰A片免费看网站找不到了| 99九九免费精品| 99久久精彩视频。| 九九色综合视频| 99热这里只有精品55| 一本狠婷婷综合| 久久这里都是精品免费| 99re思思久久| 色五月婷婷在线| 九月激情综合婷婷| 婷婷丁香高潮了| 五月激情小说| 亚洲国产精品VA在线看黑人| 五月婷婷深深爱| 天天碰天天插天天操| 久久五月丁香婷婷| 97人碰人操| 五月婷婷啪啪| 丁香六月激情国产| 婷婷五月天成人网| www.久久久久久| 久久久五月激| 伊人婷婷五月天| 色婷婷精品视频在线播放| 国产乱码久久| 狠狠操狠狠插| 久久一级AV| www久| 色色色色色色网站| 中字幕视频在线永久在线观看免费| 九九99热久久精品66中文字幕| 久草五月天电影网| 99精品自拍| 九九美女视频| 五月丁香天堂网婷婷| 超碰成人在线观看| 日韩无码亚欧无码| 开心四月婷婷在线色播播| 九九re精品视频在线观看| Aaa久久| 久久婷婷激情五月天一区二区| 九九热在线精品视频| 激情都市另类| 色久播播| 五月婷婷色综图片| 色综啪啪啪啪啪啪| 69婷婷丁香午夜| 99久re热视频精品98| 久久码久久无清| 亚洲AAAA网| 深爱激情五月网| 六月婷婷七月丁香| 操日挥操日日| 成人做爰高潮A片免费视频| 丁香五月婷婷基地| 播五月丁香三月婷婷| 性色九九| 色播五月天天| 日本va欧美va国产激情| www.91在线观看| se99视频| www.婷婷com| 婷婷五月天.com| 日本五月婷婷| 亚洲综合视频网| 99热综合网| tingtingseav| WWW激情五月天| 久热无码| 色狠狠五月天| 91se在线视频| 99色在线观看视频| 五月亚洲| 六月婷婷天堂| 九九热这里只有精品一| 五月婷婷色色| 777色婷婷爱五月| 婷婷激情综合| 激情综合国产| 超碰网站在线观看| 丁香综合久久| 丁香六月激情网C0W| 爆乳熟妇一区二区三区四区| 国产日韩欧美性生活| 99亚洲视频| 无码啪啪| 超碰免费99| 1024婷婷综合久久五月天| 久热免费| 99热超| 思思热精品在线| 婷婷干六月综合旧址| 婷婷丁香五月亚洲综合网在线视频观看| 无码免费人妻A片AAA毛片西瓜| 婷婷色播色五月五色五月天色妇| 夜夜操天天干| 婷婷中文字幕| 亚洲综合色色| 91九九| 久久九九热视频| 99热伊人| 亚州色色色| 久久99免费视屏| 色五月天在线观看| 丁香五月婷婷久久综合激情网| 成片免费观看视频大全| 91九色在线| 婷婷伊人| 国产韩日亚洲美州欧亚综合在线| 九九色热| 五月天丁香六月综合| 激情五月天影院| 五月天天丁香婷婷在线中| 六月激情网| 99这里有精品免费| 青柠影视免费高清电视剧| 六月亚洲| 久操欧美在线观看97| 色五月丁香在线| 久久婷婷一级片| 深爱五月网| 亚洲五月天色色| 五月丁香六月激情| 久99久热| 九九99精品视频在线观看| 婷婷丁香五月天婷婷| www.色99| 五月丁香五月激情综合色综合| 香蕉97碰碰碰欧美| 丁香五月中文字幕久色| 婷婷性爱五月天丁香网| 开心激情网五月天| 玖玖婷婷五月| 操一区| 五月天婷婷三级黄| 欧美性生交XXXXX无码小说| 五月色精品| 免费观看高清无码| 欧美色频| 少妇高潮一区二区三区99欧美| 六月色婷婷| 婷婷激情五月综合基地| 九九爱精品网站| 五月欧美丁香在线观看| 丁香九九九九| 丁香六月婷婷久久综合| 激情合网婷婷| 超级碰碰99| 综合99视频| 亚洲五月天,激情视频| 久久精品99国产精品日本| 丁香五月成人在线| 98色丁香五月婷婷综合网| 97精品自拍| 色情五月丁香婷婷网| 中文字幕丰满孑伦无码专区| 天天操电影院色狼性av| 亚洲色夜| 这里只有精品久久| 日本九九热| 婷婷久久图片| 久久久婷| 丁香五月天婷婷中文| 东京热人妻一区二区三区在线| 超级碰碰碰97免费| 激情综合五月激情XXXX| 丁香,开心成人,久久| 天天干电影| 综合激情五月丁香| 超碰在线网站9| 色情五月综合婷婷| 天天激情5月天亚洲| AV片一区在线观看| 五月婷婷激情五月| 丁香六月婷婷综情欧美| 天天草女人| 亚洲成人av在线播放| 激情五月天在线观看婷婷| 久久五月婷婷综合网| 色五月亚洲| 婷婷激情五月吧| 97综合视频在线| 亚洲综合视频网| 激情伍月 欧美| 99啪在线视频| 人人播| 天天操综合网站| 大香蕉久艹| 这里只有精品96| 婷婷丁香花五月天| 无码中文一区二区三区| 伊人五月婷婷国产视频| 婷婷丁香成人| 五月丁香六月婷婷综合网站| 99色热| 在线观看视频1区| 色六月婷婷| 精品综合五月| 丁香五月情| 成人做爰A片免费看视频| 丁香五月天视频| 99热欧| 久婷首页| 国产精品99久久久久久久女警| 99热这里只有精品4| 秋霞黄色一级久久| 久久99免费视屏| 丁香五月综合| 五月婷婷官网色| 天天看片日日夜夜| 99玖玖人人| 国产又黄又爽又色的免费| 狠狠穞A片一區二區三區| 欧美日韓成人亚洲精品另类| 色五月婷婷激情基地| 欧美经典片免费观看大全| 丁香五月天婷婷中文字幕| 国产精品噜噜在线视频| 99热狠狠操| 成人免费黄色短视频| 超碰AV在线| 综合一本道| se色99| 啪啪 综合网| 99综合色色色| 天天天天干| 深爱激情五月天| 激情狠狠丁香月| 99性视频| 99精品偷拍视频| 亚洲无AV在线中文字幕| 无码少妇高潮喷水A片免费| 亚洲午夜精品久久久久久人妖| 激情五月九九九| 国产亚洲精品AAAA片APP| 超碰色色综合| 丁香五月色欲| 欧美婷婷五月无砖| 色婷婷伊人| 久久婷婷五月综合色天| 欧美搡BBBBB摔BBBBB| 无码人妻电影| 天天天综合网| 99热在线中文字幕| 婷婷五月色播网| 久99久99精品免| 日本大人久久| 五月综合视频| 欧美色图天堂网| 色婷婷丁香五月天在线观看| 天天射综合网天天插| 99热九九这里只有精品| 91在线视频综合| 婷婷五月综合基地| 免费看欧美成人A片无码| 91久久久久久久| 五月丁香在线| 久久视频这里99| 夜夜操少妇| 五月丁香亚洲校园欧美| 九九干视频| 色yeye欧美| AV成人在线网站| 婷婷五月天成人| 91欧美| 色天堂A| 五月婷婷色五月| 色婷婷五月天天天干天天操天天爽 | 天天操天天日天天操| 91热er| 中文字幕在线播放视频| 91视频五月丁香| 五月婷婷之综合激情在线| 色欲色欲久久宗合网| 日日日日日| 天天艹夜夜艹| 六月婷婷激情| 五月天色色婷婷| 另类视频五月天| 丁香婷婷视频| 成人综合伍月天| 丁香婷五月| 天天干狠狠操| 一区二区中文字幕| 狠狠色丁香久久久婷| 色99视频| 国产欧美性成人精品午夜| 五月天丁香| 婷婷五月天综合在线| 亚洲精品亚洲人成人网| 久久婷婷五月丁香网| 久婷五月| 九九热精品| 五月丁香六月婷婷激情视频在线观看免费 | 一起草av| 99视频| 夜夜爽天天爽| AA丁香综合激情| 日韩999| www激情| 色婷婷丁香| 97碰在线视频| 丁香九月激情| 日本精品99| 天天射综合网站| 五月婷婷久久综合| 色欲天天综合网| 亚洲欧洲另类| 青青草成人网| 久久久人妻| 久久伊人大香蕉| 久久久网站| 亚洲日韩一页精品发布| 欧洲第一无人区观看| 噼里啪啦完整版中文在线观看| 可以免费观看的av| 精品人妻伦九区久久AAA片| 双性美人被调教到喷水A片| 欧美人与性动交CCOO| 日欧一片内射VA在线影院| 69超碰在线| 99热有精品在线观看| 九月性爱网| 欧美婷婷丁香五月| 九色激情网| 啪啪婷婷五月天激情| 色婷婷综合久久久久| 午夜大香蕉| 再綫Av免费視品| 另类婷婷丁香| 激情婷婷六月| 精品成人a v无码内射| 伊人激情影院| 999激情视频| 综合色情网| 亚洲成人综合在线| 五月天播播| 丁香婷婷久久 | 婷婷婷婷婷开心无码播放| 79精品视频在线观看,| 人人草人人舔| 色5月婷婷| 五月激情影视| 欧美成人AAA片一区国产精品 | 碰碰碰97免费精彩视频| 日韩高清久久| 99精品久久久久久久婷婷| 异能之下短剧免费观看全集| 热久久思思热思思| 五月丁香婷中文字幕| 狠狠色综合久久| 色欲影香| 啊v视频在线观看| 99九九久久| 天天日天天肏天天奸| 碰碰碰97免费精彩视频| 色五月婷婷操逼| 九九色婷婷| 五月丁香 久久久| 国产午夜精品久久久观看| 丁香五月婷婷偷拍| 久久婷婷综合五月天|