運用模糊集理論和比例原則模擬小車剎車

2021-09-27 02:58:58 字數 1846 閱讀 7328

模糊理論、 高斯型隸屬函式、模糊集這些之前的文章已經說明過了。

已知小車速度和離危險距離,使用高斯型隸屬函式求得模糊集合,進行乘法運算,運用比例原則進而推導出小車應設的阻力。

這是目前要解決的問題。

假設一輛行駛速度為v公尺/秒的汽車前方d公尺有乙個障礙物,設阻力為速度的程度和距離的程度的聯合,設計並求出該聯合。

①劃分v、d的程度區間,這裡只是假設,就將它們都劃分成(0, 50, 100)三個程度;

②在v和d區間內隨機地產生一定數量的隨機數x, y;

③使用高斯型隸屬函式,求得v,d各自的模糊集x, y;

④將兩個模糊集相乘,得到三維向量集:z = x + y;

也就是下面這張圖:

⑤設定比例原則的規則,這裡通過經驗按照原設計設定了下面9個規則:

⑥按照比例原則公式進行小車阻力推理演算

⑦先展示一下上面思路的最終效果:

⑧思路的結果與高斯隸屬函式設定的σ有關,如果增加σ的值的話,則會得到:

# python-模糊數乘積運算

# coding: utf-8

import numpy as np

import matplotlib.pyplot as plt

import math

import mpl_toolkits.mplot3d

defgmf

(x, y,c1, c2)

:return np.exp(

((x - c1)**2

+(y - c2)**2

)/(-

2*24**2)

)hc =[50

,25,5

,75,50

,25,100,75

,50]v =[0

,50,100

]d =[0

,50,100

]x, y = np.mgrid[0:

100:

500j,0

:100

:500j

]z =[0

]*500for i in

range(0

,3):

for j in

range(0

,3):

n = gmf(x, y, v[i]

, d[j]

)* hc[i *

3+ j]

z = z + n

ax = plt.subplot(

111, projection=

'3d'

)ax.plot_su***ce(x, y, z, rstride=

1, cstride=

1, cmap=

'rainbow'

, alpha=1)

ax.invert_xaxis(

)ax.set_xlabel(

'v')

ax.set_ylabel(

'd')

ax.set_zlabel(

'stop'

)plt.grid(

true

)plt.show(

)

機器學習 一型模糊集和二型模糊集

模糊集 一型模糊 在經典的集合理論中,乙個元素要麼屬於要麼不屬於這個集合。相比之下,模糊集則通過隸屬度函式來評價乙個元素對於乙個集合的隸屬程度。因此,模糊集是對經典集合的一般化。在模糊集理論中,經典的二價集 bivalent sets 被稱作crisp sets。模糊集通常先要劃分論域u,再定義乙個...

模糊數學 模糊集合

運用數學知識,如何用集合表示大於1且小於5的實數。這可以說是非常簡單的 a 但是這五個人的成績有各不相同,優秀成績有一定的程度,張三,李四,王五的成績可以說是非常優秀,而小紅的成績算是一般優秀,小王可以說是中等優秀。我們把優秀程度稱之為優秀集合的隸屬度。隸屬度取值範圍為 0,1 其隸屬度越靠近1的則...

delphi FMX使用模糊集合進行邊緣提取

模糊集合的邊緣提取 procedure mohulvbo b tbitmap var b read tbitmap x,y i integer 0 黑 白 三個輸入隸屬度函式 ze bl,wh array 0.255 of single wdata rdata tbitmapdata p0,p,p1...