黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術(shù)文章
文章詳情頁

Python實(shí)現(xiàn)隨機(jī)爬山算法

瀏覽:100日期:2022-06-28 17:15:30

隨機(jī)爬山是一種優(yōu)化算法。它利用隨機(jī)性作為搜索過程的一部分。這使得該算法適用于非線性目標(biāo)函數(shù),而其他局部搜索算法不能很好地運(yùn)行。它也是一種局部搜索算法,這意味著它修改了單個(gè)解決方案并搜索搜索空間的相對(duì)局部區(qū)域,直到找到局部最優(yōu)值為止。這意味著它適用于單峰優(yōu)化問題或在應(yīng)用全局優(yōu)化算法后使用。

在本教程中,您將發(fā)現(xiàn)用于函數(shù)優(yōu)化的爬山優(yōu)化算法完成本教程后,您將知道:

爬山是用于功能優(yōu)化的隨機(jī)局部搜索算法。 如何在Python中從頭開始實(shí)現(xiàn)爬山算法。 如何應(yīng)用爬山算法并檢查算法結(jié)果。 教程概述

本教程分為三個(gè)部分:他們是:

爬山算法 爬山算法的實(shí)現(xiàn) 應(yīng)用爬山算法的示例 爬山算法

隨機(jī)爬山算法是一種隨機(jī)局部搜索優(yōu)化算法。它以起始點(diǎn)作為輸入和步長,步長是搜索空間內(nèi)的距離。該算法將初始點(diǎn)作為當(dāng)前最佳候選解決方案,并在提供的點(diǎn)的步長距離內(nèi)生成一個(gè)新點(diǎn)。計(jì)算生成的點(diǎn),如果它等于或好于當(dāng)前點(diǎn),則將其視為當(dāng)前點(diǎn)。新點(diǎn)的生成使用隨機(jī)性,通常稱為隨機(jī)爬山。這意味著該算法可以跳過響應(yīng)表面的顛簸,嘈雜,不連續(xù)或欺騙性區(qū)域,作為搜索的一部分。重要的是接受具有相等評(píng)估的不同點(diǎn),因?yàn)樗试S算法繼續(xù)探索搜索空間,例如在響應(yīng)表面的平坦區(qū)域上。限制這些所謂的“橫向”移動(dòng)以避免無限循環(huán)也可能是有幫助的。該過程一直持續(xù)到滿足停止條件,例如最大數(shù)量的功能評(píng)估或給定數(shù)量的功能評(píng)估內(nèi)沒有改善為止。該算法之所以得名,是因?yàn)樗鼤?huì)(隨機(jī)地)爬到響應(yīng)面的山坡上,達(dá)到局部最優(yōu)值。這并不意味著它只能用于最大化目標(biāo)函數(shù)。這只是一個(gè)名字。實(shí)際上,通常,我們最小化功能而不是最大化它們。作為局部搜索算法,它可能會(huì)陷入局部最優(yōu)狀態(tài)。然而,多次重啟可以允許算法定位全局最優(yōu)。步長必須足夠大,以允許在搜索空間中找到更好的附近點(diǎn),但步幅不能太大,以使搜索跳出包含局部最優(yōu)值的區(qū)域。

爬山算法的實(shí)現(xiàn)

在撰寫本文時(shí),SciPy庫未提供隨機(jī)爬山的實(shí)現(xiàn)。但是,我們可以自己實(shí)現(xiàn)它。首先,我們必須定義目標(biāo)函數(shù)和每個(gè)輸入變量到目標(biāo)函數(shù)的界限。目標(biāo)函數(shù)只是一個(gè)Python函數(shù),我們將其命名為Objective()。邊界將是一個(gè)2D數(shù)組,每個(gè)輸入變量都具有一個(gè)維度,該變量定義了變量的最小值和最大值。例如,一維目標(biāo)函數(shù)和界限將定義如下:

# objective function def objective(x): return 0 # define range for input bounds = asarray([[-5.0, 5.0]])

接下來,我們可以生成初始解作為問題范圍內(nèi)的隨機(jī)點(diǎn),然后使用目標(biāo)函數(shù)對(duì)其進(jìn)行評(píng)估。

# generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution)

現(xiàn)在我們可以遍歷定義為“ n_iterations”的算法的預(yù)定義迭代次數(shù),例如100或1,000。

# run the hill climb for i in range(n_iterations):

算法迭代的第一步是采取步驟。這需要預(yù)定義的“ step_size”參數(shù),該參數(shù)相對(duì)于搜索空間的邊界。我們將采用高斯分布的隨機(jī)步驟,其中均值是我們的當(dāng)前點(diǎn),標(biāo)準(zhǔn)偏差由“ step_size”定義。這意味著大約99%的步驟將在當(dāng)前點(diǎn)的(3 * step_size)之內(nèi)。

# take a step candidate = solution + randn(len(bounds)) * step_size

我們不必采取這種方式。您可能希望使用0到步長之間的均勻分布。例如:

# take a step candidate = solution + rand(len(bounds)) * step_size

接下來,我們需要評(píng)估具有目標(biāo)函數(shù)的新候選解決方案。

# evaluate candidate point candidte_eval = objective(candidate)

然后,我們需要檢查此新點(diǎn)的評(píng)估結(jié)果是否等于或優(yōu)于當(dāng)前最佳點(diǎn),如果是,則用此新點(diǎn)替換當(dāng)前最佳點(diǎn)。

# check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval))

就是這樣。我們可以將此爬山算法實(shí)現(xiàn)為可重用函數(shù),該函數(shù)將目標(biāo)函數(shù)的名稱,每個(gè)輸入變量的范圍,總迭代次數(shù)和步驟作為參數(shù),并返回找到的最佳解決方案及其評(píng)估。

# hill climbing local search algorithm def hillclimbing(objective, bounds, n_iterations, step_size): # generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution) # run the hill climb for i in range(n_iterations): # take a step candidate = solution + randn(len(bounds)) * step_size # evaluate candidate point candidte_eval = objective(candidate) # check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval)) return [solution, solution_eval]

現(xiàn)在,我們知道了如何在Python中實(shí)現(xiàn)爬山算法,讓我們看看如何使用它來優(yōu)化目標(biāo)函數(shù)。

應(yīng)用爬山算法的示例

在本節(jié)中,我們將把爬山優(yōu)化算法應(yīng)用于目標(biāo)函數(shù)。首先,讓我們定義目標(biāo)函數(shù)。我們將使用一個(gè)簡單的一維x ^ 2目標(biāo)函數(shù),其邊界為[-5,5]。下面的示例定義了函數(shù),然后為輸入值的網(wǎng)格創(chuàng)建了函數(shù)響應(yīng)面的折線圖,并用紅線標(biāo)記了f(0.0)= 0.0處的最佳值。

# convex unimodal optimization function from numpy import arange from matplotlib import pyplot # objective function def objective(x): return x[0]**2.0 # define range for input r_min, r_max = -5.0, 5.0 # sample input range uniformly at 0.1 increments inputs = arange(r_min, r_max, 0.1) # compute targets results = [objective([x]) for x in inputs] # create a line plot of input vs result pyplot.plot(inputs, results) # define optimal input value x_optima = 0.0 # draw a vertical line at the optimal input pyplot.axvline(x=x_optima, ls=’--’, color=’red’) # show the plot pyplot.show()

運(yùn)行示例將創(chuàng)建目標(biāo)函數(shù)的折線圖,并清晰地標(biāo)記函數(shù)的最優(yōu)值。

Python實(shí)現(xiàn)隨機(jī)爬山算法

接下來,我們可以將爬山算法應(yīng)用于目標(biāo)函數(shù)。首先,我們將播種偽隨機(jī)數(shù)生成器。通常這不是必需的,但是在這種情況下,我想確保每次運(yùn)行算法時(shí)都得到相同的結(jié)果(相同的隨機(jī)數(shù)序列),以便以后可以繪制結(jié)果。

# seed the pseudorandom number generator seed(5)

接下來,我們可以定義搜索的配置。在這種情況下,我們將搜索算法的1,000次迭代,并使用0.1的步長。假設(shè)我們使用的是高斯函數(shù)來生成步長,這意味著大約99%的所有步長將位于給定點(diǎn)(0.1 * 3)的距離內(nèi),例如 三個(gè)標(biāo)準(zhǔn)差。

n_iterations = 1000 # define the maximum step size step_size = 0.1

接下來,我們可以執(zhí)行搜索并報(bào)告結(jié)果。

# perform the hill climbing search best, score = hillclimbing(objective, bounds, n_iterations, step_size) print(’Done!’) print(’f(%s) = %f’ % (best, score))

結(jié)合在一起,下面列出了完整的示例。

# hill climbing search of a one-dimensional objective function from numpy import asarray from numpy.random import randn from numpy.random import rand from numpy.random import seed # objective function def objective(x): return x[0]**2.0 # hill climbing local search algorithm def hillclimbing(objective, bounds, n_iterations, step_size): # generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution) # run the hill climb for i in range(n_iterations): # take a step candidate = solution + randn(len(bounds)) * step_size # evaluate candidate point candidte_eval = objective(candidate) # check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval)) return [solution, solution_eval] # seed the pseudorandom number generator seed(5) # define range for input bounds = asarray([[-5.0, 5.0]]) # define the total iterations n_iterations = 1000 # define the maximum step size step_size = 0.1 # perform the hill climbing search best, score = hillclimbing(objective, bounds, n_iterations, step_size) print(’Done!’) print(’f(%s) = %f’ % (best, score))

運(yùn)行該示例將報(bào)告搜索進(jìn)度,包括每次檢測到改進(jìn)時(shí)的迭代次數(shù),該函數(shù)的輸入以及來自目標(biāo)函數(shù)的響應(yīng)。搜索結(jié)束時(shí),找到最佳解決方案,并報(bào)告其評(píng)估結(jié)果。在這種情況下,我們可以看到在算法的1,000次迭代中有36處改進(jìn),并且該解決方案非常接近于0.0的最佳輸入,其計(jì)算結(jié)果為f(0.0)= 0.0。

>1 f([-2.74290923]) = 7.52355 >3 f([-2.65873147]) = 7.06885 >4 f([-2.52197291]) = 6.36035 >5 f([-2.46450214]) = 6.07377 >7 f([-2.44740961]) = 5.98981 >9 f([-2.28364676]) = 5.21504 >12 f([-2.19245939]) = 4.80688 >14 f([-2.01001538]) = 4.04016 >15 f([-1.86425287]) = 3.47544 >22 f([-1.79913002]) = 3.23687 >24 f([-1.57525573]) = 2.48143 >25 f([-1.55047719]) = 2.40398 >26 f([-1.51783757]) = 2.30383 >27 f([-1.49118756]) = 2.22364 >28 f([-1.45344116]) = 2.11249 >30 f([-1.33055275]) = 1.77037 >32 f([-1.17805016]) = 1.38780 >33 f([-1.15189314]) = 1.32686 >36 f([-1.03852644]) = 1.07854 >37 f([-0.99135322]) = 0.98278 >38 f([-0.79448984]) = 0.63121 >39 f([-0.69837955]) = 0.48773 >42 f([-0.69317313]) = 0.48049 >46 f([-0.61801423]) = 0.38194 >48 f([-0.48799625]) = 0.23814 >50 f([-0.22149135]) = 0.04906 >54 f([-0.20017144]) = 0.04007 >57 f([-0.15994446]) = 0.02558 >60 f([-0.15492485]) = 0.02400 >61 f([-0.03572481]) = 0.00128 >64 f([-0.03051261]) = 0.00093 >66 f([-0.0074283]) = 0.00006 >78 f([-0.00202357]) = 0.00000 >119 f([0.00128373]) = 0.00000 >120 f([-0.00040911]) = 0.00000 >314 f([-0.00017051]) = 0.00000 Done! f([-0.00017051]) = 0.000000

以線圖的形式查看搜索的進(jìn)度可能很有趣,該線圖顯示了每次改進(jìn)后最佳解決方案的評(píng)估變化。每當(dāng)有改進(jìn)時(shí),我們就可以更新hillclimbing()來跟蹤目標(biāo)函數(shù)的評(píng)估,并返回此分?jǐn)?shù)列表

# hill climbing local search algorithm def hillclimbing(objective, bounds, n_iterations, step_size): # generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution) # run the hill climb scores = list() scores.append(solution_eval) for i in range(n_iterations): # take a step candidate = solution + randn(len(bounds)) * step_size # evaluate candidate point candidte_eval = objective(candidate) # check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # keep track of scores scores.append(solution_eval) # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval)) return [solution, solution_eval, scores]

然后,我們可以創(chuàng)建這些分?jǐn)?shù)的折線圖,以查看搜索過程中發(fā)現(xiàn)的每個(gè)改進(jìn)的目標(biāo)函數(shù)的相對(duì)變化

# line plot of best scores pyplot.plot(scores, ’.-’) pyplot.xlabel(’Improvement Number’) pyplot.ylabel(’Evaluation f(x)’) pyplot.show()

結(jié)合在一起,下面列出了執(zhí)行搜索并繪制搜索過程中改進(jìn)解決方案的目標(biāo)函數(shù)得分的完整示例。

# hill climbing search of a one-dimensional objective function from numpy import asarray from numpy.random import randn from numpy.random import rand from numpy.random import seed from matplotlib import pyplot # objective function def objective(x): return x[0]**2.0 # hill climbing local search algorithm def hillclimbing(objective, bounds, n_iterations, step_size): # generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution) # run the hill climb scores = list() scores.append(solution_eval) for i in range(n_iterations): # take a step candidate = solution + randn(len(bounds)) * step_size # evaluate candidate point candidte_eval = objective(candidate) # check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # keep track of scores scores.append(solution_eval) # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval)) return [solution, solution_eval, scores] # seed the pseudorandom number generator seed(5) # define range for input bounds = asarray([[-5.0, 5.0]]) # define the total iterations n_iterations = 1000 # define the maximum step size step_size = 0.1 # perform the hill climbing search best, score, scores = hillclimbing(objective, bounds, n_iterations, step_size) print(’Done!’) print(’f(%s) = %f’ % (best, score)) # line plot of best scores pyplot.plot(scores, ’.-’) pyplot.xlabel(’Improvement Number’) pyplot.ylabel(’Evaluation f(x)’) pyplot.show()

運(yùn)行示例將執(zhí)行搜索,并像以前一樣報(bào)告結(jié)果。創(chuàng)建一個(gè)線形圖,顯示在爬山搜索期間每個(gè)改進(jìn)的目標(biāo)函數(shù)評(píng)估。在搜索過程中,我們可以看到目標(biāo)函數(shù)評(píng)估發(fā)生了約36個(gè)變化,隨著算法收斂到最優(yōu)值,初始變化較大,而在搜索結(jié)束時(shí)變化很小,難以察覺。

Python實(shí)現(xiàn)隨機(jī)爬山算法

鑒于目標(biāo)函數(shù)是一維的,因此可以像上面那樣直接繪制響應(yīng)面。通過將在搜索過程中找到的最佳候選解決方案繪制為響應(yīng)面中的點(diǎn),來回顧搜索的進(jìn)度可能會(huì)很有趣。我們期望沿著響應(yīng)面到達(dá)最優(yōu)點(diǎn)的一系列點(diǎn)。這可以通過首先更新hillclimbing()函數(shù)以跟蹤每個(gè)最佳候選解決方案在搜索過程中的位置來實(shí)現(xiàn),然后返回最佳解決方案列表來實(shí)現(xiàn)。

# hill climbing local search algorithm def hillclimbing(objective, bounds, n_iterations, step_size): # generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution) # run the hill climb solutions = list() solutions.append(solution) for i in range(n_iterations): # take a step candidate = solution + randn(len(bounds)) * step_size # evaluate candidate point candidte_eval = objective(candidate) # check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # keep track of solutions solutions.append(solution) # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval)) return [solution, solution_eval, solutions]

然后,我們可以創(chuàng)建目標(biāo)函數(shù)響應(yīng)面的圖,并像以前那樣標(biāo)記最優(yōu)值。

# sample input range uniformly at 0.1 increments inputs = arange(bounds[0,0], bounds[0,1], 0.1) # create a line plot of input vs result pyplot.plot(inputs, [objective([x]) for x in inputs], ’--’) # draw a vertical line at the optimal input pyplot.axvline(x=[0.0], ls=’--’, color=’red’)

最后,我們可以將搜索找到的候選解的序列繪制成黑點(diǎn)。

# plot the sample as black circles pyplot.plot(solutions, [objective(x) for x in solutions], ’o’, color=’black’)

結(jié)合在一起,下面列出了在目標(biāo)函數(shù)的響應(yīng)面上繪制改進(jìn)解序列的完整示例。

# hill climbing search of a one-dimensional objective function from numpy import asarray from numpy import arange from numpy.random import randn from numpy.random import rand from numpy.random import seed from matplotlib import pyplot # objective function def objective(x): return x[0]**2.0 # hill climbing local search algorithm def hillclimbing(objective, bounds, n_iterations, step_size): # generate an initial point solution = bounds[:, 0] + rand(len(bounds)) * (bounds[:, 1] - bounds[:, 0]) # evaluate the initial point solution_eval = objective(solution) # run the hill climb solutions = list() solutions.append(solution) for i in range(n_iterations): # take a step candidate = solution + randn(len(bounds)) * step_size # evaluate candidate point candidte_eval = objective(candidate) # check if we should keep the new point if candidte_eval <= solution_eval: # store the new point solution, solution_eval = candidate, candidte_eval # keep track of solutions solutions.append(solution) # report progress print(’>%d f(%s) = %.5f’ % (i, solution, solution_eval)) return [solution, solution_eval, solutions] # seed the pseudorandom number generator seed(5) # define range for input bounds = asarray([[-5.0, 5.0]]) # define the total iterations n_iterations = 1000 # define the maximum step size step_size = 0.1 # perform the hill climbing search best, score, solutions = hillclimbing(objective, bounds, n_iterations, step_size) print(’Done!’) print(’f(%s) = %f’ % (best, score)) # sample input range uniformly at 0.1 increments inputs = arange(bounds[0,0], bounds[0,1], 0.1) # create a line plot of input vs result pyplot.plot(inputs, [objective([x]) for x in inputs], ’--’) # draw a vertical line at the optimal input pyplot.axvline(x=[0.0], ls=’--’, color=’red’) # plot the sample as black circles pyplot.plot(solutions, [objective(x) for x in solutions], ’o’, color=’black’) pyplot.show()

運(yùn)行示例將執(zhí)行爬山搜索,并像以前一樣報(bào)告結(jié)果。像以前一樣創(chuàng)建一個(gè)響應(yīng)面圖,顯示函數(shù)的熟悉的碗形,并用垂直的紅線標(biāo)記函數(shù)的最佳狀態(tài)。在搜索過程中找到的最佳解決方案的順序顯示為黑點(diǎn),沿著碗形延伸到最佳狀態(tài)。

Python實(shí)現(xiàn)隨機(jī)爬山算法

以上就是Python實(shí)現(xiàn)隨機(jī)爬山算法的詳細(xì)內(nèi)容,更多關(guān)于Python 隨機(jī)爬山算法的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 蜜臀av亚洲一区二区 | 亚洲xxxx丝按摩袜 | 国产三级精品片 | 狠狠做深爱婷婷久久综合一区 | 一区二区三区在线免费观看视频 | 国产成人无码av片在线观看不卡 | 欧亚乱熟女一区二区在线 | 国内精品视频饥渴少妇在线播放 | 成人免费a视频 | 国产精品久久久久久超碰 | 911久久香蕉国产线看观看 | 二级大黄大片高清在线视频 | 久久精品日产第一区二区三区乱码 | 中文字幕无码人妻少妇免费 | 国产麻豆免费观看 | 久久一级片视频 | 日韩另类片 | 天天色天天操天天 | 辟里啪啦国语版免费观看 | 韩国r级hd中文字幕 韩国r级大尺度激情做爰外出 | 免费视频福利 | 激情欧美综合 | 男人av在线 | 免费欧美日韩 | 日本三级做爰在线播放 | 欧美人与禽zozzo禽性配 | 国产寡妇色xxⅹ交肉视频 | 六月婷婷久香在线视频 | 精品中文字幕在线观看 | 国产一区2区 | 国内视频精品 | 91九色视频在线 | 丁香五月缴情综合网 | 91精品国产综合久久久蜜臀图片 | 嫩草影院wwwnyz五月天 | 国产成a人亚洲精v品在线观看 | 国产寡妇亲子伦一区二区三区四区 | 极品白嫩高潮呻吟喷水av | 中文字幕熟妇人妻在线视频 | 噜噜噜久久亚洲精品国产品小说 | 深夜天堂| 97久久综合亚洲色hezyo | 18国产精品福利片久久婷 | 56pao国产成人免费视频 | 亚洲精品资源 | 亚瑟av亚洲精品一区二区 | 亚洲人成中文字幕在线观看 | 国产无遮挡裸体免费视频 | 久久精品国产欧美亚洲人人爽 | 国产漂亮白嫩美女在线观看 | 永久免费观看国产裸体美女 | 韩国女同性做爰三级 | www97视频| 色噜噜一区二区三区 | 久久精品夜色噜噜亚洲a∨ 久久精品一二三 | 精品亚洲成av人在线观看 | 午夜精品久久久久久久爽 | 免费日韩视频 | 黄色一几片 | 久久久资源 | 午夜精品久久久久久中宇牛牛影视 | 91午夜在线 | 亚洲www天堂com | xxxxxxxx黄色片 | 麻豆国产在线视频 | 新亚洲天堂| 九九热在线视频观看这里只有精品 | 国产午夜福利亚洲第一 | 亚洲精品久久久蜜桃 | 性猛色xxxxx富婆 | √天堂资源地址在线官网 | 在线精品国产一区二区三区 | 老熟妇乱子伦牲交视频 | 人妻无码久久一区二区三区免费 | 三级做爰高清视频 | 丝袜一区二区三区 | 国产原创视频在线观看 | 国产日韩欧美不卡在线二区 | 免费观看日批视频 | 日本在线一区 | 69av在线播放| 99热热热| 少妇视频在线观看 | 国产精品久久久久免费 | 国产色产综合色产在线视频 | yy8090新视觉午夜毛片 | 1000部拍拍拍18勿入免费视频下载 | 日韩欧美国产二区 | 国产喷水福利在线视频 | 一本大道卡一卡二卡三乱码全集资源 | 天天看片夜夜爽 | 色中色在线视频 | 色情一区二区三区免费看 | 人人人妻人人澡人人爽欧美一区 | 爱情岛论坛亚洲品质自拍网址 | 久久精品天天中文字幕人妻 | 久久99国产精品久久99果冻传媒新版本 | 成人污污www网站免费丝瓜 | 国产不卡精品 | 欧美乱大交xxxxx疯狂俱乐部 | 日韩天堂在线 | 成人ay| 成人午夜短视频 | 懂色av一区 | 午夜天堂精品久久久久 | 色七七久久 | 国产交换配乱淫视频免费 | 色哟哟在线| 97性视频| 少妇又紧又色又爽又刺激视频 | 国产精品人成在线观看 | av在线免费播放 | 日韩欧美国产片 | 国产成人午夜福利在线播放 | 亚洲精品久久久久中文字幕m男 | 好吊视频一区 | 91亚洲国产成人 | 国产精品va无码一区二区 | 亚洲色欲色欲欲www在线 | 操操综合 | 欧美性xxxx图片 | 色诱亚洲精品久久久久久 | 一区二区三区国产在线观看 | 人人妻人人澡人人爽国产一区 | 亚洲精品国产精品乱码视色 | 男人天堂成人网 | 色噜噜狠狠一区二区三区果冻 | 国产色吧| 韩国三级hd中文字幕叫床浴室 | 蜜桃精品视频 | 97国产精品人人爽人人做 | 国产一区二区三区色淫影院 | 永久免费网站看黄yyy45视频 | 91草草草| 在线观看va | 精品久久福利 | 国产成人综合在线观看不卡 | 欧美激情综合色综合啪啪五月 | 一区二区不卡在线 | 亚洲国产精品综合久久网各 | 成人精品免费网站 | 免费a视频 | 无翼乌口工全彩无遮挡h全彩 | 精品国产乱码一区二区三 | 国产三级精品一区二区三区视频 | 久久九| 国产美女亚洲精品久久久毛片小说 | 国模和精品嫩模私拍视频 | 18禁裸体女免费观看 | 91在线播放视频 | 亚洲一区在线观看免费 | av九九九 | 最新中文字幕在线观看视频 | 丰满少妇xbxb毛片日本视频 | 台湾av在线 | 国产女优在线播放 | 二区不卡| 无码一区二区 | 三级全黄做爰视频在线手机观看 | 成人性生交大片免费看冫视频 | 国产精品99久久久精品无码 | 91综合视频| 极品五月天 | 人善交类欧美重口另类 | 少妇特黄a片一区二区三区 精品香蕉一区二区三区 | 色婷婷久久综合中文久久蜜桃av | 国产情侣在线播放 | 国产精品热久久 | 一色桃子jul457中文字幕 | 亚洲无av | 欧美成人精品在线 | 亚洲欧美另类中文字幕 | 亚洲综合在线另类色区奇米 | 欧洲女人牲交性开放视频 | 精品一区二区三 | 天天躁日日躁狠狠躁 | 欧美日韩中文字幕视频 | 一本色道久久综合狠狠躁的推荐 | 在线免费观看日韩av | 久久久久久9999 | 祥仔av免费一区二区三区四区 | 午夜人妻久久久久久久久 | 高清欧美性猛交xxxx黑人猛交 | 国语自产拍精品香蕉在线播放 | 一级黄色短片 | 亚洲国产精久久久久久久 | 国产午夜精品久久 | 亚洲第一女人av | 久久久久综合精品福利啪啪 | av大全在线观看 | 国产精品久久久久一区二区三区 | 日韩av高清无码 | 免费在线小视频 | a级片免费播放 | 蜜臀av无码精品人妻色欲 | 亚洲青青草 | 亚洲欧洲巨乳清纯 | 日本人妻中文字幕乱码系列 | 中国中文字幕伦av在线看片 | www.欧美日韩 | 天天射日日 | a视频在线免费观看 | 国产成a人亚洲精v品在线观看 | 综合久久影院 | 日韩深夜福利 | 日本aa在线观看 | 黄色小视频国产 | 久久久久久久久久久久久久久久久久久久 | 国产毛片18 | 天天免费视频 | 真人与拘做受免费视频 | 亚洲精品无码午夜福利中文字幕 | 大肉大捧一进一出好爽app | mm131美女久久精品美女图片 | 国产欧美一级 | 亚洲一区二区三区国产好的精华液 | 日本免费高清视频 | 超碰资源在线 | 波多一区二区 | 强乱中文字幕亚洲精品 | 天天av天天翘天天综合网 | 亚洲va韩国va欧美va | 色八区人妻在线视频 | 97精品一区二区视频在线观看 | 亚洲国产成人精品无码区在线观看 | 国模精品视频一区二区 | 日韩精品视频免费专区在线播放 | 青青草精品 | 调教+趴+乳夹+国产+精品 | 亚洲永久精品ww.7491进入 | 日韩中文字幕在线免费观看 | 精品久久久久中文字幕日本 | 国产一精品久久99无吗一高潮 | 插鸡网站在线播放免费观看 | 国产精品一区二区三区在线看 | 91手机在线观看 | 日韩av高清在线播放 | 黑人与饥渴少妇在线 | 午夜免费av啪啪噜噜 | 日本三级网站在线观看 | 国产小视频免费在线观看 | 国产黄色免费观看 | 日韩无码电影 | 欧美一区视频 | 亚洲痴女 | 久久不见久久见免费视频4 国产真人做爰毛片视频直播 | jizz一区二区 | 欧美色五月 | 亚洲精品国产精品乱码在线观看 | 91l九色lporny| 欧美激情第1页 | 中国少妇内射xxxxⅹhd | 免费一淫片6级 | 免费av一区 | 人人干超碰 | 日本精品在线播放 | 国产一区二区激情 | 少妇做爰免费视频网站裸体艺术 | 中文字幕第10页 | 亚洲精品一区中文字幕乱码 | 亚洲国产精品久久久天堂不卡 | 亚洲国产精品女主播 | 亚洲热妇无码av在线播放 | 亚洲第七页 | 狠狠色狠狠色综合 | 欧美婷婷六月丁香综合色 | 国产精品久久99综合免费观看尤物 | 国产亚洲精久久久久久蜜臀 | 成人丁香婷婷 | 国产精品99久久久久人最新消息 | 男女做www免费高清视频网站 | 中文字幕第十二页 | 激情网综合| 国产午夜三级 | 51国产偷自视频区视频 | 超碰成人福利 | 久久国产精品嫩草影院的使用方法 | 欧美色精品 | 欧美伦理片 | 天堂在线www| 亚洲免费网站观看视频 | 美女大量吞精在线观看456 | 无码精品国产va在线观看dvd | 国产成人主播 | 欧美精品免费在线观看 | 偷拍女人私密按摩高潮视频 | 久久亚洲国产成人精品性色 | 日本高清免费在线 | 青青草伊人网 | 日本久久精品一区二区三区 | 伊人情人成综合 | 亚洲欧美在线视频观看 | 成人激情片| 午夜成午夜成年片在线观看 | 国产视频资源在线观看 | 欧美一区二区三区激情 | 亚洲福利 | 99国产精品白浆在线观看免费 | av日韩av | 欧美自拍视频在线 | 日本va在线视频播放 | 日韩国产精品视频 | 18禁黄网站男男禁片免费观看 | 国产免费不卡 | 久草免费看 | 日本一卡2卡3卡4卡无卡免费网站 | 91九色成人| 国产精品伦一区二区三级视频永妇 | 国产高清不卡一区二区 | 精品成人免费一区二区在线播放 | 2017天天干| 东北少妇露脸无套对白 | 国产调教av | 免费精品一区二区三区第35 | 99re在线观看| 91国偷自产一区二区三区水蜜桃 | 亚洲精品怡红院 | 性色蜜桃臀x88av天美传媒 | 久久视了 | 成人免费视频国产免费网站 | 青草av在线| 免费观看羞羞视频网站 | 女高中生第一次破苞av | 久久作爱 | 91天堂网| 69精产国品一二三产区视频 | 蜜臀va亚洲va欧美va天堂 | 怡红院av亚洲一区二区三区h | 99re热这里只有精品视频 | 国产在线精品成人一区二区 | 在线观看网址你懂的 | 51精品一区二区三区 | 一本之道高清狼码 | 人妻饥渴偷公乱中文字幕 | 国产专区国产av | 精品无码久久久久久国产 | wwwyoujizzcom中国版 | 强开小婷嫩苞又嫩又紧视频 | 激情久久网 | 国产suv精品一区 | 500篇短篇超级乱淫的小说 | 国产强伦姧在线观看无码 | 99热这里只有精品5 99热这里只有精品9 | 热热99| 成人在线视频你懂的 | 久久无码av三级 | 老牛影视av老牛影视av | 成人激情开心网 | 97精品国产一区二区三区 | 国产午夜精品视频 | 肉欲性毛片交38 | av区无码字幕中文色 | 日韩特黄| 无码不卡av东京热毛片 | 狠狠色成色综合网 | 日本高清成本人视频一区 | av日韩av | 天天做天天爱天天综合色 | 猫咪av成人永久网站在线观看 | 狠狠躁夜夜躁人人爽天天 | 亚洲国产精品成人天堂 | 国产人与禽zoz0性伦免费 | 日本黄色成人 | 上原瑞穗av在线播放 | 亚洲欧美不卡 | 我不卡午夜 | 成人在线观看你懂的 | 性猛交ⅹxxx富婆视频 | 亚洲欧美成人精品香蕉网 | 天码中文字幕在线播放 | 少妇视频在线 | 日本一二三不卡视频 | 色先锋资源久久综合5566 | 在线观看波多野结衣 | 国产情侣呻吟对白高潮 | 亚洲宅男av | 久久久精品国产99久久精品芒果 | 国产黄色av网站 | 婷婷色小说 | 免费看黄色的网站 | 成年人免费看黄色 | 免费看男女做爰爽爽视频 | 亚洲国产成人精品女 | 欧美高清性xxxxhd | a级毛片蜜桃成熟时2在线播放 | 精品av无码国产一区二区 | 亚洲v在线观看 | 国产精品5区 | 色乱码一区二区三区 | 真人作爱免费视频 | 国产精品主播视频 | 日本大乳高潮视频在线观看 | 永井玛利亚 精品 国产 一区 | 欧美美女一区 | 国产成人av大片大片在线播放 | 疯狂撞击丝袜人妻 | 久久91精品久久久久清纯 | 女女女女女裸体处开bbb | 四虎影视国产精品免费久久 | 激情亚洲 | 理论片午午伦夜理片影院 | 日韩激情av | 狂野欧美性猛交bbbb | 老色69久久九九精品高潮 | 亚洲日本韩国欧美云霸高清 | 国产美女包臀裙一区二区 | 欧美一区二区三区精品免费 | 人妻少妇边接电话边娇喘 | 草草影院网址 | 日本又色又爽又黄的a片18禁 | 日韩精品视频免费 | 视频国产精品 | 国产区图片区一区二区三区 | 亚洲精品视频网 | 免费精品视频在线观看 | 国内国外精品影片无人区 | 人妻精品无码一区二区三区 | 日韩国产欧美视频 | 日本视频又叫又爽 | 国产精品成人免费精品自在线观看 | 97视频人人免费看 | 亚洲国产成人久久综合 | 三上悠亚人妻中文字幕在线 | 国产尤物在线观看 | 国产精品福利小视频 | 国产免费网站在线观看 | 免费一级全黄少妇性色生活片 | 久久影院综合精品 | 欧美成人精品一级乱黄 | 亚洲成a人v欧美综合天堂下载 | 欧美性猛交久久久乱大交小说 | jzzjzz日本丰满少妇 | jizz内谢中国亚洲jizz | 国产乱淫视频 | 国产嫩草视频 | 在线vr极品专区 | 国产免费一区 | 亚洲一二三精品 | 亚洲免费国产 | 免费人妻无码不卡中文字幕系 | 伊人狠狠操 | 日韩视频在线观看免费视频 | 男人的天堂2019 | 香港三级日本三级妇三级 | 伊在人天堂亚洲香蕉精品区 | 国产极品福利 | 国产日韩欧美自拍 | 精品久久久久成人码免费动漫 | 一本之道高清码狼人 | 1级黄色毛片| 免费黄色视屏 | 国产亚洲欧美精品久久久www | 亚洲国产欧美日韩精品一区二区三区 | 日本一卡二卡不卡视频查询 | 欧美巨猛xxxx猛交黑人97人 | 欧美亚洲综合在线 | 精品无人乱码一区二区三区的优势 | 污网站免费在线 | 日韩特级黄色片 | 亚洲天堂一区二区三区四区 | 丰满熟女人妻一区二区三 | 久久久久久久999 | 欧美一级做a爰片免费视频 欧美一级做性受免费大片免费 | 亚洲精品日韩av | 国产cdts系列另类在线观看 | 国产精品视频一区二区二 | 欧美性受xxxxx| 久久中文字幕精品 | 亚洲成a人片77777kkkk | 人操人视频 | 国产精品 欧美精品 | 最爽free性欧美人妖 | 久久国产免费观看 | 国产高潮好爽受不了了夜色 | 国产色视频在线播放 | 天海翼一区二区三区免费 | 91在线网站 | 亚洲欲妇 | 国产后进极品圆润翘臀在后面玩 | 国产超碰av | 日本乳喷榨乳奶水视频 | 日韩在线一区视频 | 五月天亚洲视频 | 国产午夜无码精品免费看 | 久久国产精品久久久久久电车 | 嫩草嫩草嫩草嫩草嫩草 | 亚洲最大成人综合 | 久久噜噜少妇网站 | 黑人巨大精品欧美一区免费视频 | 国产精品对白刺激在线观看 | 日本特黄特刺激一级猛片 | 久久久亚洲成人 | 色妞欧美| 8x8ⅹ国产精品一区二区二区 | 亚洲欧美日韩久久精品 | 成人性生交大片免费看视 | 亚洲欧美天堂 | 永久免费看mv网站入口亚洲 | 亚洲精品成人无码中文毛片不卡 | 日韩在线不卡视频 | 日本丰满熟妇videossex一 | 在线中文字幕一区 | 张筱雨337p大尺度欧美 | 日本美女色片 | 亚洲人妻av伦理 | 性色av蜜臀av色欲av | 国产免费拔擦拔擦8x高清在线人 | 99久久精品免费看国产四区 | 99免费在线| 亚洲一区二区日韩 | 日本做爰全过程免费看 | 欧美日韩中文字幕在线 | 日本一道高清一区二区三区 | 少妇丰满极品嫩模白嫩 | 精品人体无码一区二区三区 | 六姐妹在线观看免费 | 日韩一区欧美二区 | 欧美一区二区三区成人精品 | 国产香蕉9| 99激情网 | 日韩欧美在线观看免费 | 99香蕉国产精品偷在线观看 | 成人影片在线免费观看 | 国产人成在线视频 | 日本少妇寂寞少妇aaa | 麻豆亚洲 | 加勒比色综合久久久久久久久 | www亚洲在线| 亚洲精品午夜久久久久久久久久久 | 日韩女同强女同hd | 欧美黄色大片视频 | 肉番在线观看 | 麻豆丰满少妇chinese | 69精品| 欧美日韩亚洲二区 | 波多野结衣在线观看一区 | 无码人妻久久一区二区三区蜜桃 | 91精品视频网站 | 国产精品sm | 日本做爰吃奶全过程免 | 亚洲 成人 在线 | 色综合久久久久 | 国产精品-区区久久久狼 | 久久久久久国产精品免费免费 | 久久中文精品 | 成人国产精品免费观看动漫 | 亚洲在av极品无码天堂手机版 | 狠狠色丁香婷婷综合欧美 | 亚洲国产精品综合 | 色网在线播放 | 亚洲天堂网一区二区 | 欧美疯狂做受xxxx高潮 | 国产欧美日韩在线观看 | 天天躁日日躁狠狠躁欧美老妇 | 特黄aaaaaaa片免费视频 | 超碰在线看 | 另类小说色 | 偷拍超碰 | 中文字幕av网 | 国产山村乱淫老妇女视频 | 乱中年女人伦av三区 | 少妇人妻av毛片在线看 | 中国极品少妇xxxx做受 | 伦理片在线播放无遮无挡 | 欧美特一级片 | a毛看片免费观看视频 | 一本久道久久综合婷婷五月 | 九色丨9lpony丨大学生 | 国模冰冰炮一区二区 | 亚洲国产成人一区二区精品区 | 成人性生交大片免费7 | 别揉我奶头~嗯~啊~一区二区三区 | 国产甜淫av片免费观看 | 黄色片一级毛片 | 一本之道久久 | 中文字幕亚洲欧美专区 | 粉嫩av一区二区三区免费看 | 国产高清不卡视频 | 99爱在线观看 | 日本高潮69ⅹxxx视频 | 久久av资源网 | 国产精品18久久久久久久久 | 亚洲精品乱码久久观看网 | 激情按摩系列片aaaa | 免费网站永久免费入口 | 亚洲国产一区视频 | 亚洲国产成人综合精品 | 99久久久成人国产精品 | 精品亚洲国产成人av制服丝袜 | 亚洲视频自拍偷拍 | 亚洲 美腿 欧美 偷拍 | 国偷自产视频一区二区久 | 亚洲成人福利在线 | 日韩在线www | 国产精华7777777| 日本少妇中文字幕 | 粉嫩粉嫩一区二区三区在线播放 | 亚洲精品天堂成人片av在线播放 | 97在线免费视频 | 国产黄色片在线观看 | 亚洲第一综合网站 | 欧美一性一乱一交 | 97香蕉久久超级碰碰高清版 | 午夜精品免费观看 | 久久婷婷五月综合色丁香 | 绿帽av | 国产精品美女www爽爽爽动态图 | 国产精品国产三级国产传播 | 亚洲欧美精选 | 午夜中出| 香蕉视频官方网站 | 最新视频 - x88av| 哪里可以看毛片 | 国产在线视频第一页 | 国产中文字幕在线播放 |