亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        圖形化PDDL語言編譯系統(tǒng)的設(shè)計與應(yīng)用

        2024-02-22 07:45:26張忠坤林泓宇譚智元邢明杰武延軍1
        計算機(jī)工程與設(shè)計 2024年2期
        關(guān)鍵詞:規(guī)劃思維模型

        張忠坤,林泓宇,譚智元,邢明杰,武延軍1,+

        (1.南京中醫(yī)藥大學(xué) 人工智能與信息技術(shù)學(xué)院,江蘇 南京 210023;2.中科南京軟件技術(shù)研究院智能軟件研究中心,江蘇 南京 210000;3.中國科學(xué)院軟件研究所 智能軟件研究中心,北京 100190;4.中國科學(xué)院大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,北京 100190)

        0 引 言

        智能規(guī)劃[1]是人工智能系統(tǒng)實現(xiàn)智能決策和行動的必要組成部分之一。其中規(guī)劃領(lǐng)域定義語言(planning domain definition language,PDDL)[2]是智能規(guī)劃社區(qū)中廣泛使用的一種領(lǐng)域描述語言,具有形式化、標(biāo)準(zhǔn)化等特點。PDDL語義的實現(xiàn)與特定的功能設(shè)計和語法支持密切相關(guān),開發(fā)者需要針對功能需求來設(shè)計專用編譯系統(tǒng)以實現(xiàn)并優(yōu)化相關(guān)系統(tǒng)運(yùn)行的性能。比如Fast Downward[3]的編譯系統(tǒng)是針對其規(guī)劃任務(wù)的優(yōu)化而設(shè)計,流程包括PDDL的詞法分析、語法分析、格式轉(zhuǎn)換和問題建模等。而PDDL.jl[4]的編譯系統(tǒng)是將PDDL解析為Julia數(shù)據(jù)結(jié)構(gòu),以便用戶可以通過Julia語言來操作和處理PDDL數(shù)據(jù)。此前我們對PDDL的集成開發(fā)環(huán)境如MyPDDL[5]和PDDLStudio[6]等存在的版本特性支持不完善、文本編輯困難和缺少應(yīng)用指導(dǎo)等問題,設(shè)計了一個圖形化PDDL在線編輯網(wǎng)站來幫助開發(fā)者提高PDDL的編寫效率(https://graphplan ner.isrc.ac.cn)。網(wǎng)站通過jsMind[7]思維導(dǎo)圖作為圖形化PDDL代替文本PDDL來提高開發(fā)的效率,并能夠解析用戶上傳的思維導(dǎo)圖和PDDL文件,還為用戶提供了在機(jī)器人操作系統(tǒng)(robot operating system,ROS)[8]環(huán)境下的應(yīng)用指導(dǎo)。為此本文設(shè)計了專用編譯系統(tǒng)Graph Compiler,其不僅支持編譯jsMind思維導(dǎo)圖,也支持對多版本PDDL文件的編譯,還可以將規(guī)劃結(jié)果轉(zhuǎn)換為ROS機(jī)器人具體行動的動作序列信息。對多屆國際規(guī)劃競賽(international planning competition,IPC)[9]的PDDL用例的實驗結(jié)果表明,Graph Compiler能夠正確編譯測試集上的所有用例。此外,我們對圖形化PDDL語言指導(dǎo)機(jī)器人任務(wù)規(guī)劃做了實驗,將Graph Compiler應(yīng)用到ROS工程中,拓展了它的應(yīng)用空間。

        1 PDDL語言結(jié)構(gòu)

        PDDL語言結(jié)構(gòu)一般如圖1所示,分為域模型(domain)和問題模型(problem)。

        圖1 常見PDDL文件結(jié)構(gòu)關(guān)系

        域模型包括Types、Fluents和Action Schemata等結(jié)構(gòu)。

        Types指定了在域模型和問題模型中定義變量時可以使用的所有類型。Fluents包括謂詞和函數(shù),它有n個對象參數(shù),F(xiàn)luents描述這些參數(shù)之間的某種屬性和關(guān)系。Action Schemata是一個動作列表,其中每個Action都是一個元組,包含Parameters、Precondition和Effect。Parameters充當(dāng)具體操作時所操作對象的占位符。Precondition是一組邏輯公式,指定了動作發(fā)生需要滿足的屬性條件或邏輯關(guān)系。Effect也是一組邏輯公式,指定了動作發(fā)生后,改變了哪些屬性條件或邏輯關(guān)系。

        問題模型包括Domain(域模型)、Init State和Goal State。Init State定義了問題模型中的所有對象及其對應(yīng)的初始狀態(tài),而Goal State則是當(dāng)問題解決時模型中的對象應(yīng)處于的狀態(tài)。初始狀態(tài)和目標(biāo)狀態(tài)都被指定為一組邏輯公式。

        2 編譯系統(tǒng)架構(gòu)

        編譯系統(tǒng)的運(yùn)行架構(gòu)如圖2所示,用戶在前端中產(chǎn)生的PDDL數(shù)據(jù)、jsMind數(shù)據(jù)和規(guī)劃結(jié)果數(shù)據(jù),在前端經(jīng)過簡單的語法檢查后,被傳到后端的編譯系統(tǒng)中。編譯系統(tǒng)將輸入數(shù)據(jù)傳到對應(yīng)的編譯模塊,包括PDDL編譯模塊、jsMind編譯模塊和ROS應(yīng)用模塊。如果PDDL或jsMind編譯成功,系統(tǒng)會將生成的目標(biāo)代碼存儲到臨時文件中并返回到前端展示,否則返回給前端錯誤原因;規(guī)劃結(jié)果則通過ROS交互模塊被轉(zhuǎn)為ROS話題消息,通過話題發(fā)送節(jié)點持續(xù)發(fā)布,可以被動作節(jié)點訂閱,進(jìn)而用于指導(dǎo)機(jī)器人的任務(wù)規(guī)劃。

        圖2 編譯系統(tǒng)運(yùn)行架構(gòu)

        輸出到臨時文件中保存的PDDL問題模型文件可以被系統(tǒng)集成的規(guī)劃器求解。系統(tǒng)提供兩種規(guī)劃求解方案,一種是planutils[10]項目的本地規(guī)劃器接口,可以選擇使用包括OPTIC[11]、POPF[12]和TFD[13]等規(guī)劃器,另一種是Planning Editor[14]項目的在線規(guī)劃器接口。兩種方案可以求解多個版本的PDDL文件,為開發(fā)者獲得圖形化PDDL問題模型的求解結(jié)果提供了支持。

        3 前端數(shù)據(jù)輸入

        前端界面包括功能教學(xué)頁面、問題模型編輯頁面、域模型編輯頁面和ROS交互頁面等。前端與編譯系統(tǒng)關(guān)聯(lián)的功能如圖3所示,包括:編輯思維導(dǎo)圖生成PDDL域模型和問題模型;轉(zhuǎn)換思維導(dǎo)圖為文本形式的PDDL;解析用戶上傳的PDDL文件為思維導(dǎo)圖;解析ChatGPT[15]返回的PDDL數(shù)據(jù)為思維導(dǎo)圖;將規(guī)劃結(jié)果解析為話題消息發(fā)送到ROS系統(tǒng)等。

        圖3 前端ROS USE頁面

        為了減少用戶的編輯時間,系統(tǒng)設(shè)計結(jié)合了ChatGPT模型,用戶可以通過自然語言描述PDDL模型關(guān)鍵內(nèi)容,編譯系統(tǒng)會將ChatGPT的返回內(nèi)容轉(zhuǎn)為思維導(dǎo)圖表示的PDDL,功能展示如圖4所示。

        圖4 ChatGPT使用頁面

        根據(jù)上述功能需求,編譯系統(tǒng)的數(shù)據(jù)輸入可以分為3類,包括思維導(dǎo)圖表示的圖形化PDDL數(shù)據(jù)、ChatGPT模型生成或用戶直接上傳的PDDL文本數(shù)據(jù)以及通過規(guī)劃求解器得到的規(guī)劃結(jié)果。編譯系統(tǒng)針對這3類數(shù)據(jù),分別設(shè)計了相應(yīng)的編譯模塊,其中思維導(dǎo)圖數(shù)據(jù)對應(yīng)的jsMind編譯模塊和PDDL數(shù)據(jù)對應(yīng)的PDDL編譯模塊將在4章節(jié)講述,規(guī)劃結(jié)果話題消息對應(yīng)的ROS應(yīng)用模塊將在5章節(jié)講述。

        4 編譯系統(tǒng)設(shè)計

        4.1 語法結(jié)構(gòu)對比

        編譯系統(tǒng)使用的jsMind數(shù)據(jù)格式是node_tree,數(shù)據(jù)格式如下所示:

        node:{

        可以看到,node_tree中的數(shù)據(jù)采用樹形結(jié)構(gòu)進(jìn)行組織,其中topic值代表節(jié)點顯示在思維導(dǎo)圖中的內(nèi)容,children值代表子節(jié)點列表,可以嵌套任意深度。node_tree通過這兩對鍵值,可以準(zhǔn)確地描述思維導(dǎo)圖中節(jié)點的內(nèi)容與親屬關(guān)系。而PDDL的語言文法是基于LISP的S表達(dá)式語法[16],其特點是可以使用括號來表示嵌套結(jié)構(gòu)。通過括號的嵌套使用,形成不斷延申的樹狀結(jié)構(gòu),從而可以表示復(fù)雜的數(shù)據(jù)關(guān)系。從圖3左下方的PDDL域模型文件示例中,可以看到通過括號嵌套的方式,PDDL表現(xiàn)出明顯的層級關(guān)系。

        通過觀察兩者的數(shù)據(jù)格式可以得出結(jié)論,PDDL和jsMind在數(shù)據(jù)內(nèi)容上具有相同的嵌套結(jié)構(gòu),PDDL的括號對應(yīng)于jsMind的children,括號中的內(nèi)容則對應(yīng)于jsMind的topic值。兩種語法格式的語義對應(yīng)關(guān)系表明,jsMind與PDDL可以實現(xiàn)語義上的等價轉(zhuǎn)換。

        4.2 編譯模塊介紹

        系統(tǒng)的編譯流程主要包括兩個模塊。分別是jsMind編譯模塊和PDDL編譯模塊。jsMind編譯模塊的功能是將用戶在前端編輯的思維導(dǎo)圖編譯為PDDL文本;PDDL編譯模塊的功能是將ChatGPT生成或用戶上傳的PDDL文本編譯為jsMind數(shù)據(jù)。

        4.2.1 jsMind編譯模塊

        jsMind數(shù)據(jù)的編譯流程如圖5(左)所示。

        圖5 編譯流程

        首先進(jìn)行詞法分析,任務(wù)是解析jsMind的node_tree格式數(shù)據(jù),將每個節(jié)點的層級結(jié)構(gòu)信息提取出來。根據(jù)topic鍵值和children鍵值劃分token,去掉其它無用字符,生成token流。

        之后進(jìn)行語法分析,首先根據(jù)PDDL的語言文法設(shè)計相應(yīng)的PDDL數(shù)據(jù)存儲結(jié)構(gòu)。如針對謂詞、初始狀態(tài)和動作等結(jié)構(gòu),根據(jù)其語法規(guī)則來定制對應(yīng)的數(shù)據(jù)結(jié)構(gòu)。下面是對動作結(jié)構(gòu)進(jìn)行定義的示例:

        之后對詞法分析器生成的token流進(jìn)行分析,并將token流按照數(shù)據(jù)類別補(bǔ)充到相應(yīng)的數(shù)據(jù)結(jié)構(gòu)中,從而生成AST。

        之后生成中間表示,其結(jié)構(gòu)是節(jié)點屬性為鍵值對的屬性樹。該步驟將優(yōu)化后的AST按照PDDL的不同屬性提取數(shù)據(jù)到定義的屬性樹中。

        最后生成PDDL文件,系統(tǒng)根據(jù)生成的中間表示,將數(shù)據(jù)按照PDDL文法組合在一起,生成PDDL數(shù)據(jù)存儲到臨時文件中。之后系統(tǒng)取出臨時文件內(nèi)容并嵌入HTML標(biāo)簽,使數(shù)據(jù)返回到前端后可以高亮顯示。

        4.2.2 PDDL數(shù)據(jù)編譯模塊

        PDDL數(shù)據(jù)的編譯流程如圖5(右)所示。

        首先使用正則表達(dá)式構(gòu)造詞法分析器。過濾掉空格、注釋和其它無用的字符。生成token流。

        接著進(jìn)行語法分析,主要是將詞法分析器輸出的token流,轉(zhuǎn)化為特定的語法結(jié)構(gòu)。系統(tǒng)使用遞歸下降分析法構(gòu)建語法分析器。語法分析器會對多個PDDL版本中的多個語法結(jié)構(gòu)進(jìn)行識別和處理。

        之后進(jìn)行語義分析,主要任務(wù)是對程序進(jìn)行合法性檢查。確定輸入數(shù)據(jù)符合語言規(guī)范和語義約束,并進(jìn)行相應(yīng)的語義處理。我們根據(jù)PDDL不同特性文法,做了語義分析處理。同時在處理過程中對PDDL的每個語法結(jié)構(gòu)都進(jìn)行了大量的錯誤判斷處理,設(shè)計了共計28種錯誤反饋。

        在語法語義分析之后是AST擴(kuò)展階段,系統(tǒng)需要對產(chǎn)生的AST進(jìn)行擴(kuò)展,根據(jù)requirement導(dǎo)入的PDDL模塊,在生成的AST中添加對應(yīng)鍵值。例如requirement 可以導(dǎo)入PDDL3版本特性:preference,其表示在問題模型中,可以使用軟目標(biāo)定義。使用preference需要在模型文件中使用同名關(guān)鍵詞。根據(jù)這些特殊requirement是否存在于域模型的requirements列表中,來判斷是否在AST中添加相應(yīng)的鍵值,最終生成一個包含所有關(guān)鍵信息的AST。

        最后是生成jsMind,系統(tǒng)將擴(kuò)展的AST在后端針對jsMind語法做了補(bǔ)充、優(yōu)化和簡化,組合其中的數(shù)據(jù),并最終生成jsMind返回到前端以思維導(dǎo)圖的形式展示。

        5 ROS應(yīng)用

        在機(jī)器人的任務(wù)規(guī)劃中,開發(fā)者可以將機(jī)器人的已知信息包括機(jī)器人獲取的傳感器信息和可使用的動作信息等通過PDDL的域模型進(jìn)行描述,之后在問題模型中定義機(jī)器人的任務(wù)目標(biāo),再通過規(guī)劃求解獲得機(jī)器人執(zhí)行任務(wù)的最佳動作序列,以滿足目標(biāo)條件并最小化某些指標(biāo)(如時間、資源消耗等)。

        然而,當(dāng)前機(jī)器人開發(fā)調(diào)度與PDDL的編輯規(guī)劃通常是獨(dú)立進(jìn)行的,這導(dǎo)致兩者之間的信息交流依賴于開發(fā)人員的觀察與操作。開發(fā)人員在獲得規(guī)劃結(jié)果后,在ROS系統(tǒng)中構(gòu)建行為樹[17]或狀態(tài)機(jī)來執(zhí)行任務(wù),開發(fā)效率較低。

        為更好的將圖形化PDDL應(yīng)用在機(jī)器人開發(fā)領(lǐng)域中,系統(tǒng)設(shè)計了ROS應(yīng)用模塊,旨在與當(dāng)前流行的ROS系統(tǒng)結(jié)合。節(jié)點是ROS的基本執(zhí)行單元,節(jié)點之間通過發(fā)布和訂閱話題進(jìn)行通信。ROS應(yīng)用模塊的功能是創(chuàng)建節(jié)點,將規(guī)劃結(jié)果轉(zhuǎn)為話題并持續(xù)發(fā)布出去,供動作節(jié)點訂閱以使機(jī)器人能夠按照規(guī)劃結(jié)果進(jìn)行運(yùn)動。

        開發(fā)者可以在ROS交互頁面中使用自然語言描述機(jī)器人的任務(wù)場景和目標(biāo),系統(tǒng)通過ChatGPT生成PDDL并轉(zhuǎn)為思維導(dǎo)圖形式,開發(fā)者在調(diào)整PDDL內(nèi)容后可以進(jìn)行規(guī)劃求解,在規(guī)劃成功后,返回的規(guī)劃結(jié)果會被轉(zhuǎn)為相應(yīng)格式的話題消息,實驗中機(jī)器人運(yùn)動的話題格式如下所示:

        time start_time

        string action_name

        string[] action_params //動作參數(shù)

        duration duration_time //持續(xù)時間

        ROS應(yīng)用模塊的具體流程可分為以下3步:

        (1)是根據(jù)規(guī)劃結(jié)果的輸出樣式構(gòu)建正則表達(dá)式,獲取規(guī)劃結(jié)果中包含有效內(nèi)容的部分,去除包括調(diào)用IP、耗費(fèi)時間和運(yùn)行狀態(tài)等無用字符,得到相應(yīng)的token流,獲得的內(nèi)容見表1,主要包括動作開始時間、動作序列(動作名和參數(shù))和動作持續(xù)時間。

        表1 OPTIC規(guī)劃器求解結(jié)果

        (2)是對token 流進(jìn)行語法分析,將解析出的規(guī)劃結(jié)果按照特定結(jié)構(gòu)轉(zhuǎn)為話題的中間數(shù)據(jù),下面是針對實驗話題格式設(shè)定的中間數(shù)據(jù)結(jié)構(gòu):

        (3)則是將數(shù)據(jù)轉(zhuǎn)為話題。這是一個簡單的映射過程,將生成的中間表示數(shù)據(jù),根據(jù)語義對應(yīng)關(guān)系轉(zhuǎn)化為話題數(shù)據(jù),并且進(jìn)行合法性檢驗,包括參數(shù)類型和格式等。確保輸出匹配的話題數(shù)據(jù)。

        最后將話題以多線程的方式發(fā)布到ROS網(wǎng)絡(luò)中,確保ROS話題的發(fā)布不會影響到編譯系統(tǒng)其它功能的使用。

        6 實 驗

        實驗分為兩部分:第一部分測試Graph Compiler對于多版本PDDL數(shù)據(jù)和jsMind數(shù)據(jù)的編譯能力;第二部分是驗證Graph Compiler應(yīng)用在ROS項目中的實際效果。

        6.1 編譯功能測試

        IPC比賽為智能規(guī)劃領(lǐng)域提供了廣泛使用的基準(zhǔn)。我們使用Assembly、Gripper和Blocks等IPC比賽中的經(jīng)典測試用例,來測試Graph Compiler在編譯多版本PDDL數(shù)據(jù)方面的表現(xiàn)(PDDL+的版本用例來自于PDDL wiki[18])。此外在Graph Compiler測試中,我們針對每一個測試用例都隨機(jī)挑選一個PDDL模型文件并使用jsMind思維導(dǎo)圖來表示,測試該模型文件是否能夠如圖3所示被順利的編譯為PDDL數(shù)據(jù),測試結(jié)果見表2。

        表2 PDDL用例編譯測試(√表示成功編譯,×表示無法編譯)

        測試結(jié)果表明,Graph Compiler相較于Fase Downward和PDDL.jl而言,支持編譯更多的PDDL版本,且編譯成功率達(dá)到100%;也可以將用戶編輯的jsMind思維導(dǎo)圖正確編譯為PDDL格式數(shù)據(jù)。滿足了在線編輯工具的功能需求。

        6.2 ROS系統(tǒng)交互實驗

        我們使用中科院軟件所博物館導(dǎo)覽項目[19]作為ROS應(yīng)用實驗的場景,測試從自然語言輸入到機(jī)器人調(diào)度的半自動流程。

        首先開發(fā)者在ROS USE界面中使用圖4所示的自然語言建模,得到域模型和問題模型。域模型建模輸入的prompt如下:”我需要一個domain.pddl,內(nèi)容如下:包括兩個類型:waypoint和robot,3個謂詞:at代表機(jī)器人在路徑點上、worked代表機(jī)器人在這個路徑點巡視過和not_worked代表機(jī)器人并沒有在這個路徑點巡視,以及兩個動作:move和work?!?。系統(tǒng)會調(diào)用ChatGPT接口并根據(jù)prompt生成對應(yīng)的域模型數(shù)據(jù),并以思維導(dǎo)圖的形式在聊天框下方顯示。問題模型同樣由自然語言輸入生成,內(nèi)容包括定義5個路徑點,按照目標(biāo)順序依次移動到5個路徑點并在路徑點上巡視一段時間等,生成內(nèi)容如下所示:

        (define (problem navigation_waypoint_demo)

        wa wb wc wd we-waypoint //定義5個路徑點

        init-waypoint

        robot-robot)

        (robot_on robot init)

        (not_worked wa) //5個點都還未巡視

        (not_worked wb)

        (not_worked wc)

        (not_worked wd)

        (not_worked we))

        (and

        (worked we)

        (worked wd)

        (worked wc)

        (worked wb)

        (worked wa)))) //5個路徑點都已完成巡視

        通過ROS交互模塊,將規(guī)劃結(jié)果轉(zhuǎn)換為ROS話題,并發(fā)布到ROS話題網(wǎng)絡(luò)中,之后在機(jī)器人的運(yùn)動節(jié)點中訂閱該話題,并根據(jù)規(guī)劃結(jié)果設(shè)計并發(fā)布相應(yīng)的動作指令,使導(dǎo)覽機(jī)器人按照表1中的規(guī)劃結(jié)果移動和工作。機(jī)器人實驗的部分畫面如圖6~圖7所示,可以看到機(jī)器人正在按照規(guī)劃結(jié)果給出的移動和巡視順序在完成任務(wù)。

        圖6 小車在PDDL指導(dǎo)下完成巡航任務(wù)(1)

        圖7 小車在PDDL指導(dǎo)下完成巡航任務(wù)(2)

        實驗結(jié)果表明,我們成功將Graph Compiler應(yīng)用在ROS項目中,完成了通過圖形化PDDL指導(dǎo)機(jī)器人任務(wù)規(guī)劃的目標(biāo)。

        7 結(jié)束語

        為滿足圖形化PDDL編輯的功能需求,本文基于領(lǐng)域?qū)S镁幾g技術(shù)設(shè)計了一個圖形化PDDL編譯系統(tǒng)。通過詞法分析、語法分析、語義分析和AST優(yōu)化擴(kuò)展等方法,設(shè)計了對文本PDDL和思維導(dǎo)圖表示的圖形化PDDL的編譯模塊,具有優(yōu)秀的版本兼容性和編譯正確性。并基于ROS節(jié)點之間的通信機(jī)制設(shè)計了ROS應(yīng)用模塊,可以將規(guī)劃結(jié)果以話題的消息格式發(fā)布出去,用于指導(dǎo)機(jī)器人的任務(wù)規(guī)劃。

        在后續(xù)工作中,將繼續(xù)探索Graph Compiler的規(guī)劃應(yīng)用,完善從自然語言輸入到PDDL生成再到ROS機(jī)器人運(yùn)動的自動化流程,并通過實現(xiàn)一個圖形化PDDL專用規(guī)劃器來進(jìn)一步提高系統(tǒng)的運(yùn)行效率。

        猜你喜歡
        規(guī)劃思維模型
        一半模型
        思維跳跳糖
        思維跳跳糖
        思維跳跳糖
        思維跳跳糖
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        規(guī)劃引領(lǐng)把握未來
        快遞業(yè)十三五規(guī)劃發(fā)布
        商周刊(2017年5期)2017-08-22 03:35:26
        多管齊下落實規(guī)劃
        亚洲一区二区三区偷拍自拍| 日韩一区二区超清视频| 乱伦一区二| 久久成人永久免费播放| 无码国产精品一区二区免费网曝| 最新在线观看精品国产福利片| 白白色发布永久免费观看视频| 日本久久黄色高清视频| 日本女优久久精品久久| 久久精品女人天堂AV一个| 亚洲国产精品成人av| 国产精品日韩亚洲一区二区 | 精品人妻系列无码人妻免费视频| 亚洲av日韩精品久久久久久| 免费中文熟妇在线影片| 国产av一区仑乱久久精品| 伊人久久大香线蕉av不变影院| 性色视频加勒比在线观看| 国产乱对白刺激视频| 亚洲人成影院在线观看| 久久亚洲精品无码va大香大香 | 国产莉萝无码av在线播放| 成熟丰满熟妇高潮xxxxx| 亚洲人成网站18男男| 开心激情网,开心五月天| 老熟妇乱子伦牲交视频| 精品欧洲av无码一区二区14| 四虎影视在线影院在线观看| 成人三级在线| 精品的一区二区三区| 日本黄色特级一区二区三区| 中文字幕影片免费人妻少妇| 国产成人无码a在线观看不卡| 中文字幕人妻被公上司喝醉| 无码 制服 丝袜 国产 另类 | 久久一区二区三区老熟女| а天堂中文在线官网在线| 久久人人爽人人爽人人片av东京热| 久久精品国产91久久性色tv| 国产精品一区二区三区成人| 中国少妇×xxxx性裸交|