人工智能03 狀態機

狀態機

用特徵向量來表示環境

一個S-R agent所用的特徵向量能夠看作對與agent有關的環境狀態的表示。這個agent能夠從該特徵向量中計算出一個適合環境狀態的動做。這種agent的傳感器的侷限是特徵向量不可能精準地表示環境狀態——特別是那些從即刻傳感器輸入中進行計算的特徵向量。在此,咱們能夠考慮傳感器的歷史因素,從而提升其表示的精準度,由於agent也許曾感知過這些便可沒法感知的環境狀態的某些重要因素。數組

  • 狀態機網絡

    假設在某一時間t=0時,存在一個對環境的初始表示。在假設,在任意一個接下來的時間步驟(t+1)時對環境的狀態標識是(t+1)時的傳感器輸入、前一時間t時對環境狀態的表示和t時所採起的動做的函數。這種方法跟蹤其環境狀態的機器爲狀態機。數據結構

    狀態機必須具有用來儲存環境模型的儲存器。函數

這個模型可採用多種形式。最簡單的就是一個特徵向量的表示。特徵向量X~t+1~要依另外一個特徵向量X~t~而定。以下圖所示。學習

以第二章中提到的agent爲例,當時agent經過8個傳感器輸入中計算的特徵值來構造其環境模型,這些傳感器輸入把圍繞agent的8個單元是否空缺的信息傳遞給agent。若是此agent只能感知其東南西北四個方向,那麼在這種狀況下,agent只要從它的即刻傳感器、前一特徵向量和剛完成的動做中計算所需的特徵向量。機器人任然能夠完成沿邊界運動這一行爲。人工智能

Elman網絡

一個agent能用一種特殊的遞歸神經網絡(被稱爲Elman網絡)來學習如何從前一個特徵向量和傳感器輸入中計算後一個特徵向量的動做。這裏將說明只能感知其東南西北四個方向的沿牆運動的機器人是如何讓完成上述過程的。這個網絡學會了儲存那些適合當前任務的前一次所感知的特性。下圖就展現了一個Elman網絡。該網絡有8個隱藏單元,他們與上一節討論的機器人所需特徵一一對應。網絡輸入包括即刻傳感器輸入的四個信號,和前一時間步驟中8個隱藏單元的值。這8個附加輸入稱爲「上下文單元」它們使網絡將動做創建在已學會的前一次所感知的數據特性之上。blog

這裏咱們須要四個能夠區分的輸出來與東南西北四個動做一一對應。在一個典型的學習狀況中,咱們並不知道須要多少隱藏單元或多少層面。遞歸

圖標系統

特徵向量只是表示環境的一種方法,咱們還能夠運用其餘數據結構。好比,沿邊界運動的機器人在感知時,能夠用一個數組來儲存一張由空缺單元和非空缺單元組成的映像。用特徵或數據結構來表示世界的方法預示了人工智能的兩大派別。其中一派,咱們稱之爲對世界「基於特徵」的表示——即特徵向量或屬性向量;另外一派咱們稱之爲「圖標」表示——即數據結構(圖標表示有時也被稱爲模擬表示)神經網絡

當agent運用圖標表示時,它對數據結構的響應方式與沒有儲存器的agent對傳感器的響應方式幾乎同樣:計算數據結構的特徵。存在這樣一個機器人,它對局部環境的感知以下圖所示,空缺爲0,非空缺爲1,未知單元表示爲?,機器人所處位置爲R。每次作完動做後,機器人都要更新其模型,從而改變自身位置,並處理新的傳感器數據。程序

黑板系統

一個用來模型化世界的數據結構並不必定是圖標的。一種重要的人工智能及其基於「黑板」結構。一個被稱爲「知識源」的程序讀取並修改這一黑板。黑板系統詳細的闡述了前面所描述的產生式系統。每一個知識源有條件部分和動做部分,條件部分是計算一個特徵的值,這個特徵能夠是任意有關黑板的數據結構條件,其值爲1或0。動做部分任一改變數據結構或執行外部條件的程序。

舉個例子,依然討論處於網絡世界的機器人——此次,它的即刻傳感器有時會給出錯誤信息。這個機器人有一幅他所處世界的不完整信息。這一地圖可能不完整而且存在錯誤,這樣表達地圖的數據結構和包含傳感器的數據結構組成了一個黑板。

相關文章
相關標籤/搜索