許多人曾經嚐試過許多方法來追求PROLOG程式的平行性。根據我們的觀察,由於分散 式處理方面的技術日趨完善,因此最有前途的方法,應該是在分散式結構上建立一個 分散式PROLOG系統。藉著此套系統來達成功能分散及各種平行處理的能力。 本論文的研究是承續台灣大學許清琦教授及張裕良同學在TUDUOS系統(一套在PC NET 上的分散式系統)上發展的分散式PROLOG推理系統。本論文主要的研究方向有二,第 一是使分散式PROLOG推理系統能夠安放在任何具備RPC 和XDR 的分散式系統上,而不 再只受限於PC。第二是增加本系統的能力。今天,我們已成功地使分散式PROLOG推理 系統具有安放在任何分散式系統的能力。同時,分散式系統上的任何兩部機器不需相 同,不需有一樣的作業系統,也不需做同步的工作。機器間彼此以訊息來做連繫。此 外,分散式推理系統的能力也被增強且擴充了。新的系統叫做分散式PROLOG系統。藉 著分散式PROLOG,各種並行處理如AND 並行處理、目標分散、PIPELINE PROGRAMMING 、半智慧型回溯等都可以自動地被執行。同時,使用者也可以很輕易地達成子句分散 的功能。為了方便使用者去使用分散式PROLOG,本系統提供了一個轉換器負責將傳統 的PROLOG程式轉換為分散式PROLOG程式。如此,使用者就可以不用親自去指定各種平 行性。最後,我們也在分散式PROLOG系統中加入一個動態工作分配器。利用動態工作 分配器,系統可以將獨立的子目標送到具有處理此子目標能力且工作負載量不大的機 器上。如此,整個分散式系統才能全自動地完成功能分散,並且維持平衡的系統工作 負載,也才能得到最佳的效率。
|