php 전문가 시스템 php expert system
2016.03.15 21:55
php 전문가 시스템 php expert system
PhpExpertSystem
PhpExpertSystem is a forward chaining inference engine written in PHP language. It can be used to build expert systems that emulate the human decision making ability in a minor manner. Expert systems are an attempt to implement artificial intelligence.
An expert system has two parts, the inference engine and the knowledge base. PhpExpertSystem provides an inference engine. Building the knowledge base includes studying the specific problem to be solved and identifying a set of rules that represents the knowledge. A rule has a condition and a conclusion which is used to represent a piece of knowledge. For example, "If I have money, I can buy food." represents a rule where "If I have money" is the condition and "I can buy food" is the conclusion. A collection of such pieces of knowledge (a collection of rules) is used to implement a human like problem solving system.
Features of PhpExpertSystem
- Simple to use and integrate with PHP applications.
- The rules are themselves defined in PHP. So all features available in PHP can be used. This allows complext conditions and complex conclusions to be expressed in PHP syntax.
- Wildcard support is available. Hence a single rule can match multiple facts of similar form and make conclusions related to them in one go. This improves the expressiveness of rules, extensively reduces the effort spent in writing and maintaining similar rules and makes the knowledge representation simple.
- Rule priorities can be specified. Hence, multi-stage decision making can easily be organized.
- Different rule sets can be maintained in the same rule table. So a single rule store can be used to maintain rules of different applications.
- Rules are maintained in a MySQL database. But this can be altered easily if you prefer a different rule storage (that many not even be a relational database system).
- Different parts of the inference engine have been abstracted well. Hence it is possible to replace parts to customize the inference engine easily.
Download
License
PhpExpertSystem is realeased as public domain software. So you do not need a license. Read the UNLICENSE file in the download for details.
User guide and demo
Look at the User guide to learn how rules are written, to run sample applications and to learn more.
Access the live demo to test the sample applications as you read through the User guide.
Technical design
This diagram which is slightly off from the code illustrates the key abstractions (classes) and their relationships:
[출처] http://www.deadschool.com/phpexpertsystem
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.