本研究係延續本論文指導教授林美娟老師過去數年來指導多位研究生所完成之MathCAL相關研究,進一步探討如何改寫MathCAL的系統核心,使其在執行上更有效率,同時使系統架構更為簡潔、合理。我們擬定了一套以派翠西網路為運作基礎的解題系統發展程序,並設計了Places與Transitions的溝通模式與撰寫框架,使其具有統一的格式,以便於後續的系統發展者可依此架構繼續擴增系統的知識。此外,由於一般程式語言所提供之資料型態不足以精確地表示某些數值,本研究因此自行撰寫了一個運算核心供解題系統使用。我們並且藉由實際發展數學與物理解題系統來驗證此發展程序及運算核心的適用性。
This thesis reports the results of a continuous research effort on MathCAL, a computer-assisted instructional software for practicing mathematical problem solving. As an extension to the existing system, we rewrote the system kernel to enhance its mathematical handling power and to streamline its system structure. The system is now capable of expressing numbers and mathematical expressions of arbitrary complexity as well as carrying out computation between them. We also proposed a set of procedure which details the steps to be followed in developing a Petri-net-based problem-solving system. The procedure includes a uniform structure for implementing transitions and places in a Petri net which records the problem-solving process. Mechanisms governing communication between transitions and places have also been defined. Such design resulted in a much cleaner system structure which facilitates system maintenance, especially when new transitions and places need be added to accommodate other knowledge units. The proposed procedure was applied in implementing a system for practicing problem solving in physics, particularly in solving problems that make use of Newton’s laws.