Accounting expert systems.by Smith, L. Murphy
Expert systems have been developed by larger firms and businesses for a variety of applications. While only a few systems can be purchased, packages are available to enable those interested in developing their own. The authors tell what's available.
Expert systems are computer programs that use captured human knowledge to solve problems that ordinarily require human experts. They can be used by nonexperts as well as experts to improve problem solving capability and to provide assistance in areas such as auditing, tax, financial planning, as well as professional education.
Expert systems were developed by artificial intelligence researchers during the late 1970s. While expert systems do not represent true machine intelligence, they mimic the reasoning techniques of onc or more human experts, at least within the narrow constraints the systems are programmed to handle.
Expert systems are a revolutionary approach to integrating computers into the management decision-making process. The early applications were originally termed "expert systems" because they were intended to approach problem solving and analysis in a similar manner, and with similar results, as that of human experts.
As a result of expert systems, computers can explore problems using verbal and/or qualitative analysis as well as the more traditional quantitative data-only reasoning. In comparison to prior computer applications, expert systems can process more complex situations, to provide more thorough solutions, and to produce results comparable to humans.
The power and flexibility of expert systems are primarily due to the inventive approach taken by early researchers in structuring the programs to drive the complex task of mimicking human reasoning. Rather than creating a traditional linear type of program that follows a step- by-step set of instructions in a prescribed order, researchers developed a way to partially emulate the human reasoning process.
The key to the success of expert systems is the unique separation of the components of the system into separate modules with a central engine to drive them. This structure continues to be used today in most applications of the technology.
Recently, many published expert system software packages have included the capability to interface with sources other than the direct user of the application. These other sources may include established databases or spreadsheets, remote measuring devices, or direct feeds from production facilities. These access features vary among software packages. The prospective user should be careful to determine the compatibility of the available systems with their current software and needs.
Expert systems are applicable to accounting areas where an expert exists, definitions of facts and decision rules are clear, and the system application boundaries are known. They cannot be used when data is incomplete or ambiguous. Expert systems are not known for flexibility or adaptability, and are best reserved for static rather than dynamic applications.
Using an Expert System
Users of expert systems require little or no computer experience. A user begins by querying the expert system about a particular accounting topic. The system responds with its own questions and continues to reframe user queries until a correct answer is derived. The system further provides the reasoning behind the answer.
For example, ExperTax, an expert system that supports tax accrual and planning from Coopers and Lybrand, queries the user concerning various tax areas.
An area is chosen such as bad debt write-off method, and the expert system asks a series of questions until a final tax accrual answer is reached. With each answer, ExperTax provides explanations such as IRC section, Treasury regulation, court case, or revenue ruling.
Expert systems are currently used in accounting for audit planning, internal-control analysis, account attribute analysis, quality, review, accounting decisions, tax planning, management consulting, and training. Current accounting applications include Loanprobe by KPMG Peat Marwick that can be used in bank audits to test loan loss reserves, ASQ by Ernst & Young that automates the audit process for manufacturing firms, and FSA by Arthur Andersen that aids in quality review and ratio development for inquiries. Exhibit 1 lists examples of expert systems developed in various accounting application areas.
Building an Expert System
Most current accounting applications of expert systems have been custom developed inhouse by information system professionals. These systems have been built from scratch using gramming languages such as Pascal, COBOL, LISP, and FoxBASE. Development of this type has been reserved for large CPA firms and businesses with sufficient funds and expertise to take on such a task. These same CPA firms and businesses have been reluctant to make their expert system developments available to others. This is partially due to the newness of the technology but is also due to legal liability concerns. Incorrect information derived from an expert system might lead to legal action against the developer. For example, expert system failure in audit planning could perhaps be blamed for audit failure, potentially exposing the developer to substantial legal liability. Also, developers have tended to closely guard the expert system applications they oped to maintain a competitive advantage.
Small CPA firms and businesses can develop expert systems by purchasing commercially available expert system shell packages such as those listed in Exhibit 2. These packages contain the four basic components of an expert system: knowledge base, inference engine, user interface, and explanation facility. Exhibit 3 provides a schematic that shows the interaction of the four components.
Knowledge Base. The knowledge base is a collection of facts and rules pertinent to the application area. It contains all the information necessary to solve a problem in a specific application area. These facts and rules explain procedures, identify relationships, determine classifications, and provide problem solutions. When using a shell package, the builder acts as a knowledge engineer who either uses his or her personal expertise or captures this knowledge from other experts.
Inference Engine. The inference engine enables one to use the captured knowledge of the knowledge base. This component consists of encoded computer programs that perform the reasoning function of the expert system. These programs match user questions and responses to the facts and rules captured in the knowledge base. The process continues through a series of questions until a final result is achieved. The name inference engine is derived from the ability to draw inferences from user-supplied facts that are matched to the appropriate captured knowledge. When using a shell package, the inference engine is included in the package for the developer.
User Interface. The user interface provides communication between the user and inference engine while also presenting backup from the explanation facility. This component controls user interaction, accepts commands from the computer keyboard, and displays results from the inference engine. It asks the user questions in normal sentence form and delivers answers and backup in conjunction with the explanation facility. The interface is provided for the developer in a shell package. Most are quite user friendly.
Explanation Facility. The explanation facility explains the system's reasoning and justifies its conclusions. This component explains why and how conclusions were reached. This makes users more comfortable with systcm operations and confident with the results. When using a shell package, the developer is responsible for the backup information. This information is entered as facts, and rules are captured in the knowledge base.
Expert System Reasoning
Expert systems may reason in only one of two predefined ways, either by searching for a match with a known solution (forward-chaining) or eliminating alternatives (backward-chaining). Although some systems allow users to switch the approach used, few do it well. This processing is done by the inference engine. The inference engine simply follows the set of instructions contained in the program that tell it how to match the data input from the interfaces with the rules contained in the knowledge base.
Forward Chaining. This method is the easier of the two to understand, as it mimics the standard reasoning process. Forward chaining may be thought of as moving down a decision tree using preliminary data from the interface(s) and using the following sequence of steps:
1. Each rule is tested to see if it matches the data from the interfaces. (Does the "if" in the "if-then" match current inputs?)
2. For each rule that matches, the conclusion from that rule (the "then" part) becomes new data.
3. The new data is then tested against the other rules to see if it can be matched.
4. This sequence continues until a solution is found.
Backward Chaining. Generally accepted to be the more efficient method of reasoning, backward-chaining can be thought of as working up a decision tree. The method consists of the following steps:
1. The computer begins with a result and finds a conclusion (the "then" in an "if-then" rule) that matches it.
2. The computer next looks at the condition (the "if") for the conclusion and checks to see if it is true (based on the data).
3. If true, the computer treats the condition as a conclusion and attempts to find a rule to match it (as in step 1).
4. If false, the computer attempts to find another rule to match the data.
5. The process continues until the computer reaches an end result or is unable to find a match with any rule (unknown solution).
Questions to be Answered
The prospective "knowledge engineer" must answer several qualitative and quantitative questions that include the following:
* Can the expertise be gathered?
* Are costs less than benefits?
* Have users requested the system?
* Is there sufficient interest to begin work on a prototype?
* What are the consequences of not having the system?
* Is management behind the idea?
* Are better alternatives available?
The first question can be the most troublesome. The knowledge of the TABULAR DATA OMITTED experts must be suitable for conversion into computer-understandable rules. The expertise should be narrow in scope, objective, and verifiable by other experts, and have alternative outcomes for each situation. The problem should be sufficiently complex so that a computer can be more efficient or quicker than human reasoning, yet still be simple enough that a computer can be programmed to process it.
In answering the second question, the benefits of using the expert system must be weighed against the costs of development and maintenance.
This is a partial list of possible issues, and is by no means all- inclusive. The system developer should adjust and add to this list according to the particular business environment.
Obtaining the Know-How
The process of knowledge acquisition during the development of an expert system is usually the most difficult and time-consuming task in the overall process. In many cases, experts find themselves at a loss as how to condense years of experience into a coherent set of "if-then" rules. When developing a system, the developer must carefully analyze the situation and accurately reduce the knowledge into rule form.
A step closely related to acquiring the know-how is that of making the expert system user friendly. The developer of the program must take care to properly and comprehensively document all portions of the software, both internally (that is, documentation within the program itself, such as help screens) and externally (i.e., user manuals). If a system is not user friendly, users will not employ the system efficiently and not adequately understand the questions posed by the system.
Implementing the Expert System
When the expert system is finally finished and ready to go, three final steps take place.
Adequate Testing. The expert system should be tested with several different problems with known solutions to ensure actual output matches expected results.
Parallel Operation. If the new system is replacing an old one, the new system should be run at the same time as the old one for a few processing periods to ensure there are no significant differences between the decisions made.
Follow-Up. The designer should periodically evaluate the system to ensure that the knowledge required for decision-making has not changed, the users have no serious complaints, and no unauthorized changes have been made to the system.
Previewing an Expert System Package
Those interested in learning about expert systems and building their own expert system might consider viewing a condensed version of Exsys. The condensed version functions similarly to the full version but contains fewer features. All Exsys products contain software and manuals designed for users with little computer skills. These packages use a convenient menu format with two basic nodes of operation: the rule-entry node and the run node.
The rule-entry or edit node allows the accountant to enter knowledge in the form of rules. The system captures the knowledge through a series of "if-then" statements. The builder adds rules through a menu selection as follows: "IF:" appears on the screen and a rule or premise is typed in. Once the rule is typed in, "THEN:" appears on the screen and the builder types in the outcome. For example, IF: Lease contains bargain purchase option, THEN: Lease type is capital.
The run node is the portion of the system that responds to user queries. The user begins with a subject query and the system responds with a set of queries until a final result is attained. For example, if the user enters a subject query of lease classification, the system responds with various queries such as: "Does the lease contain a bargain purchase option?" If the user enters "yes," the system would respond with "lease type is capital." Documentation supporting the result is also provided.
Menu options such as add rule, delete rule, edit rule, typo correction, and help, make Exsys a user-friendly system. Further, one can switch from rule-entry node to run node with a single keystroke, This ability to switch rapidly between nodes increases the efficiency and accuracy of development by allowing the builder to test the rules and examine the user views.
Another example of an expert system shell is VP-Expert developed by Paper-back Software International and currently available from Wordtech Systems, Inc. of Concord, California. The VP-Expert package includes an "Induce" command that automatically creates a knowledge base from a table contained in a text, database, or worksheet file. Optional development windows allow the user to observe the behind-the-scenes path of the inference engine as it navigates the knowledge base to solve problems. VP-Expert makes use of simple English rule construction and provides the ability to explain its actions during a consultation. An interface can create "if-then" rules directly from decision tables in external tiles. Confidence factors (from zero to 100) can be assigned to each rule and response. Additional information on VP-Expert is available in a book, VP-Expert for Business Applications, published by Holden-Day, Inc. of Oakland, California.
The two expert system shell software packages, Exsys and VP Expert, have been used to successfully develop a number of expert-system applications, including audit evaluations of the quality of internal audits, automation of the payroll audit decision, internal audit planning, and going-concern judgments. Other products listed in Exhibit 2 possess similar capabilities and can also be used to develop accounting applications but have not been available as long as Exsys and VP Expert. These software packages have varied degrees of task difficulty ranging from end-user applications to broad company-wide applications. Some vendors such as Trinzic develop customized expert systems.
Fully Developed Expert System Software
Accountants can take advantage of expert system technology by purchasing fully developed expert system software. Some examples of fully developed expert system applications are shown in Exhibit 4. The accountant is not responsible for building the knowledge base, as with the aforementioned packages.
Fully developed packages contain all components of an expert system as well as captured expert knowledge. The accountant is only involved as an end user. These packages are customized to specific accounting tasks. Accountants choosing these packages avoid development time and costs; however, these packages may not accomplish tasks in the exact manner desired. Some packages permit the user to customize the applications to some extent.
Previewing Fully Developed Expert Systems
Those interested in viewing a fully developed expert system should consider testing free demonstration software such as that provided for Expert Auditor. This system leads the accountant through every step of various specialized audit investigations. Expert Auditor is one of the most widely used expert systems in auditing today.
Answers is a fully developed expert system that aids the accountant in the audit planning process. Answers can help firms with audits, reviews, write-up services, and client risk assessments. It is particularly helpful in implementing SAS 56, Analytical Procedures, and SAS No. 59, The Auditor's Consideration of an Entity's Ability to Continue as a Going Concern.
TaxCut is a user-friendly expert system designed for users with little tax law knowledge and few computer skills. It contains captured expert knowledge of Harvard and Yale-educated tax lawyers. The system asks the user a series of simple "yes" or "no" queries concerning tax problems until a correct solution is derived. TaxCut even explains what every classification and deduction means. It also covers the areas of traditional non-expert system packages such as tax form use, figure placement, and math checks.
Internal Operations Risk Analysis can assist the CPA in gaining an understanding of a client firm's operating and control environment. Planman assists accountants in financial planning for clients in areas such as income tax, cash flow management, debt management, insurance, and retirement planning. Planman also contains built-in Harvard Graphics to aid in visualizing planning results.
L. Craig Foltin is a PhD student at Cleveland State University, Cleveland, Ohio. L. Murphy Smith, DBA, CPA, is Price Waterhouse Teaching Excellence Professor at Texas A&M University. He is an editor of The CPA and the Computer column of The CPA Journal.
The CPA Journal is broadly recognized as an outstanding, technical-refereed publication aimed at public practitioners, management, educators, and other accounting professionals. It is edited by CPAs for CPAs. Our goal is to provide CPAs and other accounting professionals with the information and news to enable them to be successful accountants, managers, and executives in today's practice environments.
©2009 The New York State Society of CPAs. Legal Notices
Visit the new cpajournal.com.