Query processing (i.e., searching)

Processes and materials selection knowledge-based system

6220743

Abstract

A computer implemented knowledge-based system for the selection of materials and/or fabrication processes for a durable goods application. The system consists of a graphical user interface, an expert system shell and a models and data base program. The system provides rapid, consistent and accurate techno-economic comparisons of processes and materials to select the best materials and fabrication processes for the durable goods application.


Claims

We claim:

1. A process implemented on a computer comprising:

a) providing the computer with a database of physical data relating to materials, processes, shapes and applications;

b) providing the computer with physical models designed to operate on the physical data;

c) interacting with the computer to describe a desired durable good from the physical data contained in the database comprising the steps of:

1) selecting a durable goods application domain which includes the desired durable good;

2) specifying material characteristics associated with the desired good;

3) specifying process characteristics associated with the desired good;

4) specifying shape characteristics associated with the desired good; and

d) generating a set of application solutions derived from the physical models acting on the specified material, process and shape characteristics.

2. The process of claim 1, further comprising:

e) providing the computer with a database of economic data relating to materials, processes, shapes and applications and economic models designed to operate on the economic data; and

f) generating a cost factor for each solution derived from the economic models acting on the economic data associated with each solution.

3. The process of claim 2, further comprising:

G) discriminating between the solutions based on the cost factor, materials and processes associated with each solution.

4. The process of claim 1, wherein the shape characteristics are specified using a shape classification and decomposition module.

5. The process of claim 1, wherein the specifying shape step includes the step of

determining an overall shape of the desired durable good.

6. The process of claim 5, wherein the determining step includes the steps of:

executing at least one rule from a set of shape function rules;

executing at least one rule from a set of addition selection rules; and

executing at least one rule from a set of manufacturing selection rules.

7. A system implemented on a computer comprising:

A) a graphics user interface (GUI);

B) a database comprising materials, processes, shapes, and durable goods applications data;

C) a spreadsheet for performing numeric calculations; and

D) an expert system for performing knowledge based calculations; and

where the expert system, the spreadsheet and the GUI communicate with each other using dynamic linked libraries, dynamic data exchange procedures or mixtures thereof and where a user interacts with the GUI to specify characteristics of a desired durable good and the system generates durable good solutions based on the desired durable good, its specified characteristics and data associated therewith or derived therefrom.

8. The system of claim 7, further comprising:

E) a shape classification and decomposition module where the user interacts with the module through the GUI to specify an overall shape of the desired durable good and to identify possible simpler shapes into which the desired durable good can be decomposed.

9. The system of claim 7, wherein the experts system includes:

1) a knowledge engine module and

2) a domain expert module including a hierarchal classification of durable goods applications designed to enhance the performance of the expert system; and

where the knowledge engine determines possible materials or processes based on the durable good, its characteristics and data associated therewith or derived therefrom.

10. The system of claim 7, further comprising:

F) a economics module where the economic module generates a cost factor for each solution.

11. The system of claim 10, wherein the economic module includes

an opportunity identification module for determining the economic viability for each durable good solution generated by the system.

12. An apparatus comprising a computer including a memory, a display, a processing unit, a windowing operating system, and a direct access memory device, where the computer has implemented therein a system for selecting and analyzing new durable goods solutions, the system comprising:

A) a graphics user interface (GUI);

B) a database comprising materials, processes, shapes, and durable goods applications data;

C) a spreadsheet for performing numeric calculations; and

D) an expert system for performing knowledge based calculations; and

where the expert system, the spreadsheet and the GUI communicate with each other using dynamic linked libraries, dynamic data exchange procedures or mixtures thereof and where a user interacts with the GUI to specify characteristics of a desired durable good and the system generates durable good solutions based on the desired durable good, its specified characteristics and data associated therewith or derived therefrom.

13. The apparatus of claim 12, further comprising:

E) a shape classification and decomposition module where the user interacts with the module through the GUI to specify an overall shape of the desired durable good and to identify possible simpler shapes into which the desired durable good can be decomposed.

14. The apparatus of claim 12, wherein the experts system includes:

1) a knowledge engine module and

2) a domain expert module including a hierarchal classification of durable goods applications designed to enhance the performance of the expert system; and

where the knowledge engine determines possible materials or processes based on the durable good, its characteristics and data associated therewith or derived therefrom.

15. The apparatus of claim 12, further comprising:

E) a economics module where the economic module generates a cost factor for each solution.

16. The apparatus of claim 15, wherein the economic module includes

an opportunity identification module for determining the economic viability for each solution generated by the system.

17. A process for specifying characteristics of an overall shape of a durable good implemented on a computer comprising the step of:

A) executing at least one rule from a set of shape function rules comprising:

1) the overall shape requires object(s) inside and objects need to be accessed, then an access(es) becomes necessary;

2) the overall shape requires object(s) go in and out, then an access(es) is necessary;

3) the overall shape requires no object(s) inside at any time, then an access(es) becomes not necessary;

4) the overall shape requires objects(s) inside and object(s) do not need to be accessed, then an access(es) is not necessary;

5) the overall shape requires no object(s) goes in and out, then an access(es) is not necessary;

6) an access(es) into the overall shape is necessary during use, then an opening(s) need to be considered;

7) an access(es) into the overall shape is necessary during use and overall shape is closed, then decomposition into opened shapes needs to be considered;

8) an access(es) into the overall shape is not necessary during use, then an opening(s) are not necessary;

9) an opening(s) into the overall shape is necessary and MAX(an order of magnitude of size of at least on opening) is less than an order of magnitude of longer dimension of part in a plane perpendicular to the axis of the opening, then the overall shape is closed;

10) an opening(s) into the overall shape is necessary and MAX(an order of magnitude of size of at least on opening) is approximately equal to an order of magnitude of longer dimension of part in a plane perpendicular to the axis of the opening, then the overall shape is opened;

11) an opening(s) into the overall shape is not necessary, then the overall shape could be closed;

12) a part partially encloses an object(s) within the overall shape, then the overall shape is opened;

13) an object(s) inside, then the overall shape is hollow;

14) an object(s) goes in and out, then overall shape is hollow;

15) a part partially encloses an object(s), then overall shape is hollow;

16) a part is in contact with a solid supporting surface and part shape provides orientation with respect to the supporting surface;

17) the overall shape is under a load and load is important and aesthetics of the overall shape is not a factor, then overall shape could be 2D;

18) aesthetics of the overall shape is a factor, then overall shape could be 3D;

19) aesthetics of the overall shape is important, then overall shape is 3D;

20) a part lies approximately in one plane and part is not hollow; then overall shape is 2D;

21) the overall shape has a direction about which a cross-section is constant and part does not have a surface approximately perpendicular to the direction, then an overall shape is 2D;

22) the overall shape has an opened-shape cross-section about a longer direction, cannot find a direction about which the cross-section is constant, and part does not have a surface approximately perpendicular to the longer direction, then the overall shape is 2D;

23) the overall shape has an opened-shape cross-section about a longer direction, cannot find a direction about which the cross-section is constant, and part has at least one surface approximately perpendicular to the direction, then overall shape is 3D;

24) the overall shape has an closed-shape cross-section and cannot find a direction about which the cross-section is constant, then overall shape is 3D;

25) the overall shape has a direction about which the cross-section is constant and part has at least one surface approximately perpendicular to the direction, then overall shape is 3D;

26) the overall shape is closed and has a direction about which the cross-section varies simply, then the overall shape has a closed-shape cross-section;

27) the overall shape has a part that rotates during use, then the part has a symmetry of revolution;

28) the overall shape has a part in contact with a solid support surface and part shape provides orientation with respect to the supporting surface, then the part surface could include approximately flat portions;

29) the overall shape has an object(s) inside and a part of the shape provides orientation for the object(s), then a part surface could include approximately flat portions;

30) the overall shape is under a load and a load direction is torsion, then a cross-section is approximately thin-walled circular, rectangular or thick-walled circular;

31) the overall shape is under a load and a load direction is compression, then a cross-section is approximately thin-walled circular, rectangular or thick-walled circular;

32) the overall shape is under a load and a load direction is bending only, then a cross-section is approximately an I-profile, a U-profile, a wide I-profile or rectangular;

33) the overall shape is under a load and a load direction is bending and compression, then a cross-section is approximately an I-profile, a U-profile, a wide I-profile or rectangular;

34) the overall shape is under a load and a load direction is bending and torsion, then a cross-section is approximately rectangular of thin-walled circular;

35) the overall shape is under a load and a load direction is pressure only, then an overall shape approximates a body-of-revolution;

36) the overall shape is under a load and a load direction is pressure and bending, then a cross-section is approximates circular or hollow rectangular;

37) aesthetics of the overall shape is a factor, then simple variation of a standard cross-section with a profile made up of straight lines and simple curves;

38) aesthetics of the overall shape is a important, then complex variation of approximation of a standard cross-section with a profile made up of free-form curves;

39) aesthetics of the overall shape is not important; then could be a standard cross-section and the cross-section could be a constant;

40) a basic shape of a part of the overall shape has symmetry of revolution, then an overall shape is a body-of-revolution;

41) a part surface of the overall shape has several different portions approximately flat and the part does not lie approximately in one plane or is not approximately flat, then an overall shape is a folded-plate;

42) a basic shape of a part of the overall shape has symmetry of revolution and the basic shape of a profile of the part about the axis of revolution is curved, then an overall shape is a double-curvature;

43) a cross-section of the overall shape includes curves and a profile is curved in locations where the cross-section is curved, then an overall shape is a double-curvature;

44) the overall shape does not have a direction about which a cross-section varies simply, then an overall shape is a double-curvature;

45) the overall shape is 2D and the overall shape is opened, then the overall shape has a 2D opened cross-section;

46) the overall shape is 2D and the overall shape is closed, then the overall shape has a 2D closed cross-section;

47) the overall shape is 3D and the overall shape is opened, then the overall shape has a 3D opened cross-section;

48) the overall shape is 3D and the overall shape is closed, then the overall shape has a 3D closed cross-section;

49) the overall shape is 3D closed and the overall shape is a folded-plate, then the overall shape is 3D closed folded-plate;

50) the overall shape is 3D closed and the overall shape is double-curvature, then the overall shape is 3D closed double-curvature;

51) the overall shape is 3D closed and the overall shape is body-of-revolution, then the overall shape is 3D closed body-of-revolution;

52) the overall shape is 3D opened and the overall shape is a folded-plate, then the overall shape is 3D opened folded-plate;

53) the overall shape is 3D opened and the overall shape is double-curvature, then the overall shape is 3D opened double-curvature;

54) the overall shape is 3D opened and the overall shape is body-of-revolution, then the overall shape is 3D opened body-of-revolution;

55) the overall shape is a body-of-revolution and part includes flat surfaces, then the flat surfaces are perpendicular to the axis of revolution; or

56) X could be a and x is b, then destroy "x could be a" and x is b;

B) executing at least one rule from a set of addition selection rules; and

C) executing at least one rule from a set of manufacturing selection rules.

18. A process for specifying characteristics of an overall shape of a durable good implemented on a computer comprising the step of:

A) executing at least one rule from a set of shape function rules;

B) executing at least one rule from a set of addition selection rules comprising:

1) an opening(s) in the overall shape is necessary and the opening(s) is to be protected, closed or covered, then an addition(s) is necessary;

2) an opening(s) in the overall shape is necessary and an overall shape is closed, then an addition(s) is necessary;

3) an object(s) inside the overall shape needs to be separated, then an addition(s) is necessary;

4) an object(s) inside the overall shape needs to be located, then an addition(s) is necessary;

5) an object(s) outside the overall shape needs to be separated, then an addition(s) is necessary;

6) an object(s) outside the overall shape needs to be located, then an addition(s) is necessary;

7) the overall shape has a part that is 3D and divided sections are necessary, then an addition(s) is necessary;

8) an inside surface of the overall shape must be completely smooth, then no addition(s) inside except holes;

9) the overall shape needs no additions inside except holes and an addition(s) is necessary, then a hole(s) is necessary;

10) an outside surface of the overall shape must be completely smooth, then no addition(s) inside except holes;

11) the overall shape needs no additions outside except holes and an addition(s) is necessary, then a hole(s) is necessary;

12) an object(s) inside the overall shape needs to be attached, then an addition(s) is necessary;

13) an object(s) outside the overall shape needs to be attached, then an addition(s) is necessary;

14) an object(s) outside the overall shape handles or manipulates a part of the overall shape, then an addition(s) is necessary;

15) a part of the overall shape is in contact with a solid supporting surface and an orientation with respect to the supporting surface is required and a part shape does not provide the orientation with respect to the supporting surface, then an addition(s) is necessary;

16) a part of the overall shape is in contact with a solid supporting surface and the part provides a gap between the part and the supporting surface, then an addition(s) is necessary;

17) the overall shape is under a load and a load magnitude is large and a cross-section of the overall shape is a simple variation of a standard cross-section, then an addition(s) may be necessary;

18) the overall shape is under a load and a load magnitude is large or medium and a cross-section of the overall shape is a complex variation of an approximation of a standard cross-section, then an addition(s) may be necessary; or

19) the overall shape needs ribs and an outside aesthetics of the overall shape is a factor or important, then the ribs are internal; and

C) executing at least one rule from a set of manufacturing selection rules.

19. A process for specifying characteristics of an overall shape of a durable good implemented on a computer comprising the step of:

A) executing at least one rule from a set of shape function rules;

B) executing at least one rule from a set of addition selection rules; and

C) executing at least one rule from a set of manufacturing selection rules comprising:

1) the overall shape is 3D closed with an object(s) inside, then decompose the shape into at least two 3D opened shapes;

2) the overall shape is 3D closed with inside additions, except holes, required, then decompose the shape into at least two 3D opened shapes;

3) the overall shape is double-curvature, then the shape cannot be decomposed into 2D shapes;

4) the overall shape is 2D, then the overall shape can be decomposed into a series of flat 2D shapes;

5) the overall shape is a folded-plate, then the overall shape can be decomposed into a series of 3D opened folded-plates;

6) the overall shape is a folded-plate, then an orientation of a cutting plane(s) is any plane;

7) the overall shape is a folded-plate, then if the overall shape is a 3D opened folded-plate then it can be decomposed into a series of 2D shapes;

8) the overall shape is a 3D opened body-of-revolution only, then an orientation of a cutting plane(s) contains an axis of revolution or is perpendicular to the axis of revolution;

9) the overall shape is a 3D opened body-of-revolution, then the overall shape can be decomposed into at least two 3D opened shapes;

10) the overall shape is a 3D opened body-of-revolution and a profile of the shape includes a straight line segment, then the overall shape can be decomposed into at least two 3D opened shapes and the 3D opened shapes can be further decomposed into a series of 2D shapes, each 2D shape corresponding to one of the straight line segments;

11) the overall shape is a 3D opened body-of-revolution and a profile of the shape includes curves, then the overall shape can be decomposed into at least two 3D opened shapes and the 3D opened shapes corresponding to the curves are 3D opened double-curvature shaped;

12) the overall shape is a 3D opened body-of-revolution and the overall shape is 3D opened double-curvature, then an orientation of a cutting plane(s) contains an axis of revolution or is perpendicular to the axis of revolution and does not matter once shape decomposition is performed by the cutting plane(s);

13) the overall shape is a 3D opened double-curvature only, then an orientation of a cutting plane(s) does not matter;

14) the overall shape is a 3D opened double-curvature, then the shape can be decomposed into a series of 3D opened double-curvature shapes;

15) the overall shape is a 3D closed folded-plate, then an orientation of a cutting plane(s) does not matter or contains a plate;

16) the overall shape is a 3D closed folded-plate and an orientation of a cutting plane contains a plate, then the shape can be decomposed into a 2D and a 3D opened folded-plate shapes;

17) the overall shape is a 3D closed folded-plate and an orientation of a cutting plane does not matter, then the shape can be decomposed into at least two 3D opened folded-plate shapes;

18) the overall shape is a 3D closed body-of-revolution, then an orientation of a cutting plane(s) contains an axis of revolution or is perpendicular to the axis of revolution;

19) the overall shape is a 3D closed body-of-revolution and an orientation of a cutting plane contains an axis of revolution, then the overall shape can be decomposed into at least two 3D opened shapes;

20) the overall shape is a 3D closed body-of-revolution and an orientation of a cutting plane(s) is perpendicular to an axis of revolution, then the overall shape could be decomposed into at least two 3D closed body-of-revolution shapes, 3D opened body-of-revolution shapes or mixtures thereof;

21) the overall shape is a 3D closed body-of-revolution and the overall shape is a 3D closed double-curvature, then an orientation of a cutting plane(s) contains an axis of revolution or is perpendicular to the axis of revolution;

22) the overall shape is a 3D closed double-curvature only, then an orientation of a cutting plane(s) does not matter; or

23) the overall shape is a 3D closed double-curvature, then the shape can be decomposed into a series of 3D opened double-curvature shapes.


Description

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an apparatus and methods for the design and economic analysis of new durable goods based on knowledge of the durable good of interest, the plastics materials and processes to be used, and cost, market, and market share information.

More particularly, the present invention relates to apparatus, systems and methods for computer-aided design of new durable good from knowledge of the durable good of interest, the durable good's shape and size, using a shape selection protocol, the materials and/or processes for a particular durable goods application, and information related to determining the economics thereof. In even another particular, the present invention relates to a computer software system for the selection of materials and/or processes for a particular durable goods application, and for determining the economics thereof.

2. Description of the Related Art

The identification of business opportunities and the selection of the appropriate materials and fabrication processes for a "durable goods" application require knowledge which spans various domains of expertise. Business opportunity identification requires understanding of multiple industries, various market conditions, general business environment, and technical dimensions of various applications.

Selection of suitable materials and fabrication processes involve knowledge about strengths and weaknesses of fabrication processes, materials properties, mechanical design, and the shape and size of the durable good to interest. Selection of a suitable durable goods using a selected material, manufactured by a suitable fabrication processes also requires an economic analysis to determine whether the newly developed durable good has the necessary economics to make a viable new product for the markets place.

A person possessing the knowledge and skill to accurately and quickly identify business opportunities and select the appropriate materials and fabrication processes for a "durable goods" application would indeed be an expert. While such a person may exist, it is desirable to provide an apparatus incorporating a memory, a central processing unit, a display device and an user interface incorporating a computer based intelligent system to accurately and quickly identify business opportunities and select the appropriate materials and fabrication processes for a "durable goods" application.

U.S. Pat. No. 3,626,377, issued Dec. 7, 1971 to Markley, discloses a matrix generator for use in solving feed formulation problems. As disclosed, a matrix is developed in a matrix register, which is a logic array of component storage locations or registers for holding an organization of data relating to nutrients and ingredients. The specification of nutrients and ingredients for a desired feed is registered as two columns in the matrix register, from which the system operates to complete the entire matrix with information from an ingredient storage means which contains nutrient information on various specific ingredients.

U.S. Pat. No. 3,560,725, issued Feb. 2, 1971 and U.S. Pat. No. 3,628,004, issued Dec. 14, 1971, both to Claxton et al., both disclose a special purpose analogue computer designed for optimization of the ingredient levels of a rubber compound. The physical characteristics of a particular rubber compound may be closely approximated by a general empirical model equation expressed in terms of the ingredients. By analysis of raw experimental data relating to the physical characteristics of interest, a different set of influence coefficients for the general equation terms may be determined for each physical characteristic, whereby a number of special model equations are obtained. U.S. Pat. No. 5,260,882, issued Nov. 9, 1993 to Blanco et al., discloses a process a computer driven process for the estimation of physical and chemical properties of a proposed polymeric or copolymeric substance or material. The process for estimating generally involves defining the molecular chemical composition, estimating properties of the molecular chemical composition when 3-d folded, and forming the composition into a polymeric cluster, and the estimating the physical properties of the polymeric cluster.

U.S. Pat. No. 5,424,954, issued Jun. 13, 1995 to Makishima, discloses a computer-aided glass composition design apparatus and method. The disclosed algorithm includes a memory device having stored therein glass component compound data and glass physical property data, and includes a display device for initially displaying a plurality of glass component compounds from among the glass component data. Using an input device, a glass composition is selected from among the displayed glass components. The glass physical property data is processed to approximate at least one physical property of the selected glass composition. Alternately, the glass physical properties themselves are displayed and values assigned thereto, and the component processed to obtain a glass composition having approximated physical property values in accordance with the selected physical property values.

U.S. Pat. No. 5,463,564, issued Oct. 31, 1995 to Agrafiotis et al., discloses a system and method of automatically generating chemical compounds with desired properties. The system is a computer based, iterative process for generating chemical entities with defined physical, chemical and/or bioactive properties. During each iteration of the process, (1) a directed diversity chemical library is robotically generated in accordance with robotic synthesis instructions; (2) the compounds in the directed diversity chemical library are analyzed to identify compounds with the desired properties; (3) structure-property data are used to select compounds to be synthesized in the next iteration; and (4) new robotic synthesis instructions are automatically generated to control the synthesis of the directed diversity chemical library for the next iteration.

Jovanovic et al., "ESR--A Large Knowledge-Based System Project of European Generation Industry", Expert Systems With Applications, Vol. 5, pp. 465, 477 (1993), discloses a knowledge-based system with three generic Windows applications that communicate between each other dynamically using dynamic linked library or dynamic data exchange.

However, in spite of these advancements in the prior art, none of these prior art references disclose or suggest a system for the design and economic analysis of new durable goods concepts using a computer based knowledge system that will utilizes selected processes and materials for a durable goods application, its size and shape or design and a economic set of selected economic factors. Thus, these is still a need for a system for the selection of processes and materials for a durable goods application, and that will also provide an economic analysis.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide for a system for the selection of processes and materials for a durable goods application, and that will also provide an economic analysis.

The present invention further provides an apparatus including a processing unit, a memory containing types of durable goods, durable goods manufacturing materials, material properties information, processes and processing information, economic information and other relevant information, an user interface, and a set of memory based instructions for durable goods size and shape and type selection so that new durable goods can be designed and analyzed economically.

This and other objects of the present invention will become apparent to those of skill in the art upon review of this specification, including its drawings and claims.

The Processes And Materials Selection (PAMS) system of the present invention is a hybrid knowledge-based system composite requiring three main functions: (1) an expert system function; (2) a user interface function; and (3) a model and database function. It is to be understood that these three functions can be implemented utilizing any combination of one or more programs.

In a first embodiment of the invention, referred to herein as "SYS1", these three functions are implemented utilizing three software programs, Assymetrix ToolBook for the graphical user interface ("GUI"), Microsoft Excel for the model and database function, and Neuron Data Nexpert Object for the expert system function.

In a second embodiment of the present invention, referred to herein as "SYS2", the expert system function, a user interface function, and a model and database function are implemented utilizing two software programs. Again, Microsoft Excel is utilized to implement the model and database function, and ART*Enterprise is utilized to implement both the graphical user interface function and the expert system function.

The present invention also provides a method, stored in a computer memory and implemented in a computer central processing unit, for determining the shape and size criteria for a durable good so that material and processing information can be utilized with economic data to predict commercial and economic feasibility.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic showing an overview of the communication system 10 used within the both the SYS1 SYS2 embodiments of the present invention, showing the relationship between the user 11, a graphics user interface 13, an expert system shell 15, a spreadsheet 16, a knowledge engineer (KE) and a domain expert (DE) 18.

FIG. 2 is a schematic map of information flow for both the SYS1 and the SYS2 embodiment during a consultation, showing that user 11 may access the four major functions of the SYS2 embodiment 100, the selection function 40, the mechanical analysis function 50, the economic analysis function 60, or the shape selection function 70 (SYS2 only), in any order, or in any type of combination, to obtain information regarding processes or materials 41, dimensions 51, cost 61, or shapes and features 71.

FIG. 3 represents a conceptual map of the structure and information flow for the book level of the SYS1 embodiment using the GUI 13.

FIG. 4 provides the legend for FIG. 3.

FIGS. 5 and 6 represent the opportunity identification (e.g., an expert perspective for doing opportunity identification) and picture hierarchies of concepts, which include semantic and inheritance of characteristics of behaviors, and provide the "what" and the "how" for the program.

FIG. 7 represents the selection of processes and materials and pictures a hierarchy of concepts.

FIG. 8 shows a representation of part of the program for the selection of processes and materials.

FIG. 9 shows a small decision tree, with each packet of this tree represents a rule.

FIGS. 10, and 12-18, show high level representations of the inference chains and prototypes for the Processes and Materials Selection Module, with the legend for those figures provided in FIG. 11.

FIGS. 19-38 provided a high level illustration of inference chains, events and prototypes for the Opportunity Identification Module.

FIG. 39 provides a legend for FIGS. 19-38.

FIG. 40 shows an example of a material specific entry screen for the economic models of the present invention.

FIG. 41 shows an example of a process specific information screen.

FIGS. 42 and 43 show the input screens for inputting technical constraints and requirements for data relating to aesthetics, durability, ergonomics, environmental, mechanical, reliability and weight.

FIG. 44 shows the input screen for data relating to comparing existing versus new products, with existing product data including material used and process types, and new solution data including the users material and application type.

FIG. 45 shows the input screen for data relating to technical capacity, which data includes material, process and design analysis data, for both the customer and the user.

FIG. 46 shows the input screen for data relating to the business customer's major goals, with data including percentage of cost reduction value, importance of cost reduction, percent gain of market share, importance of market share gain, and performance improvement.

FIG. 47 shows the input screen for data relating to customer interest and business, with input variables including application growth, profitability, sales, market share, potential for product differentiation, capacity utilization, selling/marketing cost, price variation, and ability to brand.

FIG. 48 shows the input screen for data relating to customer direct competition and pressure, with input variables including: top 2 and 5 share of market for competitor concentration analysis; market growth for market maturity analysis; and top 3 customers, cost to switch, backward integrate, alternative suppliers; and differentiation position for the customer bargaining leverage analysis.

FIG. 49 shows the input screen for data relating to customer pressure and soft issues, with input data including customer price sensitivity of customer profitability, plastic cost, discount cost, real price growth, and also including "soft issues" such as credibility of customer, history of customer to develop products, innovation history of customer, and any personal issues.

FIG. 50 shows the input screen relating to customer support and commitment, including input variables relating to internal agreement, organization functions and levels, partnership, and resources and investments.

FIG. 51 shows the input screen relating to the user's revenue, with input variables relating to volume of units, plastic per unit, expansion potential, and options to maximize revenue.

FIG. 52 shows the input screen for data relating to the user's assets/strategies, with input variables relating to the user's competitive advantage and whether the project fits with the user's strategy.

FIG. 53 shows the input screen for data relating to the user's differentiation, with input variables relating to account penetration, design assistance, global supply, historical industry presence, technical assistance, unique delivery options, and unique product performance.

FIG. 54 shows the input screen data relating to the user's cost position, with input variables including conversion costs, raw materials, capacity utilization, plant age, process technology, and cost of capital.

FIG. 55 shows input screens data relating to the user's development project, with input variables including activities, person-time forecast, resources, and time frame.

FIG. 56 shows an output screen with information relating to opportunity analysis (OA) results for understanding the customer. Output variables include market attractiveness, project importance, customer commitment, and technical feasibility.

FIG. 57 shows an output screen with information relating to opportunity analysis (OA) results for the user's (illustrated as Dow in the figure) business.

FIG. 58 shows an output screen with information relating to the overall opportunity analysis (OA) results.

FIG. 59 shows an input screen for selecting the type of application, with selection to be made according to various levels "35", "45", "55" and "65", with the specificity of the levels increasing with the designation number.

FIG. 60 shows an the input screen for the part specification environment, with input data including chemical exposure, chemical types, hydrolytic stability, HDT, and ignition resistance.

FIG. 61 shows an input screen for part specifications surface and electrical, with input data including surface finish, color and texture.

FIG. 62 shows an input screen for mechanical and environmental and legal, with input data including ambient toughness, creep resistance, fatigue resistance, part toughness, part stiffness, emissions, environmental impact, recyclability. Input data is as shown on the screen.

FIG. 63 shows an input screen for part specifications shape, with input data including additions, complexity, constraints/dimensionality, degrees of draft, inside tolerances control, and shape control accuracy.

FIG. 64 shows an input screen for shape (continued) and production volume, with input data including size, undercuts and volume.

FIG. 65 shows the Pre-Selection Dialog Box in which the system informs the user that it will take some time to process the information that has been provided.

FIG. 66 shows the Cold Temperature Toughness Dialog Box in which the system requests more information from the user.

FIG. 67 shows the Wear/Abrasion Dialog Box in which the system requests more information from the user.

FIG. 68 shows the Legal Constraints Dialog Box in which the system requests more information from the user.

FIGS. 69, 70, 71, 72 and 73, show dialog screens for Recyclability, Sheet Molding Compound (SMC), Reaction Injection Molding (RIM), Structural Reaction Injection Molding (SRIM) and Resin Transfer Molding (RTM), respectively.

FIGS. 74 and 75 show the results from the processes and materials selection expressed in terms of lists of appropriate or rejected processes and materials, and explanations on how the conclusions were reached.

FIGS. 76 and 81 illustrate the screen triggered from menu item "overall shape".

FIG. 77 illustrates the screen triggered from menu item "additions".

FIG. 78 shows GUI input dynamics logic.

FIG. 79 shows the shape selection/decomposition screen output, with legend provided in FIG. 80.

FIGS. 82 to 109 show the screen outputs for the SYS2 embodiment of the present invention.

FIG. 82 shows a screen related to applications.

FIG. 83 shows a screen related to surface, application functional requirements.

FIG. 84 shows a screen related to shape, application functional requirements.

FIG. 85 shows a screen related to miscellaneous, application functional requirements.

FIG. 86 shows a screen related to mechanical, application functional requirements.

FIG. 87 shows a screen related to environmental legal, application functional requirements.

FIG. 88 shows a screen related to environment, application functional requirements.

FIG. 89 shows a screen related to processes and materials selection, results.

FIG. 90 shows a screen to override the processes and materials selection.

FIG. 91 shows a screen related to candidate material with a compatible, candidate process manually rejected.

FIG. 92 shows a screen related to manually selected, rejected materials with no compatible, candidate processes.

FIG. 93 shows a screen related to processes and materials selection.

FIG. 94 shows a screen related to economics.

FIG. 95 shows a screen related to economics, general user input.

FIG. 96 shows a screen related to grade families compatible with a process.

FIG. 97 shows a screen related to compatible grades families for SRIM.

FIG. 98 shows a screen related to compatible grades families for TIM and SRIM.

FIG. 99 shows a screen related to process specific, user input request.

FIG. 100 shows a screen related to family specific, user input request.

FIG. 101 shows a screen related to processes economic analyses results.

FIG. 102 shows a screen related to processes economic models.

FIG. 103 shows a screen related to mechanical analyses, overall stiffness.

FIG. 104 shows a screen related to overall stiffness calculation.

FIG. 105 shows a screen related to standard shape and shell plate models.

FIG. 106 shows a screen related to GUI for the rectangular plate with edges simply supported.

FIG. 107 shows a screen related to families dimensions results.

FIG. 108 shows a screen related to overview of windowing environment for mechanical analyses.

FIG. 109 shows a screen related to mechanical models.

FIG. 110 is a flowchart of the macro view of the operation of the present invention.

FIGS. 111A-111G are a flowchart of the operation of the PAMS system of the present invention showing more detail than FIG. 110.

DETAILED DESCRIPTION OF THE INVENTION

I. Overview

In a durable goods application, the knowledge required to understand technical and business needs, identify business opportunities, and select the best materials and fabrication processes for a "durable goods" application, spans multiple product lines and various technologies. The different forms of knowledge include symbolic reasoning, numerical computing, and data storage and retrieval. Different programming tools are needed for modeling these various forms of knowledge and providing adequate system functions.

As a result, the Processes And Materials Selection (PAMS) system of the present invention is a hybrid knowledge-based system composite requiring three functions: (1) a user interface function (discussed in detail in section III below); (2) an expert system function (discussed in detail in section IV below); and (3) a model and database function (discussed in detail in section V below). It is to be understood that the functions of the present invention may be implemented by any combination of one or more programs, including non-commercial and commercially available programs.

In a first embodiment of the invention, referred to herein as "SYS1", these three functions are implemented utilizing three commercially available software programs, ToolBook for the graphical user interface ("GUI"), Microsoft Excel for the model and database function, and Nexpert Object for the expert system function.

Within the framework described above, the PAMS SYS1 of the present invention features: a graphical user interface; an opportunity identification sub-system; a selection procedure for selecting appropriate processes based on application requirements with an explanation of how conclusions were reached; a selection procedure for choosing adequate classes of materials based on application requirements, functional values, and application domains with an explanation of the selection process; a procedure for running several mechanical models (standard shapes) for common grades of materials; a procedure for providing IBIS Associates economic models for limited processes; and an integrated database of engineering properties of various materials.

In a second embodiment of the present invention, referred to herein as "SYS2", the expert system function, a user interface function, and a model and database function are implemented utilizing two commercially available software programs. Basically, with SYS2, the functions of SYS1 have been further refined. The opportunity analysis was not implemented in SYS2, but SYS2 provides a more robust shape selection protocol, whereas in SYS1 the user must select the shape from a limited number of predefined shapes. Again, Microsoft Excel is utilized to implement the model and database function, and ART*Enterprise is utilized to implement both the graphics user interface function and the expert system function.

PAMS-SYS2 is a later version of the SYS1 embodiment and adds: a shape selection/decomposition module to help determine the shape and the features (e.g., holes, ribs) required for an application, as well as, providing the possible decomposition of the application shape into simpler shapes; a completed and refined knowledge base related to application requirements, processes characteristics and materials functional values; shell/plates mechanical models; a completed and integrated engineering properties database with the mechanical and economic models; more IBIS Associates economic models for more processes where the models are normalized to allow for meaningful comparisons between scenarios; and an enhanced and more flexible procedure for accessing the various functions of the system; and the ability to play "what if" scenarios.

Broadly, for both embodiments, spreadsheets perform numerical computing, and store and retrieve data. The expert system shell captures the decision making process and performs symbolic computing on the indicated information; while hypertext/graphical software implements a graphical user interface.

It is preferred that the system utilized be highly modular. For example, mechanical and economic models are contained in or correspond to different spreadsheets, macro sheets, or workbooks; materials functional values and processes characteristics are stored in separate databases; the opportunity identification procedure, the selection of processes procedure and the selection of materials procedure correspond to distinct knowledge bases; and the graphical user interface is divided into meaningful sections, windows or window groups. For both embodiments, these various applications communicate between each other using dynamic data exchange (DDE) or dynamic linked libraries (DLL) or a combination thereof FIG. 1 is a schematic showing an overview of the communication system 10 used within the both the SYS1 and SYS2 embodiments of the present invention. This figure shows the relationship between the user 11, interface 13, expert system shell 15, spreadsheet 16 and the knowledge engineer and the domain expert 18. Graphic user interface 13 communicates with the expert system shell 15 utilizing dynamic linked libraries (DLL), and the with spreadsheet 16 utilizing dynamic data exchange (DDE). Communication between the expert system shell 15 and the spreadsheet 16 requires both dynamic linked libraries and dynamic data exchange.

FIG. 2 is a schematic map showing information flow for both the SYS1 and the SYS2 embodiment of the present invention during a consultation. As shown in FIG. 2, user 11 may access the four major functions of the PAMS system 100, the selection function 40, the mechanical analysis function 50, the economic analysis function 60, or the shape selection function 70, in any order, or in any combination, to obtain information regarding processes or materials 41, dimensions 51, costs 61, or shapes and features 71.

During a consultation session, the system state changes to take into account user input via the user interface 13 and previous conclusions or states. Conveniently, what has been done previously affects what will happen next. Of course, although graphics user interfaces are more conducive to window based applications, other type of interfaces can be used as well which do not utilize graphics.

II. System Hardware & Software

It is to be understood that the present invention may be implemented utilizing any suitable computer or computing environments, including mainframes, minicomputers, workstations, networked computers, and desktop and notebook computers of both the PC and Macintosh type, or the present invention can be implemented on a networked client server. Presently, both the SYS1 and the SYS2 embodiments developed by the inventors are implemented on a PC type desktop computer.

In the practice of the present invention, the minimum system requirements for implementation of SYS1 on a PC type computer, besides the software providing the graphical user interface function and the expert system functions, are as follows:

         Hardware
         Processor        486 or equivalent computer
         RAM:             4 Mb
         Disk Space:      7.1 Mb (for PAMS)
         Monitor          VGA or Super VGA (with 256-color display)
         Software
         Operating System: DOS 5.0 or later
         Windowing System: Microsoft Windows 3.1


SYS2 is a later version of SYS1, and has slightly different minimum system requirements as follows:

    Hardware
    Processor        486 or equivalent computer
    RAM:             16 Mb
    Disk Space:      40 Mb (for PAMS)
    Monitor          VGA or Super VGA (with 256-color display)
    Software
    Operating System: DOS 5.0 or later
    Windowing System: Microsoft Windows 3.1 in enhanced mode with 40
                     Mb permanent swap space.
    WIN32            (allows 32 bit applications to run under Windows
                     3.1)


Table 1 provides the functions, sizes, and software for the principal files of the PAMS-SYS1 embodiment of the present system. Of course, the SYS2 system utilizes ART*Enterprise for the graphical user interface and expert systems functions, instead of both ToolBook and Nexpert Object, and some of the file sizes have grown to reflect increases in the database size.

    TABLE 1
    Files for PAMS SYS1
    Topics    Files         Size (b)  Software         Functions
    GUI       SYS1.tbk      2428943   ToolBook         GUI
    Reasoning OA.ckb        627078    Nexpert Object   Opportiinity Analyses
              Selector.ckb  492550                     Selection of Processes
     and Materials
              Models.ckb    39025                      Analyses for Grades of
     Materials
    Models    Inject1.xlu   130031    Microsoft Excel for IBIS Associates
     Technical Cost
                                      Windows          Models
              Diecast1.xlu  139441                     IBIS Associates
     Technical Cost
                                                       Models
              Econom1.xls   49480                      In-house Economic Models
              MechSYS1.xlw  109515                     Mechanical Models
    Databases ProcSYS1.slk  23909     Microsoft Excel for Processes
     Characteristics
              MatSYS1.slk   57651     Windows          Materials Functional
     Values
              EngSYS1.slk   25962                      Engineering Properties


III. Graphical User Interface (GUI)

It is desired that the user interface be user friendly, relatively easy to operate, and be suitable to accommodate the large amount of human-computer interactions expected. Thus, it is preferred to utilize a graphical user interface with pull-down menus, that is driven by, for example, a mouse or other such pointer device, such as a roll ball, track ball, finger pad, finger stick, and the like.

Referring again to FIG. 1, the SYS1 GUI module 13 communicates with the other modules 15 and 16 through dynamic link libraries (DLL) and dynamic link exchange (DDE). It is generally desired that GUI 13 provides: (1) dynamic link libraries to bridge the expert system shell and allow for call back from the inference engine through the GUI 13; (2) a friendly and flexible, English like, object-flavored script language which includes message handlers; (3) a wide variety of graphical objects (also referred to herein as "widgets"); and (4) a mouse with control options for performing selecting and positioning tasks.

Commercial GUI programs exist, and any suitable program may be utilized. Examples of suitable GUI programs include ToolBook, Plus, Hypercard (for MAC), Supercard, and MS Visual Basic.

In the SYS1 embodiment of the present invention developed by the inventors, the GUI is implemented with a graphical, hypertext software (ToolBook 1.53) which runs under Microsoft Windows 3.1 or higher. SYS2 utilizes the expert system software ART*Enterprise having an incorporated GUI module. While SYS1 and SYS2 utilize different programs for the GUI, the screens faced by the user appear essentially identical. The GUI of the present invention will generally be explained by reference to SYS1, with important SYS2 exceptions noted where appropriate.

The SYS1 GUI developed by the inventors, is highly modular, being divided in input, output, script, and communication sections. Only the input and output sections are visible to the user. In addition, the preferred SYS1 GUI developed by the inventors is structured according to the following ToolBook objects events-driven hierarchy:

1. The book.

2. The backgrounds of the book.

3. The widgets of the backgrounds.

4. The pages of the background pages.

5. The pages of the backgrounds.

6. The widgets of background pages.

7. The book pages.

8. The widgets of the book pages.

The book level contains handlers that determine the general behavior of the SYS1 GUI (e.g., window size, menu bar, or menu items) and the implements communication with the SYS1 expert system shell Nexpert Object 2.0B, the help routines of the windowing software, Help for Microsoft Windows, and the spreadsheet program Microsoft Excel 4.0 (e.g., launching of applications, Excel Macro executions, Nexpert Object inference engine controls). In particular, it contains generic handlers for the dynamic linked library and the dynamic data exchange with Nexpert Object and Microsoft Excel, respectively.

FIG. 3 represents a conceptual map of the structure and information flow for the book level of the SYS1 embodiment GUI, with FIG. 4 providing the legend for FIG. 3. User defined handlers and functions are attached to the various objects and message-sending through the hierarchy defines the behavior of the SYS1 GUI. The following Table 2 summarizes the functions for each section of the SYS1 GUI developed by the inventors.

    TABLE 2
    Modularity
    The GUI itself is highly modular. It is divided in input, output, script,
     and
    communication sections. Only the input and output section are visible to
     the
    user. Table summarizes the functions for each section of the GUI.
    GUI Sections
                   Sections (i.e.,
    Types          Backgrounds)          Functionality
     Pages
    Input          PAMS                  Welcome                            1
                   Applications          Select a "durable goods" application.
     1
                   Part Specifications   Enter part functional requirements. 5
                   Design                Select shape, enter mechanical
     constraints. 17
                   Opportunity           Provide opportunity analyses
     information. 14
    Output         Opportunity           Give recommendations.              3
                   Selection             List candidate and rejected, processes
     and 2
                                         materials.
                   Analyses              List results of mechanical and
     economic 1
                                         analyses.
                   Advisor               Not functional yet!           1
    Script         Data                  Look at the databases.             1
                   Models                Look at the mechanical and economic 1
                                         spreadsheets.
                   BookAlternate         Control Nexpert Object (DLL handlers)
     and 1
                                         Microsoft Excel (DDE handlers).
                                         Include functions for the explanation
     utility.
                   ScriptAlternate       Contain general functions and handlers
     for 1
                                         pages and widgets.
                                         Link the I/O backgrounds to the
                                         Communication backgrounds.
                   ApplicationsAlternate Define levels of market cuts       1
                   UtilitiesAlternate    Contain functions and message handlers
     for 1
                                         the utilities.
    Communication  OABoard               Map I/O between ToolBook and Nexpert 1
                                         Object.
                   PreSelectionBoard     Map I/O between ToolBook and Nexpert
     93
                                         Object.
                                         Include functions for the explanation
     utility.
                   DesignBoard           Map I/O between ToolBook, Nexpert
     Object, 1
                                         and Microsoft Excel.
                                         Control Microsoft Excel.
                   FundamentalAnalysesBoard Contain functions for mechanical
     and 1
                                         economic results.
                   AdvisorBoard          Not functional yet!           7


In the SYS1 embodiment, in order to address maintenance issues, attention has been paid to balancing modularity and granularity. The SYS1 GUI is modular, but not to the extent of being granular. The SYS1 GUI has a multi-board structure where private conversations are allowed. Each background of the communication section as listed in the above Table 2, can be used as a blackboard. Although the SYS1 GUI implements the scheduler of this multi-board architecture, not all the communication goes through the GUI and private communication between the spreadsheet and the expert system shell takes place.

The inventors do note that ToolBook has somewhat limited portability to various platforms, and the serial communication between Nexpert Object and ToolBook through the dynamic linked library is somewhat inefficient. Thus, it would be preferred to port the GUI function to a multimedia tool available on multiple platforms or to move it to a graphical tool kit integrated with the expert system shell. Most preferred is a portable, integrated to the expert system shell, object-oriented graphical tool kit to reduce the implementation effort of the GUI and facilitate portability and maintenance. Many of these concerns are addressed in the SYS2 embodiment, which utilizes ART*Enterprise. Commercially available multimedia tools suitable for use in the present invention, and which have greater portability than ToolBook include OIT (open interface toolkit) from Neuron Data.

Commercial programs also are available which incorporate both an expert system and a GUI. For example, besides ART*Enterprise, Level5 Object 3.0 available from Information Builders, Inc., provides an expert system with rules, forward and backward chaining logic, and very limited object oriented processing, and an integrated graphical tool kit. As another example, ART-IM 4.0, SmartElements from Neuron Data, provides an expert system with rules, forward and backward chaining, pattern matching, non monotonic reasoning, full object oriented capabilities, and an object oriented graphical tool kit, and portable scripting language capabilities.

It is desirable to design the system to make the input and output screens as user friendly as possible. Preferably, the following issues are considered in designing the screens: to (1) consistency of color, font, shape, and style; (2) specificity of meaning for widget, font, and color; (3) cleanness and clarity of display; (4) amount of information displayed directly; (5) amount of context sensitive detail; and (6) visual fitness and understanding, preferably top to down and left to right.

The following Tables 3-15 describe the important message handlers and scripts for all the sections of the SYS1 GUI as listed in Table 2, above.

    TABLE 3
    The Book
    Book Handlers
    Handlers                  Functionality
    enterBook                 set system variables, clear fields, reset button
     labels, size window
                              link Nexpert Object DLL, user defined DLL to
     Nexpert Object
                              link Window help DLL, ToolBook dialog box DLL
                              run Excel and load workbook
    leaveBook                 unlink DLL
                              quit Excel
    DDEExcelRun theStr, nAtoms, execute Excel macro
    theAtoms                  DDE to Excel: get "[activate(" & quote & theStr &
     quote & ")]"
                              executeRemote it application Excel topic system
    DDEExcelPoke theStr,      poke the value VValue of the Nexpert Object slot
     (theAtoms) to
    nAtoms, theAtoms          Excel cell MyCell using TBK_GetAtomFromList and
                              NXP_GetAtomInfo and continue inferencing
                              DDE to Excel: setRemote MyCell to VValue
     application Excel
                              topic theTopic
    DDEExcelRequest theStr,   request the value of Excel cell MyCell, volunteer
     to a Nexpert
    nAtoms, theAtoms          Object slot, and continue inferencing using put
                              TBK_GetAtomFromList and get NXP_Volunteer
                              DDE to Excel: getRemote MyCell application Excel
     topic
                              theTopic
    author                    request a password to switch to developer mode
    enterComments             message handler for the "Enter Comments" menu
     item
                              get showCommentsScreen(the name of this
                              page,VKeepComments of this
     page,GCo,"EnterComments") of
                              page UtilitiesAlternate
    SaveAllComments           message handler for the "Save All Comments" menu
     item
                              get cancelCommentsScreen(the name of this
                              page,VKeepComments of this page,GCo) of page
                              UtilitiesAlternate
    Questionnaire             message handler for the "Questionnaire" menu item
                              DDE to Excel to load, run, save, and close the
     workbook
                              Question.XLW
    Database                  DDE to Excel to load, run, save, and close the
     engineering properties
                              database
    TestCases                 message handler for the "Test Cases" menu item
                              DDE to Excel to load, run, save, and close the
     worksheet
                              Verify.XLS
    PAMS                      message handler for the "PAMS" menu item
                              get theInformationDisplayed(the name of this
     page,"",GAbout,
                              "&PAMS") of page UtilitiesAlternate
    AboutPAMS                 message handler for the "About PAMS" menu item
                              get theInformationDisplayed(the name of this
                              page,"",GaboutPAMS, "&About PAMS") of page
     UtilitiesAlternate
    Team                      message handler for the "Team" menu item
                              get theInformationDisplayed(the name ot this
     page,"",GTeam,
                              "&Team") of page UtilitiesAlternate


TABLE 4 Book Handlers (Continued) Handler and Script Functionality Sponsors message handler. for the "Sponsors" menu item get theInformationDisplayed(the name of this page,"",GSponsors, "&Sponsors" ) of page UtilitiesAlternate ReferenceManual message handler for the "Reference Manual" menu item use windows DLL winHelpIndex(sysWindowHandle, ReferenceManualFile, 3, 0) and winHelpKey(sysWindowHandle, ReferenceManualFile, 257,it) UserGuide message handler for the "User Guide" menu item use windows DLL winHelpIndex(sysWindowHandle, UserGuideFile,3,0) and winHelpKey(sysWindowHandle, UseGuideFile,257,it) general message handler for the "General Help" menu item get displayHelp(the name of this page,theText, GHelp, general) of page UtilitiesAlternate restartPAMSConsultation go to first page of the book restart knowledge base (Nexpert Oblect's inference engine) restartPAMS go to first page of the book get UnLoadKnowledgeBase of background BookAlternate ALH code, str bring different type of dialog boxes for Nexpert Object call-back (e.g., information, end of session) use message handlers to buttons BMessageHandleDiatogBoxOk, BMessageHandleDialogBoxEOS, or BMessageHandleDialogBoxCONTINUE of background UtilitiesAlternate QH theAtom, theQuestion bring different type of dialog boxes for Nexpert Object data request call-back, depending of the data type use message handlers BMessageHandleDialogBoxMList and BMessageHandleDialogBoxList of background UtilitiesAlternate utilize ask and request handlers Generic theStr, nAtoms, a user-defined generic handler to transfer information from theAtoms Nexpert Object to ToolBook depending on theCode (last word of theStr), get: explain(theText,nAtoms,theAtoms) of page BookAlternate, results(theText,nAtoms,theAtoms) of page BookAlternate, prepare TheLists(theText,nAtoms,theAtoms) of background PreSelectionBoard, theLists(theText,nAtoms,theAtoms) of background PreSelectionBoard, explanationToBoard(theText,nAtoms,theAtoms) of page PreSetectionBoard, listMechResults(theText,nAtoms,theAtoms,Materials,Analyses) of background FundamentalAnalysesBoard, listEconResults(theText,nAtoms,theAtoms,Processes,Analyses) of background FundamentalAnalysesBoard, listTheGrades(theText,nAtoms,theAtoms,Grades,Grades) of background DesignBoard

TABLE 5 Book Handlers (Continued) Handler and Script Functionality HourGlass theStr, nAtoms, modify the mouse cursor shape as appropriate theAtoms PreSelectionOfProcessesAnd message handler for the "PreSelection of Processes and Materials Materials" menu item clear appropriate fields reset menu and button captions for the new consultation set system variables and update the bottom status line PreSelectionAndAnalyses message handler for the "PreSelection and Analyses" menu item clear appropriate fields, reset menu and button captions for the new consultation set system variables and update the bottom status line OpportunityAnalyses message handler for the "Opportunity Analyses" menu item clear appropriate fields, reset menu and button captions for the new consultation set system variables and update the bottom status line CompleteConsultation message handler for the "Complete Consultation" menu item clear appropriate fields, reset menu and button captions for the new consultation set system variables and update the bottom status line EconomicModels message handler for the " . . . Models" menu item MechanicalModels check menu item and go to page Model EngineeringProperties message handler for the "Engineering Properties" menu item check menu item and go to page Data Design message handler for the "Design" menu item clear appropriate fields, reset menu and button captions for the new consulation set system variables and upate the bottom status line exitPAMS send leaveBook MyInitialMenu initialize menu bar and menu items MyAddMenuItems theExplain customize menu bar and items depend on consultation type and phase Browse message handler for the "Browse" menu item send history ResetForwardString TheString volunteer values to the Nexpert Object slot TheString to trigger the meta-slot which reset the decision tree related to TheString uncheckMenuConsultations uncheck the menu items of the menu Consultations PAMSFinishSolving DDE execute message handler with Excel Solver for the mechanical analyses

TABLE 6 Input/Output Sections Handlers and Scripts for the Input/Output Sections Background Section and Pages Handler and Script Functionality PAMS background handle BContinuePAMS set menu and progression depending on the consultation page PAMS handle enterPage set system variables update bottom status line handle teavePage set system variabtes handle idle move group GMECCircles Applications background handle BContinueApplications load knowledge base handle BBackApplications unload knowledge base page handle enterPage, set bottom status line and highlight Applications selection handle leavePage record selection Opportunity background handle BContinueOpportunity unload and load knowledge bases Identification and, depending on the consultation; volunteer, suggest, and run Nexpert Object handle BBackOpportunity unload and load knowledge bases depending on consultation pages handle enterPage set bottom status line; set the list of Opportunity input variables, and highlight to selection when necessary Opportunity12 handle leavePage reset some system variables handle ButtonUp (Next>>) set bottom status line and transfer input variables values to OABoard handle ButtonUp (<<Previous) in general, go to the previous page handle ButtonUp (<<Previous) in general, go to the previous page page handle enterPage set bottom status line; set the list of Opportunity13 input variables, and highlight selection when necessary handle leavePage reset some system variables handle ButtonUp (Next>>) set bottom status line and menus transfer input variables values to OABoard, prepare the fields for the OA results, volunteer, and control Nexpert Object inference engine handle ButtonUp (<<Previous) in general, go to the previous page handle ButtonUp (<<Previous) in general, go to the previous page

TABLE 7 Handlers and Scripts for the Input/Output Sections (Continued) Background Section and Pages Handler and Script Functionality Opportunity page handle leavePage reset some system variables Identification Opportunity14 handle ButtonUp (Next>>) go to the next page handTe ButtonUp (<<Previous) reset knowledge base or choose another consultation page handle leavePage reset some system variables Opportunity15 handle enterPage set status line handle ButtonUp (Next>>) go to the next page handle ButtonUp (<<Previous) go to the previous page page handle leavePage reset some system variables Opportunity16 handle enterPage set status line handle ButtonUp (Next>>) send BContinueOpportunity handle ButtonUp (<<Previous) go to the previous page Part background handle volunteer data files names and Specifications BContinuePartSpecifications suggest Setector.BoolVar (Nexpert) handle go back to main menu or to the BBackPartSpecifications Opportunity identification (unload and load knowledge base in Nexpert Object) page Part handle enterPage set bottom status line, set the list of Specifications input variables, display the groups on the page (depending on the application domain), and highlight the selections when necessary handle leavepage reset some system variables handle ButtonUp set bottom status line and transfer (Continue>>) input variables values to the PreSelectionBoard handle ButtonUp send BBackPartSpecifications (<<Opportunity Identification) pages Part handle enterPage set bottom status line, set the list of Specifications1 input variabies, display the groups to on the page (depending on the Part application domain), and highlight Specifications3 the selections when necessary handle leavePage reset some system variables handle ButtonUp transfer input variables values to (Continue>>) PreSelectionBoard handle BuffonUp go to previous page (<<Opportunity Identification)

TABLE 8 Handles and Scripts for the Input/Output Sections (Continued) Background Section and Pages Handler and Script Functionality Part page Part handle enterPage set bottom status line; set the list of Specifications Specifications4 input variables, display the groups on the page (depending on the application domain), and highlight the selections when necessary handle leavePage reset some system variables handle ButtonUp transfer input variables values to (PreSelectionResults>>) PreSelectionBoard, send BBackPartSpecifications, and update menu handle ButtonUp go to previous page (<<Opportunity Identification) Selection background handle BContinueSelection unload, load knowledge bases, volunteer, suggest, and control to Nexpertg Object's inference engine depending on the consultation. Set bottom status line handle BBackSelection send BBackPartSpecifications or BContinueOpportunity depending on consultation page Selection handle enterPage set bottom status line, prepare display for re-selection results handle leavePage reset some system variables handle ButtonUp Rejected>>) go to Rejected handle ButtonUp (<<Part send BBackSelection Specifications) page Rejected handle enterPage set bottom status line, prepare display for re-selection results handle leavePage reset some system variables handle ButtonUp (Design>>) send BContinueSelection handle ButtonUp (<<Selected) go to Selection Design background handle BContinueDesign set some system variables and place data onto the DesignBoard; volunteer, suggest, and control the Nexpert Object inference engine set the bottom status line handle BBackDesign unload, load, or restart knowledge base depending on the consultation page Design handle enterPage set the list of variables, highlight selection handle leavePage set some system variables and keep record of highlights handle ButtonUp (Mech & set bottom status line, place data on Econ Analyses>>) the DesignBoard handle ButtonUp (<<Grades) set bottom status line; prepare, reset some decision trees, and restart Nexpert Object inference engine

TABLE 9 Handlers and Scripts for the Input/Output Sections (Continued) Background Section and Pages Handler and Script Functionality Design page Grades handle enterPage set bottom status line, highlight grades selection handle leavePage keep record of highlights handle ButtonUp (Continue>>) reset some decision trees, suggest and control Nexpert Object's inference engine handle ButtonUp send BBackDesign (<<PreSelection) pages handle enterPage set bottom status line, highlight EqualLeggedAngle selection, set the list ot input to variables UProfileChannel handle leavePage keep record og highlights and set some system variables handle ButtonUp (Mech & set bottom status line, prepare Econ Results>>) display for the mechanical results, place data on the DesignBoard, and send BContinueDesign handle ButtonUp (<<Back) set bottom status line, go to page Design Analyses background handle BContinueAnalyses unload, load knowledge base (Nexpert Object) handle BBackAnalyses depending on the analyses to run, reset specific decision trees in Nexpert Object page Analyses handle enterPage prepare display of the mechanical and economic analyses handle leavePage set some system variables handle ButtonUp (Advisor>>) send BContinueAnalyses handle ButtonUp (<<Fund. send BBackAnalyses Analyses)

TABLE 10 Scripts Sections Handlers and Scripts for tha Script Sections Background Section and Pages Handler and Script Functionality BookAlternate background get LoadKnowledgeBase call UnloadKnowledgeBase and theKB,theHypo load the knowledge base theKB (Nexpert Object) get UnloadKnowledgeBase unload the (KBid) knowledge base (Nexpert Object) get VolunteerIntoToSoftware volunteer or poke value theValue theVariable,theValue,theBoard, to variable theVariable placed on theSoftware board theBoard into sotfware theSoftware (Nexpert Object or Excel) get startBackwardChaining suggest hypothesis theHypo and theHypo run the inference engine (Nexpert Object) page get Explain prepare the various explanation BookAlternate theTag,nAtoms,theAtoms (the topic is indicated by theTag) of the reasoning for the Opportunity Identification and the Selection, and store them as properties of the background UtilitiesAlternate get Results display the results (the topic is theTag,nAtoms,theAtoms indicated by theTag) of the Opportunity Identification ScriptAlternate background get clearFields clear fields of the list theList and on theList,thePage the page thePage get formatNumber theNumber format number theNumber get StripCRLF myVar remove carriage return and line feed from the string myVar get AddUnitToNumber add unit to number theNumber TheNumber get StripCRLF myVar remove carriage return and line feed from the string myVar get hightLight highlight or record the selections of thePage,theList,theCode the items of the list theList when entering (theCode) or leaving the page thePage get change colors for the cell theCell of HChangeTableYesNoColors horizontal mutli or single-select list theCell boxes get FieldFormat format the field theField theField,theFillColor, theFont, theStroke, theSize,theFontType

TABLE 11 Handlers and Scripts for the Script Sections (Continued) Background Section and Pages Handler and Script Functionality SciptAlternate Background get populateListBox populate a vertical list box with the theList,theLine,theField,theFill appropriate items and format Color, theFont, theStroke, theSize,theFontType get ChangeNumber theField, increment or decrement by Delta UpperLimit, LowerLimit, the integer value contained in field Direction, Delta theField according to UpperLimit LowerLimit, and Direction get stripPercentageXY remove special characters such as theValue %, x, y from theValue get scanColors highlight selection tor horizontal RowNumber,NumberOfColumns, multi-select list box thePresentPage get synchScrolling synchronize scrolling between thepage,theField,theOtherField fields theField and theOtherField of the page thePage get MyParseSpace TheStr substitute " " or "&" by "_" in the string TheStr get remove " ", "&" or "/" from the getRidOfSpecialCharacters string TheStr TheStr get replace "_" by " " in string TheStr MyParseUnderscoreToSpace TheStr get replace "_" by "&" in string TheStr MyParseUnderscoreToAmpersand TheStr get extractNameFromSlot return object name from Nexpert MyName Object slot get substituteSpaceForComa substitute space for coma in string theString theString page get place information of the page ScriptAlternate PutInformationIntoTheBoard thePresentPage onto the board theBoard, TheBoard, and call thePresentPage,theSoftware VolunteerIntoToSoftware to transfer it to theSoftware (Nexpert Object or Excel) Applications background get theApplication return the application selected by Alternate the user get makeTheList thisField display the lists ot applications to choose trom (levels 35 to 55) page get displayLevel65 display level 65 of market cut Applications Alternate Data page Data handle enterPage set bottom status line handle leavePage set some system variables Models page Models handle enterPage set bottom status line handle leavePage set some system variables

TABLE 12 Handlers and Scripts for the Script Sections (Continued) Background Section and Pages Handler and Script Functionality Utilities background handle buttonUp theText bring a dialog box with an "OK" button Alternate (MessageHandlerDialogBoxOK) and display a text thelext handle buttonUp theText bring a dialog box with a "Continue" (MessageHandlerDialogBoxContinue) button and display a text theText; "Continue" reruns the Nexpert Object inference engine handle buttonUp bring a dialog box with a "Continue" (MessageHandlerDialogBoxList) button, display a question, and a single- select list box; "Continue" volunteers the selection to Nexpert Object and reruns the inference engine handle buttonUp bring a dialog box with a "Continue" (MessageHandlerDialogBoxMList) button display a question, and a multi- select list box; "Continue" volunteers the selection to Nexpert Object and reruns the interence engine handle buttonUp theText bring a dialog box with an "OK" button (MessageHanderDialogBoxEOS and display a text theText "OK" displays the end of consultation screen handle buttonUp theText bring a dialog box with "OK" and "Print" (HelpExplain) buttons and display an explanation text theText; "OK" calls cancelHelp() and "Print" calls get cancelHelp() and get printExplain(theText,the name of this background) of page UtilitiesAlternate handle buttonUp theText bring a dialog box with "OK", "Save", (Comments) "Save All", and "Print" buttons. The buttons call different script of page UtilitiesAlternate

TABLE 13 Handlers and Scripts for the Script Sections (Continued) Background Section and Pages Handler and Script Functionality Utilities page Utilities get theInformationDisplayed display information and check menu item Alternate Alternate thePreviousPage, theText, theObject, theMenuItem get theInformationGone remove information and uncheck menu thePreviousPage, theText, item theObject, theMenuItem get displayHelp display general help for each page thePreviousPage, theText, thePreviousPage of the book theObject,theIndex get cancelHelp cancel general help for each page of the thePreviousPage, theText, book theObject get showCommentsScreen show the dialog box for entering thePreviousPage,theText,the comments and check menu Object,theMenuItem get saveCommentsScreen save comments for the page thePreviousPage,theText,the thePreviousPage Object get saveAllCommentsScreen save comments for all the pages of the book get DisplayEndOfSession display the end of consultation screen get displayExplain bring the dialog box for displaying the thePreviousPage,theText,the explanation for the major elements of Object,theIndex,theMenuItem opportunity identitication and Selection, and check menu get cancelExplain uncheck menu items when cancelling thePreviousPage, theText, explain theObject get uncheck all the menu items uncheckMenuItemsForUtilities get printExplain print explanation theText,theBackground

TABLE 14 Communication Sections Handlers and Scripts for the Board Sections Background Section and Pages Handler and Script Functionality OABoard background get MatrixToNXP map input variables (theVariable) for theVariable,theValue the Opportunity Identification to Nexpert Object slots PreSelection background get MatrixToNXP map input variables (theVariable) for Board theVariable,theValue the Selection to Nexpert Object slots get prepareTheLists set the lists of groups to display for the theText,nAtoms,theAtoms Part Specifications pages depending on the application domains get MapApplicationToGroup set the position of the different groups thePage on the page thePage get groupHeights theGroup determine the group theGroup heights get theLists theTag, nAtoms, list and sort candidate and rejected theAtoms materials and processes Page get explanationToBoard store expianation for each rejected or PreSelection theTag,nAtoms,theAtoms accepted process and material in Board properties of pages get modifyLists keep track ot the appropriate lists of theText,theLines,theLine, processes and materials for further thePage,theField analyses aner user interaction get map long materials names to short correspondanceMaterialsToObjects names theMaterial get map long processes names to short correspondanceProcessesTo names Objects theProcess DesignBoard background get MatrixToExcel map input variables to Excel theVariable,theValue worksheets cells get MatrixToNXP map variables to Nexpert Object slots theVariable,theValue get listTheGrades list the grades of materials (theAtoms) theText,nAtoms,theAtoms,the in field theField on page thePage Field,thePage page get runModel thePage run the Excel Solver for a particular DesignBoard shape, specific constraints, and a given grade get LengthToDepth set message for length to depth test Shape,thePage get modifyLists keep track of the appropriate grades list theText,theLines,theLine, for further analyses after user thePage,theField interaction

TABLE 15 Table 15 Handlers and Scripts for the Board Sections (Continued) Background Section and Pages Handler and Script Functionality Fundamental background get listMechResults list the results of the mechanical Analyses theText,nAtoms,theAtoms,the anaiyses for all considered grades Board Field,thePage (theAtoms) in field theField on page thePage get listEconResults list the results ot the mechanical theText,nAtoms,theAtoms,the analyses for all considered grades and Field,thePage their associated processes in field theField on page thePage


IV. Expert System Shell

A. Overview

Several criteria were developed to select the expert system shell. The expert system shell must accommodate the integration of various forms of knowledge, the portability to several platforms, and the link to a graphical user interface (GUI) tool.

Any suitable commercial expert system shell may be utilized in the present invention. Examples of suitable commercially available programs include Art*Interprise, ART-IM,, Level5 Object, Nexpert Object of the Smart Elements. Level5 Object 3.0 available from Information Builders, Inc., provides an expert system with rules, forward and backward chaining logic, and very limited object oriented processing, and an integrated graphical tool kit.

As another example, Art*Enterprise available from Inference Corporation, provides an expert system with rules, forward and backward chaining, pattern matching, non monotonic reasoning, full object oriented case-based reasoning, and an object oriented graphical tool kit.

Finally, Nexpert objects of the Smart Elements Suite available from Neuron Data, provides an expert system with rules, mainly backward and forward chaining, and object oriented reasoning, and GUI scripting language.

Although ART-IM 4.0 paradigms for representing knowledge were more sophisticated than Nexpert Object 2.0b, and Level5 Object had a rudimentary integrated graphical tool kit, Nexpert Object 2.0b was selected for implementation of the SYS1 embodiment because it had a better integration to databases. ART*Enterprise was selected for use with SYS2.

In the SYS1 embodiment of the present invention developed by the inventors, the Reasoning/Strategy/Problem Solving module of the expert shell system comprises: (1) a Processes and Materials Selection Module; and (2) an Opportunity Identification Module. SYS2 extends problem solving strategies to include shape selection module. Implementation of these modules in SYS1 and SYS2 is organized according to the View of the World (VOW) concept explained below.

Classes, objects, and methods implement the declarative and procedural knowledge, and rules capture the search strategies. The rules, correspond to "rules of thumb" elicited from experts during the knowledge acquisition process.

B. View of a World (VOW)

Declarative knowledge and search strategies are two corner stones of problem solving. The declarative knowledge and the search strategies which solve a specific problem about a world, represent a particular commitment, perspective, or view of this world. The set of ontological commitments which focus on a particular perspective of a world for solving a specific problem can be called a "View Of a World" (VOW).

The different forms of knowledge in the present invention include symbolic reasoning, numerical computing, and data storage and retrieval. In general, events happen which involve objects of a particular universe. Reasoning strategies and plans determine why and when events (e.g., decision, actions) occur.

In order for a computer system to solve a problem about a particular universe (world), the declarative knowledge as well as the intelligent search strategies need to be represented and implemented. Such a description in terms of objects and events for a particular world also constitutes a VOW.

The understanding and the descriptions of these objects, events, and their relationships are necessary to simulate or emulate, to a given level of complexity and intelligence, these situations or worlds.

In the practice of the present invention, the reasoning strategies are encapsulated in units of knowledge called rules. A network of rules corresponds to intelligent search paths, decision trees, and lines of reasoning (inference chains). This View Of the World concept is further illustrated in the following FIGs.

Referring now to FIGS. 5 and 6 there is shown a representation of part of the SYS1 VOW for the opportunity identification module (e.g., an expert perspective for doing opportunity identification) picturing hierarchies of concepts. The hierarchies, which include semantic and inheritance of characteristics and behaviors, provide the "What" and the "How" (the "Who") for the VOW.

Referring now to FIG. 7 there is shown a representation of part of the VOW for the selection of processes and materials picturing a hierarchy of concepts for both SYS1 and SYS2. This hierarchy provides context and inheritance of characteristics in terms of attributes and behaviors.

Referring now to FIG. 8, there is shown a representation of part of the VOW for the selection of processes and materials. Some of the main concepts (i.e., Mechanical, and Surface characteristics) are expanded to include more concepts (e.g., Stiffness). The leaf nodes of such hierarchies can represent facts, physical objects, and variables (e.g., Ambient Toughness).

Referring now to FIG. 9 there is shown a small decision tree. Each packet of this tree represents a rule (such as the one inside the dotted line rectangle). A rule is a unit of knowledge that captures some of the strategies to minimize search effort and optimize solutions: a rule corresponds to a "whenever some facts are true about the world then take some actions and/or assert other facts".

C. Processes and Materials Selection Module

1. Overview

This module of the SYS1 and SYS2 embodiments contains knowledge that helps in selecting the most appropriate classes of materials and fabrication processes for a particular "durable goods" application. The selection process is based on material functional values and on process characteristics which is sometimes referred to as an application domain.

Materials and fabrication processes can rapidly be selected or rejected for a particular "durable goods" application based on materials functional values and processes characteristics. The application must meet certain criteria and perform definite functions, and, therefore, materials and fabrication processes are selected that meet the criteria and functional limitations of the particular "durable goods" application of interest. Shape complexity, part toughness, and transparency are instances of such criteria. Such criteria and functions are used in the section process.

Examples of the materials and fabrication processes selection process are as follows:

1. An application that requires a high shape complexity (e.g., a housing for a camcorder) cannot be fabricated using, for instance, Filament Winding, Pultrusion, In Line Thermoforming, or Drape Forming.

2. High part toughness is required in applications such as bumper beams.

3. Part toughness depends on both material toughness and part shape.

4. Average toughness materials can be retained when high shape complexity processes are selected and are economically feasible. In this case, the selection depends on materials properties, processes characteristics, part design, and fabrication economics.

The criteria for both SYS1 and SYS2 are grouped in terms of the major elements of the analysis: Environment, Surface, Electrical, Mechanical, Environmental & Legal, Shape, and Production Volume. Tables 16, 17, 18, 19 and 20, presented and described in more detail below, reflect these groups and list all the functional values, including possible values, definitions, and contexts.

Experts' knowledge is used to match application requirements with materials properties and fabrication characteristics. The output is expressed in terms of candidate or rejected processes and materials along with an explanation of how each of the conclusions are reached.

The number of discrete values for the output variables is finite because of the limited number of classes of materials and fabrication processes. For example, Table 21 lists these output variables, including possible values, definitions, and contexts, for SYS1. Similar variables were utilized in SYS2 with some deletions and additions to reflect changes in the program.

    TABLE 21
    Processes and Materials
    Elements of Output
    Analyses    Variables Values
    Candidate   Processes Resin Transfer Molding, Structural Reacticn Injection
     Molding, Reaction
                          Injection Molding, Hand LayUp, SprayUp, Filament
     Winding, Purtrusion,
                          Thermoplastic Injection Molding, In Line
     Thermoforming, Single Station
                          Thermoforming, Vacuum Thermoforming, Drape Forming,
     Vacuum Plug
                          Assisted Thermoforming, Pressure Forming, Pressure
     Vacuum Forming,
                          Matched Mold Forming, Twin Sheet Forming, Extrusion
     Blow Molding,
                          Low Pressure Structural Foam, Gas Counter Pressure
     Structural Foam,
                          High Pressure Structural Foam, Injection Blow
     Molding, Gas Assisted
                          Injection Molding, Rotational Molding, Sheet Molding
     Compound, Bulk
                          Molding Compound, Compression Molding, Die Casting
                Materials ULDPE, LDPE, LLDPE, HDPE, PC, GPPS, HIPS, ISOPLAST
     Opaque,
                          ISCPLAST Clear, ISOPLAST Long Glass Reinforced, SAN,
     Mass ABS,
                          Emulsion ABS, Hybrid ABS, PC ABS, PP CoPolymers, PP
                          HomoPolymers, Epoxy Novolacs, Epoxy Resins,
     Electronic Grade Resins,
                          Advanced Electronic Resins, VinylEster, RIM
     PolyUrethane, PolyUrea,
                          SRIM PolyUrethane, PolyCyanate, PolyEster, PET, PBT,
     PCT, PETG,
                          PolyCaprolactone PolyTetraMethyleneGlycolEther Resin,
     PolyAdipate,
                          Automotive Resin, Health Care Resin, Specialty Resin,
     PC PolyEster,
                          PMP, PVC, Acrylics SMA, ASA, PolyArylate, LCP,
     Nylon6, Nylon66,
                          Amorphous Nylon, PPA, PPS, Acetals CoPolymer, Acetals
     HomoPolymer,
                          PEEK, PSO, PAS, PEI, PAI, PVDF, ABS TPU, mPPO,
     Aluminium, Zinc,
                          Magnesium
    Rejected    Processes Same as above
                Materials


2. Algorithm of Processes and Materials

The reasoning implemented in the PAMS embodiments for the selection of processes and materials can be represented by the following scheme:

1. Choose the application domain which determines the selection criteria and their respective importance.

2. Consider processes or materials classes as long as they meet the application functional requirements and keep track of why they are selected.

3. Reject a material or material class or a process as soon as it does not meet one of the application functional criterion and record the reason why it is eliminated.

4. At any time, check if there are processes left to process each candidate material. If not, then eliminate the material.

5. At any time, check if there are materials left to be processed by each candidate process. If not, then eliminate the process.

Event 1 happens first whereas events 2 and 3 happen sequentially according to the search determined by the application domain. Events 4 and 5 are asynchronous and can occur at regular intervals or at any time during the selection process.

The search sequence for SYS1 for a particular application domain corresponds to a subset of the following sequence of criteria, with criteria for SYS2 being essentially the same with some minor modifications:

chemical types, chemical resistance, hydrolytic stability, heat deflection temperature, cold temperature toughness, radiation sterilizability, weatherability, color, surface finish, texture, transparency, dielectric, ambient toughness, creep resistance, fatigue resistance, wear and abrasion resistance, additions, complexity, constraints, draft, inside tolerances control, shape control accuracy, size, undercuts, production volume, impact resistance, stiffness, ignition resistance, environmental impact, legal, recyclability, emissions.

For each solution meeting the material functional values and on process characteristics of a chosen application domain, the user is provided with an explanation of how the system reaches its conclusions or selected that particular solution to the material functional values and on process characteristics. The explanation is delivered in terms of the major groups of functional values and characteristics including explanations as to individual processes, materials and classes of materials.

Referring now to FIGS. 10, and 12-18, there are shown high level representations of the inference chains and prototypes for the Processes and Materials Selection Module, with the legend for those figures provided in FIG. 11. Specifically, FIG. 10 shows inference chains for the Processes and Materials Selection Module as implemented in SYS1.

In this FIG. 10, three groups of inference chains have been represented with dotted lines suggesting multiple links to other chains: (1) the Application Domains inference chain; (2) the Matcher inference chain; and (3) the Specifier inference chains.

The Specifier has performs the task of focusing attention on features unique to a particular process or given class of materials during selection processing. The function of the Matcher is to compare the application functional requirements with various materials functional values and processes characteristics.

FIGS. 12-18 illustrate prototypes for the Matcher. Specifically, FIG. 12 shows root prototypes for the basic logical functioning of the Matcher; FIG. 13 shows data and cleaning processes and materials prototypes (i.e., reviewing the retrieved data to determine whether process can be eliminated because no materials match the process or whether a material can be eliminated because no process is left to process the material); FIG. 14 shows recyclability, legal considerations, environmental impact, ignition resistance, stiffness and impact resistance prototypes; FIG. 15 shows production volume, undercuts, size, shape control accuracy, inside tolerances control, and draft prototypes; FIG. 16 shows constraints dimensionality, shape complexity, additions, wear/abrasion resistance, fatigue resistance, and creep resistance prototypes; FIG. 17 shows ambient toughness, dielectric, transparency, texture, surface finish and color prototypes; and FIG. 18 shows weatherability, radiation sterilizability, cold temperature toughness, heat deflection temperature, hydrolytic stability, and chemical resistance prototypes.

Both PAMS embodiments developed by the inventors include a dynamic explanation of reasoning for each selection made and for each solution finally suggested. The module explains how it reaches its conclusions and provides information about the inference chains if used to derive the conclusions. The module has the capability to explain why a particular material or process is eliminated or selected for further analyses. Also, it details what happens to materials and processes during inferencing for each group of functional requirements.

The module contains two separate, similar, structures to implement these two modes of explanation. Each of these two structures features: (1) the encapsulation of meaning and context within rules; (2) the use of necessary containers (attributes, objects, and classes); and (3) the tracking of the firing of rules.

The following Table 22A illustrates the control for the Selection Module of the PAMS system of the present invention. The topics of the Matcher and their order depend on the application domain. The Proc I and Mat I of the Specifier, and their order depend on the results of the Matcher and on the inference engine.

    TABLE 22A
    Control Agenda for the Selection Module
    Hypotheses                Control
    1. Customer Application   Suggested by the user from the GUI
    2. Selection
     3. Matcher          Left to Inference Engine
      3.1 Topic I
      3.2 . . .
     4. Specifier
      4.1 Specific Processes
      4.11 Proc I
      4.12 . . .
      4.2 Specific Materials
       4.21 Mat I
       4.21 . . .


3. Input Data for Processes and Materials

Tables 16-20, describe the input data needed for the processes and materials modules. Tables 16 shows the input data relating to the parts specifications environment. For instance, the application might be required to retain most of its properties when exposed to chemicals in a manufacturing environment, to heat in an automotive environment, to water and sunlight in outdoor environment, or to cold as part of a refrigeration system.

Some functional values can take several of the values listed, e.g., the value for "Chemical Types" can be "Alcohols, Gasoline, Brake Fluid". Other values correspond to exclusive choices, e.g., the value for "Ignition Resistance" is "High" or "Low" (exclusive). Other inputs are numeric, e.g., the value for "HDT" is a number between 40 to 500. Input variables include chemical exposure, chemical types, hydrolytic stability, heat deflection temperature (HDT), cold temperature toughness, ignition resistance, radiation sterilizability and weatherability.

    TABLE 16
    Parts Specifications Environment
    Elements of Input Variables
    Analyses    (Functional Values) Values                    Contexts
    Environment Chemical Exposure Continuous Exposure
                                 Required
                                 Intermittent Exposure Required
                                 No Exposure Expected
                Chemical Types   Adds Inorganic Weak       If the exposure mode
     is No Exposure Expected then
                                 Acids Inorganic Strong    NO materials will be
     eliminated even if several
                                 Acids Organic Weak        chemicals are
     selected.
                                 Acids Organic Strong
                                 Alcohols
                                 Amines Aliphatic
                                 Amines Aromatic
                                 Bases Concentrated
                                 Bases Diluted
                                 Brake Fluid
                                 Esters
                                 Fats Oils Waxes
                                 Gasoline
                                 Glycols
                                 Hydrocarbons Aliphatic
                                 Hydrocarbons Aromatic
                                 Hydrocarbons Halogenated
                                 Ketones
                                 Motor Oil
                                 Ozone
                                 Phenols
                                 Salt Solutions
                Hydrolytic Stability Not Important (low)       Hydrolytic
     stability describes the resistance of the
                                 Important (medium)        material to water.
                                 Determining Factor (high) A HIGH hydrotytic
     stability is such that the material
                                                           does NOT loss more
     than 5% of its properties when
                                                           exposed to water for
     28 days at room temperature.
                                                           A MEDIUM hydroiytic
     stability is such that the
                                                           material does NOT
     lose more than 20% of its
                                                           properties when
     exposed to water for 28 days at
                                                           room temperature.
                                                           A LOW hydrolytic
     stability is such that the material
                                                           does lose mare than
     20% of its properties when
                                                           exposed to water for
     28 days at room temperature.
                HDT              40 to 500 F.              The part deflection
     must be less than a given
                                                           (maximum) amount
     when the material is heated at
                                                           the HDT at 264 psi.
     Intuitively: The part must keep
                                                           good mechanical
     performance up to 360 F. (oven), or
                                                           it needs to perform
     well on the dash board of a car in
                                                           full sun (180 F.).
                Cold Temperature Low,                      HIGH: The material
     sustains 200 in-lb of total energy
                Toughness        High                      at -20 C.
     (Instrumented Dart Impact test).
                                                           MEDIUM: The material
     sustains between 50 to 200
                                                           in-lb of total
     energy at -20 C.
                                                           LOW: The material
     sustains less than 50 in-lb of
                                                           total energy at -20
     C.
                Ignition Resistance                           HIGH: material
     inherently meets UL 94 V-O
                                                           flammability rating.
                                                           LOW: material
     inherently meets UL 94 HB
                                                           (horizontal burn
     test) flammability rating.
                                                           Materials with low
     inherent ignition resistance often
                                                           can be modified with
     additives to have a high ignition
                                                           resistance
                Radiation        Not Important             HIGH: The material
     does NOT lose 10% of its
                Sterilizability  Average                   properties (tensile,
     impact) when exposed to a 10
                                 High                      MRad radiation.
                                                           MEDIUM: The matarial
     loses more tham 10% of its
                                                           properties when
     exposed to a 10 MRad radiation and
                                                           less than 10% of its
     properties when exposed to a
                                                           2.5 MRad or less
     radiation.
                                                           LOW: The material
     loses more than 50% of its
                                                           properties when
     exposed to a 2.5 MRad or less
                                                           radiation.
                Weatherability                             HIGH: The material
     does NOT lose more than 10%
                                                           its properties
     (tensile, impact) under a xenon arc
                                                           (65 C. black panel
     temperature) fo