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

正文內容

人工智能程序設計語言150(專業(yè)版)

2025-03-20 16:15上一頁面

下一頁面
  

【正文】 進而又會導致程序中的連鎖失敗 。 另外 , 利用 write的輸出項 \n也同樣可起換行作用 。 第 2章 人工智能程序設計語言 但當 X,Y被實例化 , 為 Z未被實例化時 , “ =” 號就是約束符 。 例如: 數學中的算術表達式 PROLOG中的算術表達式 x+y z X+Y*Z abc/d A*BC/D u mod v U mod V(表示求 U除 以 V所得的余數 ) 第 2章 人工智能程序設計語言 即是說 , Turbo PROLOG中算術表達式采用通常數學中使用的中綴形式 。(a, 例如下面的謂詞 likes(Tom,sports(football,basketball,tabletennis)). 中的 sports(football,basketball,tabletennis) 就是一個結構 ,即復合對象。 若要生成一個獨立的可執(zhí)行文件 ,則在程序中必須包含 goal段 。于是,系統回答: Y=mary 程序運行結束 。 于是 , 對原目標的求解就轉化為對新目標 likes(X,reading),likes(X,music). 的求解 。 第 2章 人工智能程序設計語言 1. 自由變量與約束變量 PROLOG中稱無值的變量為自由變量 , 有值的變量為約束變量 。 功能 問題表示用戶的詢問,它就是程序運行的目標。 其中COMMONLISP將成為一種標準 , 以統一各種 LISP方言 。 我們用 D(ex)表示數學上的 de/dx,這里 e為需求導的函數表達式 , x為自變量 。 若沒有一個 Pi的值為非 NIL, 則 COND的返回值為 NIL。 LISP中真和假分別用 T和 NIL表示 , 當函數的返回值為非 NIL時 , 也表示為真 。 例如: (APPEND′(TIGER LION)′(DOG CAT)) 返回值為: (TIGER LION DOG CAT) 第 2章 人工智能程序設計語言 5) LIST函數 格式 (LISTS─表達式 1S─表達式 2… S 表達式 n) 功能把 n個 S─表達式作為元素括在一起構成一張新表 。(CS 2)也是 S─表達式 。 第 2章 人工智能程序設計語言 LISP的程序結構與運行機制 LISP的程序一般由函數的定義和函數的調用兩部分組成 。 但這些 PROLOG語言版本屬順序邏輯程序設計語言 。 但該語言現在還限于理論研究 , 實現上還存在一定困難 。 1. 函數型與邏輯型相結合的語言 函數型與邏輯型語言的結合方式有耦合型和統一型兩類 。 第 2章 人工智能程序設計語言 串原子是由雙引號括起來的一串字符。 表是一種特殊的 S─表達式 , 每一個表都對應著一個 S─表達式 。 基本函數的種類有十多個 , 下面僅給出其中主要的幾類 。 賦值函數有多個 , 其中 SET函數是一個最基本的賦值函數 。 返回 NIL (EQUAL′(a b)(CONS′a′(b)))。 其中最具特色的構造方法是遞歸 。例如 , 給出如下的函數調用 (D′(+(*2x)(*x x))′x)。 第 2章 人工智能程序設計語言 2. 規(guī)則 (rule) 格式 謂詞名 (項表 ):謂詞名 (項表 ){,謂詞名 (項表 )}. 其中 “ :” 號表示 “ if” ( 也可以直接寫為 if) ,其左部的謂詞是規(guī)則的結論 ( 亦稱為頭 ) , 右部的謂詞是規(guī)則的前提 ( 亦稱為體 ) , {}表示零次或多次重復 , 逗號表示 and(邏輯與 ),即規(guī)則的形式是一個邏輯蘊含式 。 如果有多個語句 , 則這些語句稱為子目標 。 如果失敗的子目標前再無子目標 , 則控制就返回到該子目標的上一級目標 ( 即該子目標謂詞所在規(guī)則的頭部 ) 使它重新匹配 。 由于變量 X已被約束 , 所以這時第二個子目標實際上已變成了 likes(bell,music). 由于程序中不存在事實 likes(bell,music), 所以該目標的求解失敗 。 SLD歸結就是 PROLOG程序的運行機理,它也就是所謂的 PROLOG語言的過程性語義。 這種目標稱為復合目標 。 后一個例子說明 , 表也可以嵌套 。 同理 , Turbo PROLOG的變量也就有這八種取值 。 第 2章 人工智能程序設計語言 所以上述六種關系運算符 , 實際上也就是 Turbo PROLOG內部定義好了的六個謂詞 。 這個謂詞的功能是從鍵盤上讀取一個實數 , 然后約束給變量 X, 如果鍵盤上打入的不是實數則該謂詞失敗 。 student(1,張三 ,). student(2,李四 ,). student(3,王五 ,). print:student(Number,Name,Score), write(Number,Name,Score),n l , Number=3. 第 2章 人工智能程序設計語言 這個例子可以看作是計數循環(huán) 。 注意 , 這里用了無名變量 。 例如: Br :x0,x=1. Br :x=0,x=0. Br :x0,x=1. 第 2章 人工智能程序設計語言 PROLOG可以實現計循環(huán)次數的 FOR循環(huán) , 也可以實現不計循環(huán)次數的 DO循環(huán) 。 這個謂詞的功能是從鍵盤上讀取一個整數 , 然后約束給變量 X, 如果鍵盤上打入的不是整數則該謂詞失敗 。 若按 Turbo PROLOG中的原子形式來表示 , 則上面的兩個例子為 =(X+1,Y)和 (X,Y) 所以上述六種關系運算符 , 實際上也就是 Turbo PROLOG內部定義好了的六個謂詞 。 例如對于下面謂詞 p中的表 p([ name(Liming),age(20)] ) 則需這樣說明 : domains rec=seg* seg=name(string)。 表的元素也可以是結構或表 , 且這時其元素可以屬于不同領域 。 第 2章 人工智能程序設計語言 目標段 該段是放置程序目標的地方 。其具體實現方法是:匹配子句的順序是自上而下;子目標選擇順序是從左向右;(歸結后)產生的新子目標總是插入被消去的目標處(即目標隊列的左部)。 這次子目標 likes(X,sports)與程序中的事實立即匹配成功 , 且變量 X被約束為 bell。 第 2章 人工智能程序設計語言 3. 回溯 所謂回溯 , 就是在程序運行期間 , 當某一個子目標不能滿足 ( 即謂詞匹配失敗 ) 時 , 控制就返回到前一個已經滿足的子目標 ( 如果存在的話 ) , 并撤消其有關變量的約束值 , 然后再使其重新滿足 。 問題不能與規(guī)則及事實排在一起 , 它作為程序的目標要么單獨列出 , 要么在程序運行時臨時給出 。 作為特殊情形 , 一個事實也可以只有謂詞名而無參量 。du/dx+ u 所以 , 一般來講 , LISP自定義函數就是由其基本函數組合而成的 。 例如: (EQUAL′a′a)。 表的值是通過函數運算而得到的 ,原子的值則是通過賦值函數實現的 。 第 2章 人工智能程序設計語言 基本函數 LISP的函數都以表的形式出現 , 并一律使用前綴表示方式 , 即表頭為函數名 , 并且每個函數都有一個返回值 。 例如 , 對于表 (+12)的頭為 +, 尾為 (12)。 文字原子又稱符號 ( symbol) , 是以字母開頭的字母數字串 , 用來表示常量 、 變量和函數的名字等 。 第 2章 人工智能程序設計語言 混合型語言 以上三種語言都各有所長 , 但也都有其不足之處 。 但 LISP還不是純函數型語言 , 準確地講 , 它是基于 λ函數的語言 。 面向對象程序以其信息隱蔽 、 封裝 、 繼承 、 多態(tài) 、 消息傳遞等一系列優(yōu)良機制 , 大大改善了軟件的復雜性 、 模塊性 、 重用性和可維護性 , 有望從根本上解決軟件的生產效率問題 。 例如下面就是一個 LISP程序 。B) (A(B 下面我們僅舉例說明 。謂詞函數也有多個 , 下面我們僅給出常用的幾個 。 第 2章 人工智能程序設計語言 例如: (COND((NULL x)0) ((ATOM x)1) ((LISTP x)(LENGTH x))) 其語義是 , 若 x的值為 NIL, 則 COND的返回值為 0。 微分規(guī)則的存放 , 是通過為相應操作符建立 d特性的方法完成的 。 (fact) 格式 謂詞名 (項表 ). 其中謂詞名是以小寫英文字母打頭的字母 、 數字 、下劃線等組成的字符串 , 項表是以逗號隔開的項序列 。問題是程序執(zhí)行的起點 , 稱為程序的目標 。 第 2章 人工智能程序設計語言 2. 匹配合一 兩個謂詞可匹配合一 , 是指兩個謂詞的名相同 , 參量項的個數相同 , 參量類型對應相同 , 并且對應參量項還滿足下列條件之一: (1)如果兩個都是常量 , 則必須完全相同 。 第 2章 人工智能程序設計語言 子目標的求解過程與主目標完全一樣 , 也是從頭對程序進行掃描 , 不斷進行測試和匹配合一等 , 直到匹配成功或掃描完整個程序為止 。 如果需要和可能的話 ,系統還可把 john的所有朋友都找出來 。 第 2章 人工智能程序設計語言 例 如果把上節(jié)中的程序要作為 TurboPROLOG程序 , 則應改寫為: /*例子程序 1*/ DOMAINS name=symbol PREDICATES likes(name,name). friend(name,name) GOAL friend(john,Y),write(″Y=″,Y). 第 2章 人工智能程序設計語言 CLAUSES likes(bell,sports). likes(mary,music). likes(mary,sports). likes(jane,smith). friend(john,X):likes(X
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1