freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

人工智能實(shí)驗(yàn)報告大全[小編整理](編輯修改稿)

2024-10-18 06:25 本頁面
 

【文章內(nèi)容簡介】 Grid, destX, destY)。AT(tGrid, destX, destY)= AT(tGrid, x, y)。AT(tGrid, x, y)= t。return State(tGrid, this)。destX = x1。break。destX = x。destY = y + 1。break。case DOWN: case LEFT: case RIGHT: void State::evaluate(){for(int ii = 0。ii 3。++ii){for(int jj = 0。jj 3。++jj){ if(AT(grid, i, j)== AT(pEndStategrid, ii, jj)){h += abs(ijj)。int g = moves, h = 0。for(int i = 0。i 3。++i){for(int j = 0。j 3。++j){//if(AT(grid, i, j)!= AT(pEndStategrid, i, j))// ++h。if(AT(grid, i, j)== SPACE)continue。if(!pEndState)return。}}}} } } thisvalue = g + h。//求該狀態(tài)的逆序數(shù) //逆序數(shù)定義為://不計空格,將棋盤按順序排列,//對于grid[i],存在jgrid[i],即為逆序。//所有棋子的逆序總數(shù)為逆序數(shù)。int State::getReversedCount(){}/*=====================Methods for class “NineGrid”=====================*/ //顯示信息void NineGrid::ShowInfo(){}//構(gòu)造函數(shù)NineGrid::NineGrid(string amp。start, string amp。dest): startState(start), endState(dest)cout} return count。} if(grid[i] grid[j])++count。int count = 0。for(int i = 0。i 9。++i){if(grid[i] == SPACE)continue。if(grid[j] == SPACE)continue。for(int j = 0。j i。++j){{}//當(dāng)初始狀態(tài)和目標(biāo)狀態(tài)的逆序數(shù)的奇偶性相同時,問題才有解 bool NineGrid::pareReversed(){ 2。}//解決問題bool NineGrid::solve(){}//實(shí)施一步?jīng)Q策,將得到的新狀態(tài)添加到列表,返回是否達(dá)到目標(biāo)狀態(tài)} print(NULL)。return false。} //從當(dāng)前狀態(tài)開始決策for(int i = 0。i 4。++i){} Move move =(Move)i。if(nowStatecheck(move)){} if(takeMove(nowState, move))return true。(new State(startState))。while(!()){//獲取一個狀態(tài)為當(dāng)前狀態(tài)State *nowState = ()。()。(nowState)。coutcoutbool NineGrid::takeMove(State *nowState, Move move){}//檢查給定狀態(tài)是否存在于列表中State* NineGrid::findInList(vector amp。listToCheck, State amp。state){}//根據(jù)達(dá)到的目標(biāo)狀態(tài),回溯打印出求解過程 void NineGrid::print(State *endState){coutaddSymptom(pDisease, strInput)。} else { ()。return true。//添加一個疾病,返回此疾病信息的指針Disease* Expert::addDisease(const string amp。name){}//添加疾病的癥狀void Expert::addSymptom(Disease *disease,const string amp。symptom){ }//診斷函數(shù)void Expert::diagnosis(){cout請輸入癥狀:(或”不確定“以開始模糊搜索)”symptomInput。//用戶輸入的第一個癥狀 string symptomInput。//用戶有的癥狀和沒有的癥狀vector symptomHave, symptomNotHave。//搜索的結(jié)果列表vector findList。disease(symptom)。Disease disease。 = name。(disease)。return amp。()。for(vector::iterator ite = ()。ite!=bool remove = false。//是否從findList列表中排除本疾病for(unsigned int j = 0。j ()。++j){Disease *pDisease = *ite。if(find((), (),//在symptomNotHave列表中找到此癥狀,直接排除 remove = true。break。()。){ if(symptomInput == “不確定”){} //添加所有疾病到findList列表中for(unsigned int i = 0。i ()。++i){ } //添加有此癥狀的疾病到findList列表中for(unsigned int i = 0。i ()。++i){} //添加輸入的癥狀到symptomHave列表中 (symptomInput)。Disease *pDisease = amp。m_DiseaseList[i]。for(unsigned int j = 0。j pDisease()。++j){} if(symptomInput == pDiseasesymptomList[j]){ } (pDisease)。(amp。m_DiseaseList[i])。} else { pDiseasesymptomList[j])!= ()){ } else if(find((), (),//在symptomHave,symptomNotHave列表中不存在這個癥狀,則詢問 if(optionSelect(“是否有癥狀”“ + pDiseasesymptomList[j] +} //詢問得知有此癥狀,添加癥狀到symptomHave列表中 (pDiseasesymptomList[j])。//詢問得知沒有此癥狀,添加癥狀到symptomNotHave列表中,(pDiseasesymptomList[j])。remove = true。break。pDiseasesymptomList[j])== ()){ ”“?n(y/n): ”)){ } else { 此疾病}} } } if(remove){} //需要排除此疾病ite = (ite)。//迭代器后移 ++ite。} else { cout} cout知識庫中未找到匹配的記錄!”根據(jù)已有的知識庫,可能的疾病為:”for(unsigned int i = 0。i ()。++i){} coutname。if(i!= ()1)coutbool Expert::optionSelect(const string amp。question){coutoption。switch(option){ case 39。Y39。: case 39。y39。: return true。case 39。N39。: case 39。n39。: } return false。} return false。 [疾病1] 癥狀A(yù) 癥狀B 癥狀C 癥狀D[疾病2] 癥狀A(yù) 癥狀B 癥狀C[疾病3] 癥狀A(yù) 癥狀B 癥狀D 癥狀E[疾病4] 癥狀A(yù) 癥狀C 癥狀D[疾病5] 癥狀B 癥狀C 癥狀D 癥狀E[疾病6] 癥狀A(yù) 癥狀B[疾病7] 癥狀A(yù) 癥狀C 癥狀E[疾病8] 癥狀A(yù) 癥狀D[疾病9] 癥狀B 癥狀C 癥狀E[疾病10] 癥狀B 癥狀D[疾病11] 癥狀C 癥狀D 癥狀E六、實(shí)驗(yàn)結(jié)果第三篇:人工智能TSP旅行商問題實(shí)驗(yàn)報告人工智能實(shí)驗(yàn)三實(shí)驗(yàn)報告班級: 姓名: 學(xué)號:一 實(shí)驗(yàn)題目TSP問題的遺傳算法實(shí)現(xiàn)旅行商問題(Traveling Salesman Problem, TSP),又譯為旅行推銷員問題、貨擔(dān)郎問題,簡稱為TSP問題,是最基本的路線問題。假設(shè)有n個可直達(dá)的城市,一銷售商從其中的某一城市出發(fā),不重復(fù)地走完其余n1個城市并回到原出發(fā)點(diǎn),在所有可能的路徑中求出路徑長度最短的一條。應(yīng)用遺傳算法求解30/10個節(jié)點(diǎn)的TSP(旅行商問題)問題,求問題的最優(yōu)解。二 實(shí)驗(yàn)?zāi)康?熟悉和掌握遺傳算法的基本概念和基本思想; 理解和掌握遺傳算法的各個操作算子,能夠用選定的編程語言設(shè)計簡單的遺傳優(yōu)化系統(tǒng); 通過實(shí)驗(yàn)培養(yǎng)學(xué)生利用遺傳算法進(jìn)行問題求解的基本技能。三 實(shí)驗(yàn)要求掌握遺傳算法的基本原理、各個遺傳操作和算法步驟; 2 要求求出問題最優(yōu)解,若得不出最優(yōu)解,請分析原因; 對實(shí)驗(yàn)中的幾個算法控制參數(shù)進(jìn)行仔細(xì)定義,并能通過實(shí)驗(yàn)選擇參數(shù)的最佳值;要求界面顯示每次迭代求出的局部最優(yōu)解和最終求出的全局最優(yōu)解。四 數(shù)據(jù)結(jié)構(gòu)請說明染色體個體和群體的定義方法。struct RanSeTi //染色體的個體的定義方法 { int city[cities]。//基因的排列(即城市的順序,路徑的組織)int adapt。//記錄適應(yīng)度double p。//記錄其在種群中的幸存概率} RanSeTi [num], RanSeTi temp[num]。//用數(shù)組來存儲染色體群體方法五 實(shí)驗(yàn)算法 說明算法中對染色體的編碼方法,適應(yīng)度函數(shù)定義方法1)染色體的編碼方法:即為染色體個體定義過程中生成的基因排列(路徑中城市的順序)struct RanSeTi //染色體的個體的定義方法 { int city[cities]。//基因的排列(即城市的順序,路徑的組織)int adapt。//記錄適應(yīng)度double p。//記錄其在種群中的幸存概率} RanSeTi [num], RanSeTi temp[num]。//用數(shù)組來存儲染色體群體方法2)適應(yīng)度函數(shù)定義方法:評價函數(shù)即適應(yīng)度函數(shù),在遺傳算法中用來計算一個染色體優(yōu)劣的函數(shù)。在進(jìn)行遺傳操作和種群進(jìn)化的時候,每個染色體的適應(yīng)值是決定它是否進(jìn)入下一輪種群進(jìn)化的關(guān)鍵因素。適應(yīng)值高的函數(shù)被選作新一代個體的可能性就會大。TSP問題中適應(yīng)度函數(shù)常取路徑長度的倒數(shù)(或倒數(shù)的相關(guān)函數(shù)),如:f(x1,x2,L,xn)=N229。d(x,xii=1n1i+1)+d(xn+x1)其中,N是個調(diào)節(jié)參數(shù),根據(jù)實(shí)驗(yàn)情況進(jìn)行確定。采用的選擇、交叉、變異操作算子的具體操作1)選擇操作我們定義f(xi)為第i(i=1,2,3.....popsize)個染色體的適應(yīng)度,則每個個體被選中的概率popsizefor(i=0。in1= RanSeTi [i].city[j1]。n2= RanSeTi [i].city[j]。sumdistance+=distance[n1][n2]。}RanSeTi [i].adapt=sumdistance。//每條染色體的路徑總和biggestsum+=sumdistance。//種群的總路徑 } 是: P(xi)=f(xi)229。f(xj=1j)本題中具體使用的是期望值方法 for(i=0。i} gradient[0]=group[0].p。for(i=1。iif(xuanze[i]{xuan[i]=j。//第i個位置存放第j個染色體break。} } } //拷貝種群for(i=0。ifor(i=0。i交叉算子就是把兩個父代個體的部分結(jié)構(gòu)加以替換重組而生成新個體的操作。部分匹配交叉、順序交叉、改進(jìn)的啟發(fā)式順序交叉 //temp1號染色體和temp2染色體交配for(i=0。i{point1=rand()%cities。point2=rand()%cities。for(j=temp1。jif(jiaopeiflag[j]==1){temp1=j。break。}for(j=temp1+1。jif(jiaopeiflag[j]==1){temp2=j。break。}//進(jìn)行基因交配if(point1point2)//保證point1{temp=point1。point1=point2。point2=temp。}memset(map1,1,sizeof(map1))。memset(map2,1,sizeof(map2))。//斷點(diǎn)之間的基因產(chǎn)生映射for(k=point1。k{map1[group[temp1].city[k]]=group[temp2].city[k]。map2[group[temp2].city[k]]=group[temp1].city[k]。}//斷點(diǎn)兩邊的基因互換for(k=0。k{temp=group[temp1].city[k]。group[temp1].city[k]=group[temp2].city[k]。group[temp2].city[k]=temp。}for(k=point2+1。k{temp=group[temp1].city[k]。group[temp1].city[k]=
點(diǎn)擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1