ANALOGY MATCHING WITH FUNCTION, FLOW AND PERFORMANCE by Peter R Morgenthaler A thesis submitted to the Faculty and the Board of Trustees of the Colorado School of Mines in partial fulfillment of the requirements for the degree of Master of Science (Mechanical Engineering). Golden, Colorado Date Signed: Peter R. Morgenthaler Signed: Dr. Cameron J. Turner Thesis Advisor Golden, Colorado Date Signed: Dr. Gregory Jackson Professor and Department Head Department of Mechanical Engineering ii ABSTRACT Multiple methods exist to achieve design innovations. Analogical reasoning is one such method that has been shown be effective. The Design Analogy Performance Parameter System (DAPPS) project presented here is developing a method to aid in analogy generation by specifying a set of critical functions and desired design performance improvements. DAPPS uses performance parameter metrics to compare user inputs to potential analogical sources, thus stimulating analogical reasoning and innovative designs. We showcase the validation aspect of the DAPPS project. Proof-of-concept has previously been performed and implemented via the Design Repository & Analogy Computation via Unit-Language Analysis (DRACULA) framework. The steps for validation of DRACULA have been divided into two parts: 1) generation of numerical metrics with which multiple analogical generation methods may be compared and 2) case study assessments which will compare between various these methods. Previous works have shown that within a design problem there are functions that are the most important to meet the product requirements or customer needs. These functions have been defined as critical functions. In many products, there are multiple critical functions that create a critical chain. These critical chains are the primary focus of the comparison of the various analogical generation methods. Critical chains have both functional groupings and architecture. The functional groupings of the chains are the functions contained within the chain while the architecture is the order of the components. Within the architecture, five different ways to relate two architectures have been identified, including: identical, mirrored, disordered, mirror disordered, and unique. By comparing the function chains of analogical sources to design problems in both the functional groupings and the five architectural relations, we show a correlation in design characteristics such as innovativeness, ability to be implemented, similarity, 3 and applicability of analogical sources. The correlation of design characteristics is the primary focus of research. If this new method of measuring the relationships between function chains proves effective, then it can be applied to DRACULA and DAPPS to validate the method as well as guide research towards the improvement of the DRACULA analogy matching algorithms. 4 TABLE OF CONTENTS ABSTRACT ....................................................................................................................... iii LIST OF FIGURES............................................................................................................ ix LIST OF TABLES ............................................................................................................. xi LIST OF EQUATIONS .................................................................................................... xii KEY TERMS ................................................................................................................... xiii ACKNOWLEDGMENTS ............................................................................................... xiv CHAPTER 1 INTRODUCTION...................................................................................... 1 1.1 Design by Analogy Tools ...................................................................................... 2 1.2 Research Objectives and Problem Statement ........................................................ 4 1.3 Contributions ......................................................................................................... 5 CHAPTER 2 LITERATURE REVIEW........................................................................... 7 2.1 Design-by Analogy................................................................................................ 7 2.1.1 Implementation ................................................................................................ 8 2.2 Functional Basis .................................................................................................. 10 2.3 Linguistic Pattern Matching ................................................................................ 12 2.3.1 WordTree Method ......................................................................................... 12 2.3.2 AskNature.org ............................................................................................... 14 2.4 Performance Parameter Matching ....................................................................... 19 2.4.1 Vector Space Similarity Measures ............................................................... 20 2.4.2 Dimensional Analysis Theory Matching ....................................................... 22 2.4.2.1 Critical Functionality.............................................................................. 23 5 2.4.2.2 Critical Flows ......................................................................................... 25 2.4.2.3 Critical Pairs ........................................................................................... 27 2.4.2.4 Performance Metrics............................................................................... 27 2.4.2.5 Dimensional Analysis Theorem ............................................................. 29 2.4.2.6 Bond Graphs ........................................................................................... 30 2.4.3 Design Repository &Analogy Computation via Unit-Language Analysis ... 32 2.5 Conclusion........................................................................................................... 36 CHAPTER 3 THEORY AND METHODS .................................................................... 37 3.1 Existing Design Tools ......................................................................................... 37 3.2 DRACULA.......................................................................................................... 39 3.2.1 Functional Model Pattern Types .................................................................... 41 3.3 Conclusion........................................................................................................... 47 CHAPTER 4 EXPERIEMENTS .................................................................................... 48 4.1 DAPPS Case Studies ........................................................................................... 48 4.2 Metrics ................................................................................................................. 48 4.3 Sisyphus............................................................................................................... 53 4.4 Experiment Development .................................................................................... 54 4.4.1 Experiment Implementation and Termination ............................................... 56 4.5 Van Helsing ......................................................................................................... 60 4.6 Conclusion........................................................................................................... 62 CHAPTER 5 RESULTS & DISCUSSION .................................................................... 64 6 5.1 Results ................................................................................................................. 64 5.2 Results Conclusion .............................................................................................. 72 5.3 Van Helsing ......................................................................................................... 72 5.3.1 Mirror Analogy Metric .................................................................................. 73 5.3.2 Disordered and Mirror Disordered Analogy Metrics ..................................... 74 5.3.3 Identical Analogy Metrics ............................................................................. 75 5.3.4 Component Analogy Metric .......................................................................... 75 5.4 DAPPS ................................................................................................................ 76 5.5 Conclusion........................................................................................................... 77 CHAPTER 6 CONCLUSION ........................................................................................ 78 6.1 Design-by Analogy Tools.................................................................................... 78 6.2 DRACULA.......................................................................................................... 79 6.3 Metrics ................................................................................................................. 79 6.4 Experiment Van Helsing ..................................................................................... 80 6.5 Future Work ........................................................................................................ 80 6.5.1 The Future of Sisyphus .................................................................................. 80 6.5.1.1 Algorithm Improvement ......................................................................... 81 6.5.1.2 Previous Experiments ............................................................................. 83 6.5.1.3 Multi-Objective Optimization ................................................................ 84 6.5.2 Future Work Conclusion ............................................................................... 86 6.6 Broader Context .................................................................................................. 86 6.7 The DAPPS Design Statement ............................................................................ 87 vii 6.8 Conclusion........................................................................................................... 87 REFERENCES CITED ..................................................................................................... 88 APPENDIX A DRACULA PSEUDO CODE ............................................................... 93 APPENDIX B SISYPHUS PSEUDO CODE ............................................................... 95 APPENDIX C SUPPLEMENTAL ELECTRONIC FILES ........................................ 101 8 LIST OF FIGURES Figure 1.1 Visual Design Problem Representation ......................................................... 2 Figure 1.2 Perceived Analogy Ranking Order ................................................................ 4 Figure 2.1 Engineering Design Process Adapted Form .................................................. 8 Figure 2.2 Concept Design Phase Adapted Form ........................................................... 9 Figure 2.3 Functional Modeling Example ..................................................................... 11 Figure 2.4 WordNet Example [15] ................................................................................ 13 Figure 2.5 Completed WordTree Example ................................................................... 14 Figure 2.6 Biomimicry Taxonomy as Developed by AskNature.org [30] .................... 15 Figure 2.7 Biomimicry Taxonomy Example................................................................. 17 Figure 2.8 AskNature.org and Functional Basis Function and Flow Translations [7].. 18 Figure 2.9 Segment of the OSU Design Engineering Lab Morph Search Web Page ... 22 Figure 2.10 Function Structure of a Wind Turbine [7].................................................. 25 Figure 3.1 Design Problem Functional Model Representation ..................................... 42 Figure 3.2 Functional Model Component Comparison ................................................. 42 Figure 3.3 Functional Model Architecture Comparison ................................................ 43 Figure 3.4 Architectural Aspect Breakdown ................................................................. 44 Figure 3.5 Architectural Comparison Types ................................................................. 45 Figure 4.1 Function Chain Snipping Example .............................................................. 50 Figure 4.2 Disordered Example Comparison ................................................................ 52 Figure 4.3 Potential Analogy Cut-Away Example [48] ................................................ 55 Figure 5.1 Entire Pairwise Dataset Statistical Boxplot ................................................. 71 Figure 5.2 Predetermined Analogies Boxplot ............................................................... 71 9 Figure 6.1 Modified Metric Example ............................................................................ 82 Figure 6.2 f(x,y) = x^2 + y^2 ............................................................................................ 85 Figure 6.3 Two Objective Space Pareto Front [51] ....................................................... 85 1 LIST OF TABLES Table 2.1 Dimensional Analysis Theorem (DAT) Variables ........................................ 23 Table 2.2 Flows of the Functional Basis ....................................................................... 26 Table 2.3 Dimensional Analysis Theorem Variables .................................................... 30 Table 2.4 Bond Graph Components Definitions, Functionality and Relationships [7] 31 Table 2.5 Bond Graph Component Definition, Functionality and Relationship [7] ...... 32 Table 3.1 Design-by-Analogy Tools Comparison ......................................................... 38 Table 3.2 Formatted DRACULA Output ...................................................................... 40 Table 3.3 Architectural Type Metric Scores.................................................................. 46 Table 4.1 Preliminary Study Results Perspective Example .......................................... 57 Table 4.2 Preliminary Study Results Consistency Example ......................................... 58 Table 4.3 Van Helsing Initial Test Data ........................................................................ 60 Table 4.4 Comparative Analogies ................................................................................. 61 Table 5.1 Dataset Average Metric Values ..................................................................... 64 Table 5.2 Predetermined Matches Metric Value Statistics............................................ 65 Table 5.3 Preselected Comparison Metric Values ......................................................... 66 Table 5.4 Best and Worst of the Top 10% .................................................................... 68 1 LIST OF EQUATIONS Equation 2.1 DRACULA Function Chain Scoring Algorithm ...................................... 33 Equation 4.1 Metric Component Calculation ................................................................ 49 Equation 4.2 Identical Metric Value.............................................................................. 50 Equation 4.3 Mirrored Metric Value ............................................................................. 51 Equation 4.4 Disordered Metric Value .......................................................................... 51 Equation 4.5 Mirror Disordered Metric Value .............................................................. 51 Equation 4.6 Unique Metric Value ................................................................................ 52 xii KEY TERMS Architecture AskNature.org Bond Graph Component Critical Flow Critical Function Critical Pair DAPPS - Design Analogy Performance Parameter System DAT - Dimensional Analysis Theorem DbA - Design by Analogy Disordered DRACULA - Design Repository and Analogy Computation via Unit-Language Analysis Functional Basis Functional Model Graph Theory Identical Linguistic Pattern Matching Memic Mirror Disordered Mirrored MOPSO - Multi-Objective Particle Swarm Optimization Performance Metrics Performance Parameter Matching Sisyphus Unique WordNet 13 ACKNOWLEDGMENTS I would like to thank my advisor, Dr. Cameron J. Turner for his unrelenting support and encouragement throughout this research. I would also like to thank Dr. Julie Linsey of Georgia Tech for her provided guidance. To my committee, thank you for your help, mentoring and friendship. To Megan Tomko and Ethan Hilton of Georgia Tech and Connor Taylor and Trevor Worth of Colorado School of Mines, thank you for your assistance when I needed it the most. Lastly, to my family, I cannot thank you enough for your continued love, patience, and support. My dream could not have become reality without you. 14 CHAPTER 1 INTRODUCTION Enhancing the Design Analogy Performance Parameter System (DAPPS) is about enhancing the design process efficiency by increasing the experience level of novice engineers. By creating a tool which can link analogies based on function structures, efficiency can be gained in design fields by bridging the experience gap between novices and experts. This gap is important as design engineers typically relate to previous experiences [1, 2, 3, 4]. Analogies are commonly used by the design engineers during development of a design [5]. Expert engineers tend to use more analogies than a novice engineer [6]. Currently, there are approaches, such as AskNature.org, which will generate analogies based on search parameters, but these systems do so based on keywords. This project has led to the Design Repository & Analogy Computation via Unit-Language Analysis (DRACULA) program which has the potential to be a valuable design tool for novice engineers. DRACULA, uses a common engineering language. Engineers, as a generality, have a specific vocabulary which is unique from the rest of the world. This difference in vocabulary can make communication difficult between engineering fields. Even within the engineering community, different sub-communities may use different words to describe the similar forms. Engineers with more experience tend to have an easier time bridging analogy gaps even with the differences in vocabulary. By using DRACULA, the vocabulary is limited to the revised functional basis vocabulary, which transcends communities and is nearly universal [7]. DRACULA uses this vocabulary to match the function-flows of the designer with function-flows of the analogies. In turn, it supplements the experience of a novice engineer. As a result, engineers can become more efficient. The idea behind DRACULA is drastically 1 different than existing approaches but has the potential to be exceptionally valuable. However, DRACULA must be baselined, compared, evaluated and improved. Furthermore, the DRACULA database used to identify and score analogies must increase in quantity of entries. There are two foreseen issues to overcome in the immediate future. The first is the evaluation of the analogy generations. The second is procedure for population of the database. This paper discusses the former. Functional models are used extensively for this project. For simplification purposes, a functional model can be represented synonymously as shapes with colors and arrows connecting the shapes. Figure 1.1 shows a pictorial representation of a simplified functional model similar to what is used throughout this paper. Figure 1.1 1.1 Visual Design Problem Representation Design by Analogy Tools Design analogy generators currently exist for use by the public. One such system is the AskNature.org website. AskNature.org, as well as other currently available analogy generators, are linguistically driven, like an internet search engine. Search keywords are identified, and relates those keywords link to articles in a database. The problem with this method is that 2 providing appropriate, specific keywords are necessary, and there is the potential for the results to revolve around unrelated and accommodating results. In other words, the quality of the keywords affects the quality of the search results. This is where DRACULA can be beneficial. DRACULA uses precise verbiage with which most engineers will be familiar. This precise verbiage will help eliminate those unrelated entries from appearing in the results from a search. In general, this approach should improve performance. One of the goals of DRACULA is to value the analogies sufficiently such that the best options are displayed first, thus limiting the number of analogies to be listed. This raises the second concern. The quantity of analogies given to the engineer has the potential to be burdensome. Again, as a generality, engineers tend to not perform as well when too many options are available [7]. Therefore, limiting the options immediately seen but allowing more to be available is a desirable user design aid. Second, as DRACULA uses graph theory to find matches and establish scores for each of the analogies, this aspect could cause a problem. By freely displaying the score associated with the various analogies, it is possible to bias the designer towards analogies with a greater score. It is reasonable to think that not only could the top ranked analogy not be the best, it could actually provide nothing of value whereas a lower scored analogy could in fact be a logically better analogy. This same concept is seen with Google searches. Google’s goal, as a search engine, is not simply to make the top search result the best, but rather to ensure that the best result is on the first page. Applying this idea into DRACULA, one of the goals is to value the analogies sufficiently such that the best options are displayed, in a limited listing. This will help ensure that the tool will be useful and not burdensome. One potential method of limiting the results would be to provide results purely based on exact similarity. Another method of limiting results would be provide a select, small 3 range of comparisons. If one were to compare the pictorial functional model of Figure 1.1, and compare it to each of the perceived analogical matches of Figure 1.2, the differences between the two pictorial representations become apparent. Figure 1.2 1.2 Perceived Analogy Ranking Order Research Objectives and Problem Statement It is proposed that by addressing how well defined metrics could lead to better analogies for design engineers, thus leading to more novel designs. Analogy matching based on function, flow, and performance leads to better analogy generation. DRACULA will be for the testing of this hypothesis. The current implementation of DRACULA is online and the database has over 60 entries and continues to grow. DRACULA 4 must be tested in its current state in order to determine the utility of the program, which has been shown by Lucero et al. [7], but that the program has the potential to provide added benefit in Design-by-Analogy. Steps for testing DRACULA will include: - Developing test cases - Developing metrics for analysis of analogy matching This research will contribute to existing literature in several ways. First, it assesses performance based metric analogy generation against current methods. Second, it compares different performance based metric analogy generation methods with each other. 1.3 Contributions The work completed in this thesis can be summarized to several contributions. The original implementation of DRACULA was not conducive to adequate testing. As such, DRACULA was transitioned from its original platform into a program which could be used through the internet began. While the work performed was done during the timeframe of this thesis but was performed by two student employees. These students were supervised by myself. The identification and definition of function structure component comparisons as well as architectural comparison were done by myself and Dr. Cameron Turner. From these identifications, the development of mathematical equations for the metrics with which the function structure comparisons are performed were developed by me. The program, Sisyphus, which implements the comparisons, as well as other aspects, was created by myself. The two experiments performed for this thesis were primarily developed by myself under the guide of both Dr. Cameron Turner and Dr. Julie Linsey. These experiments were developed for proof-ofconcept of the function structure comparison metrics. These efforts have moved the DAPPS team closer to the goal of providing a Design-by-Analogy tool based on performance parameters. 5 The rest of the paper is organized as follows: Chapter 2 provides the reader with a stateof-the-art review in Design by Analogy tools, Chapter 3 details the theory and methodology behind the DRACULA tool, Chapter 4 contains the plan to test the theory behind DRACULA, Chapter 5 reviews the results of the experiments performed in this thesis and discusses the results, Chapter 6 discusses future work as well as the overall conclusion of this thesis. 6 CHAPTER 2 LITERATURE REVIEW A literature review has been performed so that the reader has a necessary understanding of the application of the work at hand and its relationship to the state-of-the-art design. The essential topics covered include Design-by-Analogy (DbA), functional basis, linguistic matching, and performance parameter matching. 2.1 Design-by Analogy Design-by-Analogy (DbA) is a methodology for contributing innovations to design problems through the discovery of additional sources of information [2, 8, 9]. DbA is specifically useful in that it relates varying domains. Research shows that visual analogies are useful for both novice and experienced design engineers [10]. When the process is done effectively, a designer relates the design problem with potential solutions through a similar metric. This metric is typically expressed as a linguistic similarity, functional similarity or domain similarity. These similarities are based on the different language used, function form, or engineering domain, respectively. As a result, this design mechanism requires an extensive amount of experience and knowledge, even for the most senior engineers. Currently there are tools to aid in DbA, such as a WordTree and AskNature.org, both of which have established repositories [11, 12, 13, 14, 15]. However, the process can be difficult for expert design engineers with necessary knowledge. This difficulty increases greatly for a novice engineer as they typically have not had the quantity of experiences as compared to a senior engineer. 7 2.1.1 Implementation The engineering design process has several phases [16]. Figure 2.1 shows the multi- phase process. These phases include Problem Identification, Project Planning, Problem Definition, Conceptual Design, Product Development, and Product Support. The Design by Analogy methodology is typically implemented during the Conceptual Design phase of the Engineering Design Process. Figure 2.1 Engineering Design Process Adapted Form 8 Within most of the phases of the Engineering Design Process, there are several steps. The Conceptual Design phase is no different. The Conceptual Design, Figure 2.2, phase is an iterative process which consists of six steps: Generate Concepts, Evaluate Concepts, Make Concept Decisions, Document and Communicate, Refine Concept, and Approve Concept. The DbA methodology, as well as the tools which are based on or use DbA typically will be used in the Generate Concept step of the Conceptual Design phase. All of the DbA tools which are discussed in further detail in this thesis are thought to be used in the Generate Concept step. Figure 2.2 Concept Design Phase Adapted Form 9 2.2 Functional Basis The use of design requirements in product development creates a systems-level view of the hierarchical structure which can be broken down into sub-level functions. The functionality of a system as a whole and the various components can be further abstracted into individual functions which satisfy design requirements [17, 3, 18]. Functional basis is an empirically demonstrated approach to functional description [7, 19]. A functional basis model is a flow chart containing material, energy and signal flows which move through functions consisting of verbobject pairs. The flows are those which are necessary for the design as a whole, but also for the operation of each individual function the flow interfaces with. The material flow will follow the law of Conservation of Mass. The energy flow will follow the first law of thermodynamics, conserving energy [20]. The signal flow does not specifically follow a law of conservation, however, there can be no signals without the transference of some energy [3]. The verb-object pair of the function is what correlates the inputs and outputs of the function. The use of this format, the function structure can be used as a functional representation of a product via a system concept as individual boxes and flows. These function structures permit abstraction to be incorporated into the system via pictorial representation of the function and flow combinations. Studies by McAdams et al. have studied the causalities and positive effects of DbA [21]. Using this method creates a representation which allows for form-independent solutions. These solutions can therefore satisfy the design requirements from which the functions were extracted. This form ultimately is more dependent on function as the design progresses, aiding in the establishment of the exact details of design [3]. 10 Figure 2.3 Functional Modeling Example Julie Hirtz et al. proposed a defined design vocabulary which transcends across different engineering disciplines and applications [8]. The development was an attempted aid in functional modeling methods by utilizing a generic level of specificity and synonyms. This defined vocabulary can be used in conjunction with function structures as a standard. As previously mentioned, functions are comprised of a verb-object pair. The verb of the function is typically one which is required for an action at that point in the sequence. The object of the function is what coincides with the flow. Effectively, the functions modify the flows of the system. These functions and flows will follow many of the laws of nature such as conservation of mass and energy. In addition to the laws of conservation, the inclusion of a system boundary in the representation is used to help establish the scope of the design problem. A uniform vocabulary has been defined by Otto and Wood that can be used in multiple engineering disciplines for functional basis [17, 3, 8]. The intent of the uniform vocabulary is to make the vocabulary finite while allowing for abstraction in functionality and form across the different engineering disciplines. 11 2.3 Linguistic Pattern Matching Linguistic pattern matching is the method of pairing sources to a set of keywords. Linguistic resources, such as search engines and databases, can be explained in terms of patterns and contextual exploration based on syntactic and semantic constraints [22]. Past research has been pointed towards the development of tools as analogy databases for matching based on linguistic similarity [23, 24, 25, 26]. The constraints of linguistic pattern matching systems can incorporate concepts of adjacency, concatenation, containment, ordering and position of the textual units. This methodology has been adapted for DbA database search methods. Two tools which use linguistic pattern matching are the WordTree Method and AskNature.org. 2.3.1 WordTree Method The WordTree Method begins with the identification of the key function or functions within the design problem. Once the functions have been identified the user would systematically represent the functions in a tree form paired with the verbs associated with each individual function. The individual verbs are identified by specifying a broad-spectrum of verbs which are similar or analogous in meaning. These verbs can be identified from either the designer’s knowledge or through a linguistic repository, such as WordNet [27]. WordNet is large lexical database developed by Princeton University containing English nouns, verbs, adjectives, and adverbs which have been grouped as a sets of cognitive synonyms [15]. As an example seen in Figure 2.4, scissors contain the key function identified as cut. Using the designer’s knowledge or WordNet, the more general function of cut can be identified as separate or remove. At the same time, two more domain-specific function definitions are changed or dissect. Repeating this process, more analogous verbs can be identified and represented in the form of a tree. 12 Figure 2.4 WordNet Example [15] Therefore, the WordTree Method is a tool which aids in the identification of additional analogies for alternative innovative solutions to a design problem and does so across analogous domains. These various domains allow for a connection to be made between the problem and externalities of the existing design domain. The WordTree database provides analogies which are maintained and continually grows past design solutions where novice engineers can be aided in their goal towards developing a unique solution to a design problem. An example of the WordTree Method taken to completion can be seen in Figure 2.5. 13 Figure 2.5 Completed WordTree Example The strength of this method is the ability of the database to store the analogy entries for both domain specific and domain independent form [28]. This allows for potential analogous solutions to be returned for the original design problem. This can ultimately lead to designers being able to develop innovative solutions. 2.3.2 AskNature.org AskNature.org is an online biomimicry community-generated database which allows for access to natural analogous entries [11]. AskNature.org is a product of the Biomimicry Institute 3.1 [29]. The Biomimicry Institute is a non-profit organization dedicated to the academic and public education of biomimicry and nature. The AskNature.org database is an open-source library of biological functions. It is maintained for and by the community with the intention of using it to recall natures design solutions. 14 Figure 2.6 Biomimicry Taxonomy as Developed by AskNature.org [30] 15 The database at AskNature.org is a functional organization which lists the challenges that natural organisms face every day. The challenges which the organisms overcome are observed and from this designers and engineers can mimic nature’s solutions. Both biologists and engineers work together to create questions around the concept of how nature solves various problems. For this biomimicry taxonomy to work, the Biomimicry institute breaks the analogy finding process down into the following 4 steps (Figure 2.6). □ Identify the function of the design problem. □ Find the verb in the green semi-circle that describes what the design should do in nature. □ Attempt to approach the design from a different angle in the second semi-circle. □ Determine how nature implements the alternative approach. An example of this process would be to take the move or stay put group. This can be further broken down into an attach subgroup and a permanently attach function (Figure 2.7). The resulting analogy is the blue mussel. In this analogy, the blue mussel attach to wet and solid surfaces using catechols or an adhesive proteins which overcome the surface’s affinity for water [31]. This analogy has its benefits in that the adhesive effect does not contain carcinogens, cures underwater and is comparable to human-made glues. AskNature.org’s biomimicry taxonomy library contains 8 groups, 30 sub-groups and 162 functions which are separated into the top level groups. These groups are further broken down into the subgroups, utilizing the verbs as the classification. The last step finds the potential analogy from the functions group. Functional basis is similar to this taxonomy in that there are 3 function levels within the system. 16 Figure 2.7 Biomimicry Taxonomy Example In an effort to include the vocabulary used by design engineers, a translation of the taxonomy library groups and subgroups to the functional basis was performed by Lucero et al. [7] (Figure 2.8). The translation was performed on the basis of the functionality of the taxonomy within the similarities of the linguistics as a secondary alternative. Both the primary and secondary levels were retained with both taxonomies as the levels with the most specificity [7]. During the translation process, the flows which were associated with the database also were included for functional basis. The nouns associated with the AskNature.org taxonomy were used to derive the flows. The flows which coincide with the functions of the functional basis in either the energy or material flows. Biological signals is exceptionally difficult to translate accurately and as a result these flows were included in the energy flows. 17 Figure 2.8 AskNature.org and Functional Basis Function and Flow Translations [7] 18 The provided example of this translation is to take AskNature.org’s primary class, modify, and equate it to the functional basis flows of control magnitude and convert as the functionalities of the two taxonomies are comparable. Thus, the matching on the alteration of the flow was sufficient to consider them equivalent translations. This continues to stand as both material and energy are capable of modification. Biomimicry Institute’s AskNature.org database system is a unique tool which has been expanding its uses and applications of the library entries within the biomimicry field since its indoctrination. The database has continued to grow with sufficient opportunity and funding. When properly used, the AskNature.org database has the potential to yield a greater amount of novelty in DbA, not just for novice engineers, but also for experts. The WordNet and AskNature.org repositories are the primary focuses of the linguistic pattern matching aspect of DbA for this research. 2.4 Performance Parameter Matching Performance parameter matching is a concept similar to linguistic pattern matching in Design by Analogy. Both methods utilize a specific taxonomy in order to generate analogies. A performance parameter matching system takes the repository requirement further by utilizing the definition of each of the functions to compare how the functions operate as a set. The idea of finding functions similar to one specific function within a design problem is in and of itself helpful, but minimally so. Methods which do so, such as AskNature.org have two main limitations. The first is that there are inherently different linguistics in different engineering domains. As a result, the way in which each engineer looks at the definition of functions and flows can be dissimilar. For example, regulate energy could be interpreted as the necessity to 19 maintain a specific temperature on a surface or to inhibit the rotation of an object. While both interpretations are technically correct, they have drastically different meanings. The second limitation of linguistic systems is that there is no way to compare adjacent functions within a system. As previously mentioned, objects can be broken down into multiple functions and flows. Performance parameter matching takes this into account. With a linguistic pattern matching system, such as AskNature.org, a design engineer would need to input both functions separately and compare the results. Performance parameter matching accounts for how the functions interact with each other within an analogy. 2.4.1 Vector Space Similarity Measures Kerry R. Poppa of Oregon State University has researched the application of vector space similarity measures in computer assisted conceptual design [32]. With the primary focus of similarity measures work on information retrieval, the scope of the project was over Design by Analogy. The two primary reasons DbA was chosen for the research is that, at the time, the literature suggested DbA was of specific interest to the research community as well as there are quantitative similarity measures for the process which could serve the comparison for the work. The work performed utilizes a design repository of the Design Engineering Lab at Oregon State University. The repository is the result of MIST (previously UMR), The University of Texas at Austin, and NIST collaborating with Oregon State University and contains information on products primarily from consumer goods but also from sub-systems of NASA spacecraft and biological systems. The repository has transformed a wide variety of heterogeneous product design knowledge into a single knowledge base [33]. Poppa describes the database as an, “artificial centric relational database populated with the information from the 20 disassembly and reverse engineering of existing products.” Similar to AskNature.org, Poppa utilized the verb-object taxonomy of the database, specifically functional basis. One tool created utilizing the Design Engineering Lab database is the MEMIC concept generator. The program aids in the generation of ideas from the repository as well as internally evaluating them using comparison algorithms. The tool does this by determining the distance between concepts’ functional basis models via vector space arithmetic. As previously mentioned, the functional basis models include both functions and flows, such as store and electrical energy. With the functional model created, an adjacency matrix is developed and from the matrix an 18,496 element vector is created. Each element represents a possible connection between component types. The columns of the vector represents a concept while the rows represent a possible component interaction. A zero represents no interaction while a one would indicate that there is one instance of that particular interaction. Within a product, if a particular interaction does not appear across an entire row, they are omitted from the vector for the sake of efficiency. If particular components do not exist, there is no need to include them as there is no value in retaining that variable. This tool is unique in that it provides specific concepts. In one of the studies by Poppa et al. analyzed concept generation for a peanut sheller. The concept generator provided a list of physical items which would meet the design requirements of the product. One of the concepts contained blade, shaft, bearing, cam, knob and reservoir. With this concept, it would then be up to the engineer to discern how these objects would fit together in order to accomplish the task. The current tool available for public use from Oregon State University is the Morphological Chart Search [34]. There are also three available versions of the MEMIC concept generator which are available for download. The online Morph Search tool, as see in Figure 2.9, 21 has the appearance of working in the same manner to which the MEMIC tool operates. These tools all utilize a morphological matrix concept. Figure 2.9 2.4.2 Segment of the OSU Design Engineering Lab Morph Search Web Page Dimensional Analysis Theory Matching Dimensional Analysis is a novel concept to be incorporated into analogy generation. This idea is driven by Dimensional Analysis Theorem (DAT) [7]. Dimensional Analysis is a process which simplifies a physical problem through reducing the number of relevant variables with dimensional homogeneity [35]. DAT is used by DRACULA, the Design Repository & Analogy Computation via Unit-Language Analysis, which is currently in development by three universities (Colorado School of Mines [CSM], Clemson University [CU] and Georgia Institute of Technology [GT]). DAT is an appropriate method for DRACULA as a correlation has been established with design metrics and dimensionless variables [36]. DAT breaks down performance parameters, such as velocity or energy into base variables. 22 Table 2.1 Dimensional Analysis Theorem (DAT) Variables Unit Mass Length Time Electric Charge Absolute Temperature Amount of Substance Luminous Intensity Cost Degree (rotation) Symbol M L T Q Θ N J $ ° By utilizing the DAT variables, Performance Parameter variables, can be broken down into base units and compared at a consistent level. The concept of Critical Functionality, Critical Flows, and Critical Pairs also are utilized in DRACULA. 2.4.2.1 Critical Functionality Critical Functionality is a concept developed by Lucero et al. [7]. Within functional modeling there are a few functions which are applicable across product domains. The work postulated that all functions do not hold the same weight in the function structure hierarchy. The frequency of appearance in the functional model is not the determining factor. The primary function of the product is the determining factor. The primary function of the product can be broken down into several more specific sub-functions which are not equal to one another in significance to the operation of the product. Using a can opener as an example, which has the primary function of separation of the can in a manner which allows access to the contents inside, and comparing it to a vehicle jack, which has the primary function of stabilizing the vehicle, the critical functions of the two products will not be equivalent. The critical function of the can opener is the separation function. The critical function of the vehicle jack is the stabilization function. Both of these products have additional functions within their function structures, however, they do not have the same importance as the previously mentioned functions. [7] 23 One case study performed by Lucero et al. [37] supported the argument that all functions do not share the same significance, within the function structure, or within the system-level product. There are some functions which carry more weight in the determination of which functions or flows are more significant at a systematic step in the operation of the product. These functions and flows have been determined to be critical. Lucero et al. [37], Caldwell et al. [38], and Bohm et al. [39] have a mutual consensus that the most common reoccurring functions in any design domain are transfer, convert, store, actuate, separate and guide. These generalize secondary functions are common across multiple domains and also can be quantified through the use of performance metrics. The difference between the two studies is how they differentiate between reoccurring functions. The study performed by Caldwell et al. [38] identified the critical functions of the design problem through quantity. Therefore, the most prevalent functions and those which were most pertinent were not necessarily the same within the function structure. The examples of the vehicle jack and the can opener both contain a single critical function. However, it is possible for there to be multiple critical functions. In a wind turbine (Figure 2.10) it can be determined that both convert wind energy to rotational energy and convert rotational energy to electrical energy are critical functions. In this example, these vital functions are necessary to the key performance parameters (KPPs) of the system of converting wind energy to electrical energy. For the research performed by Lucero et al. [37] as well as the research to be performed, functions such as this are classified as being necessary to the operation of the system and will be used to further quantify the system performance. This concept will is applied in this research. 24 Figure 2.10 Function Structure of a Wind Turbine [7] 2.4.2.2 Critical Flows As previously mentioned, the flows within functional basis have been broken down into three categories: energy, material and signal. Table 2.2 shows that these primary flows have been broken down into secondary and tertiary flows with some examples of possible components which would make up the categories. Similar to how specific functions are more important in product designs, specific flows also can be deemed critical. Critical flows are domain dependent but may cross the domain boundaries at the interfaces. Critical flows are similar to critical functions in that there are specific flows within a functional model which holds more importance in the determination of the systematic operation of a product. Just as the critical functions are domain dependent, the critical flows are domain dependent. This is due to the fact they describe the flow of energy, material or signal through the system. The action of the function which is being applied to the specified flows is what determines the domain dependence. 25 Table 2.2 Flows of the Functional Basis Returning to a wind turbine as an example, the critical flows which traverse through the system are wind energy, rotational energy and electrical energy. These three secondary flows are the most important within the functional model of the system. These three flows are imperative to the KPPs of the wind turbine system of converting wind energy to rotational 26 energy and converting rotational energy to electrical energy. In this system, two flows are required in order to meet the requirements of the system for electricity generation. For the research performed by Lucero et al. [7] as well as the research to be performed, functions and flows whose embodiment are significant to the systems performance are classified as critical pairs and are further used to quantify the system. 2.4.2.3 Critical Pairs Critical pairs are the combination of the critical function and critical flows within a function structure [7]. This verb-object pair is a necessary aspect in order to satisfy the system requirements. Through the use of performance metrics, these pairs can be used in order to produce analogies beyond looking at the functionality or domain. Therefore, these pairs can be considered significant in the generation of analogies based on performance. Mapping functions can derive functions which can be used to mimic the same function as desired [7]. The flows allow for a connection between the domains as well as can used to check the feasibility on a rational level. An example of this is that both air and water are considered fluids within fluid dynamics. Both substances can behave in similar manners and as such, functions working on similar flows could be identified. By considering both the functions and flows in how they operate together, performance metrics of a specific design problem can be defined and quantified. 2.4.2.4 Performance Metrics A study performed by Lucero et al. [7] searched the design repositories from three universities (Colorado School of Mines [CSM], Texas A&M University [TAMU] and University of Texas at Austin) for function structures and found 114 consumer products which had been broken down into functional models with functions and flows using functional basis as the 27 methodology. Within this set of function structures, 795 functions and flows were found to be non-redundant. Once collected these functions and flows were compared utilizing a reconciled vocabulary. For this work, the functions and flows were in the individual boxes of the function structure. All of the products received from the design repositories were simple and mechanical consumer products such as can openers and nut crackers. Most of these function structures were developed from mechanical engineering senior undergraduate design projects with most of the data coming from the mechanical domain. Some of the data did originate from the electromechanical, electrical and thermal domains. The functional basis model is assumed to be complete and adequate for the biological, electrical, mechanical and thermal domains. Bearing this assumption in mind, the study was performed measuring the frequency to which various flows were associated with functions within the function structures of the products from the design repositories. It was determined that the flows are capable of deciphering which performance metrics could be targeted for analogical mapping. The input flows were further analyzed into the various performance metrics which were capable of being quantified as functional basis flows. This was done to establish a set of criteria to gauge the engineering capabilities. The performance metrics used were collected from various engineering domains and should not be considered a complete listing. Engineering parameters which were energy flows were developed from the use of bond graph theory as specified by Hirtz et al. [8]. Material flows for the engineering parameters are labeled as, “global,” parameters and are not associated with either the energy or power of the bond graphs. The parameters are considered ranges of values for the flows while the signal flows rely heavily on electrical parameters. 28 Within the collection of functional models, it was desired to match the flows and functions with of the repository. The energy and material flows appeared with the greatest frequency within the functions. The most commonly utilized functions within the model were the control magnitude and convert functions. The signal flows primarily interacted with only a few functions, signal and control magnitude. From this study it was determined that there is a need to identify the common flows between functions with their associated performance parameters. Along with this, the concept that engineering performance parameters could be considered an additional category of flows within a system. With this concept in mind, further research was performed in an effort to gain a better understanding of the feasibility of this concept. By comparing the engineering parameter flows to the critical flows, a correlation could be drawn between the functions and their relationship with the flows. 2.4.2.5 Dimensional Analysis Theorem The work performed by Lucero et al. [7] required the use of engineering parameters. The engineering parameters used to facilitate the concept of functional flows were determined utilizing Dimensional Analysis Theorem (DAT). DAT reduced the engineering parameter into a defined set of units. By doing so, the degree of complication between the engineering units can be minimal. The standardized variable, as seen in Table 2.3, from the Buckingham-Pi Theorem include: mass (M), length (L), time (T), electric charge (Q), absolute temperature (Θ), amount of substance (N) and luminous intensity (J). In an effort ensure coverage of all domains with adequate representation, two additional unit values were utilized, cost ($) and degree (°). While it was understood that rotation is typically considered a unit-less entity, this unit was considered a necessary inclusion to aid in tracking rotational aspects of systems within the mechanical 29 domain. It was determined that units of cost were essential factors in specific design problems which was not included in the standard functional basis models. As a result, it was determined that the monetary domain with the flow of money must be accounted for in the developing repository. Currently these two units have been minimally used, however, it is anticipated that as the design repository grows, these two units will be utilized more frequently. Table 2.3 Dimensional Analysis Theorem Variables 2.4.2.6 Bond Graphs Bond graphs are a methodology of dynamic representation of subsystems, components and elements interacting by energy [40, 41, 42]. A system is pictorially be modelled as a graph with nodes and edges. These nodes act as ports of energy or power transformation which act as an intersection for the various subsystems [42]. The edges connect the nodes together and relay the information about the type of energy or power being transferred between the nodes. In order for the bond graph to be able to translate the system functionality within a defined set of components utilizing both energy and power, a physical process of an action on the power must occur with two variables, and effort and a flow. These two variables are 30 individually domain dependent but when multiplied together, they result in power in standard units. There are two additional categories for use in bond graphs which go along with effort and flow, momentum and displacement. The momentum and displacement variables account for time variances in dynamic systems where the energy changes over time. Utilizing these four variables, a specific definition of the various bond graph components can be defined (Table 2.4). Table 2.4 Bond Graph Components Definitions, Functionality and Relationships [7] The various components of bond graphs are resistive, capacitive, inertial, transformer, and gyrator. A resistive component is one which dissipates energy by relating effort to flow or flow to effort such as electrical resistors or springs. A capacitive element is one which stores potential energy with both effort and displacement, such as electrical capacitors or gravity tanks. Elements which store kinetic energy by relating a flow and momentum are inertial elements. An example of this would include a rotational motor. The element which relates two flow is the transformer which would be examples such as electrical transformers or gear trains. The final variable, the gyrator, relates effort to flow or flow to effort. Examples for the gyrator would be electric motors or voice coil transducers. The established bond graph metrics have been used with the energy flows in an effort to provide analogies across various domains. Variables can be defined within domains due to the secondary flow breakdown of functional basis. The theory behind utilizing bond graphs is that 31 they allow for different efforts and flows to be analogous to each other, disregarding the domain. Going back to the wind turbine example, this can be exemplified by the system starting with mechanical rotational energy and ending with electrical energy without the loss of fluidity in the system. The functions which act on flows in functional basis can be matched to five components of the bond graph. Table 2.5 shows the definition, functionality and relationships of each of the five bond graph components. Table 2.5 Bond Graph Component Definition, Functionality and Relationship Table 2.5 Bond Graph Component Definition, Functionality and Relationship [7] Component Function Relation Resistive Dissipate energy Directly relate effort→flow Capacitive Store potential energy Inertial Store kinetic energy Directly relate effort→general displacement Directly relate momentum →flow Directly relate effort→effort & flow→flow Directly relate effort→flow & flow→effort Transformer Effort→effort, flow→flow Gyrator Effort→flow, flow→effort Mathematical Relation q = ΦR(f) or f = ΦR1 (q) q = ΦC(e) or e = ΦC1 (q) p = ΦI(f) or f = Φ I 1 (p) e1 = ne2 or f1 = nf2 E1 = rf2 or rf1 = e2 An example of this would be the common function, convert. Using the definitions seen in Table 2.5, it can be determined that convert has only has qualities of a transformer and a gyrator. The convert function does not inherently dissipate or store energy. It does transform and/or gyrate energy. 2.4.3 Design Repository &Analogy Computation via Unit-Language Analysis The Design Repository & Analogy Computation via Unit-Language Analysis (DRACULA) is a novel tool which was first developed by Lucero et al. [7]. DRACULA is a 32 tool to aid in Design by Analogy for both novice and expert design engineers alike. The program performs dimensional analysis matching through the use of critical functions, critical flows, critical pairs, performance metrics, Dimensional Analysis Theorem and bond graphs. The work performed entailed the development of the concept into a program as well as the creation of a design repository which would meet the needs of the system. The original DRACULA program was written in C++ through the use of the programming aid, Qt. DRACULA uses bond graphs to equate functions with DAT parameters. The base portion of the program holds the primary algorithm parameter, flows, parameter bond graphs, and critical function bond graphs. DRACULA itself will search through the provided repository and scores each analogy based on similarity. To score an analogy, the program used a function which scores a critical function chain input by the user against the critical function chains of the repository. The returned value is 1.0 if the compared chains are identical and returns a value between 1.0 and 0.0, depending on how dissimilar the two function chains are. There are two specific penalizations which occur. A chain will be penalized for mis-ordered elements by computing the corresponding index shifts. Penalties from inconsistent chain length are done by normalizing the summations by the square of the greater chain length. The scoring process, scoreChainPair(), can be seen in Equation 1 below. (2.1) where ℎ ℎ = = 33 = = ℎ ℎ ℎ ℎ The parameter within the program are the various engineering parameters. These parameters are constants across all engineering domains and have been broken down into base units through Dimensional Analysis Theorem (DAT). Mass flow rate for example would be in this list with one unit of mass (M), and one inverse time unit (T) and no length (L), electric charge (Q), absolute temperature (Θ), amount of substance (N), luminous intensity (J), cost ($) or degrees (°). The parameter bond graphs contain the name of the parameters, such as mass flow rate, and what variable they contain within a bond graph. For example, mass flow rate can act as a resistive, inertial, transformer or gyrator within the bond graph but not as a capacitive variable. The critical functions within DRACULA are the same as those used in functional basis. The critical function bond graphs contain the critical function names, such as actuate and the bond graph variable which the critical function can perform. Actuate, is represented with resistive element in a bond graph. Just as the critical functions listed in DRACULA are the same as those used in functional basis, the available flows in the program are the same as well. No additional functions or flows were added, but the program was created in a manner which would allow for components to be added if the need arose. The design repository of DRACULA contains all the analogies which are available for the tool as well as additional information about the analogies. The expansion of the database continues from the original 12 entries to approximately 60 entries. This database contains the name of each entry followed by the number of function chains, the length of the function chains, and lastly the numerical values associated with each function chain as per DAT. At the time there was anticipation and the desire that the database would eventually hold additional 34 information such as the domain and the field of the analogy as well as how the analogy could be beneficial in Design for X scenarios. The original database also did not have any way to cite the source of the analogy which was also a desired improvement as many of the analogies come from outside sources, such as AskNature.org. A MS excel spreadsheet containing all the database information, both including and excluding DRACULA data, had been maintained throughout the development. The DRACULA tool has several aspects that are similar to the previously mentioned tools. First and foremost, DRACULA is a design analogy tool similar to the WordTree method and AskNature.org database. With the correct understanding of functional basis, DRACULA can produce related results from its design repository. Another similarity aspect is that the tool is not domain specific, unlike AskNature.org. DRACULA, MEMIC, and the WordTree Method are all capable of being able to transcend across domain boundaries whereas AskNature.org only has the capability of providing results from one domain. Within any provided analogy on the web site there is information about some of related bioinspired products. This undoubtedly could yield unique ideas. However, the potential paths which an individual could take to find a usable analogy becomes exponential and thus burdensome. DRACULA has the added benefit of having the ability to include these analogies. A benefit DRACULA shares with both MEMIC and AskNature.org is the ability to let a computer run through the process. The WordTree Method was shown to be effective if properly executed, but if not, the analogies generated can lack uniqueness or novelty [43]. There is one aspect to DRACULA which is not found in other design tools. DRACULA operates utilizing engineering parameters. No other design tool currently available takes into account the engineering parameters of system being designed. This aspect was incorporated into 35 the development of DRACULA in an effort to yield more valuable results. It is anticipated that this aspect of the program will provide better direction towards analogies rather than limiting the applicable analogy domains. 2.5 Conclusion There is an experience gap between novice and senior design engineers. The development of the WordTree Method and AskNature.org are testimonies to this. The shortcomings of these methods has led to the concept of developing a new method of analogy generation through the use of performance parameters and critical functionality. With these aspects in mind, the development of the DRACULA tool and DRACULA’s design repository began. The work by Lucero et al. [7] showed promise. However, further development is needed for the tool to address functionality of DRACULA as well as validate it as a useful tool. 36 CHAPTER 3 THEORY AND METHODS In this chapter, the current state of the project as well as the theory for this research is presented. There are two main aspects to this research. The first is the refinement of the Design Repository & Analogy via Computational Unit Language Analysis (DRACULA) package. The second is the derivation of alternative matching formulations to improve performance. 3.1 Existing Design Tools Currently, there are a handful of tools to aid engineers in Design by Analogy (DbA), as discussed in Chapter 2. While each can one can be a powerful tool when used appropriately, each one also has critical limitations. The first tool discussed, the WordTree method, has a few problematic aspects identified by Linsey et al. [43]. The first is that the correctness of the method implementation varies. This problem leads to errors such as lack of focus on the function but instead on aesthetics or ergonomics as well as using of the wrong tense of verbs or constraints. Another issue with the method has been with obtaining adequate analogies. The study performed by Linsey et al. [43] showed that in some cases, the analogies generated tended towards being in close-domain analogies. The last issue was follow through of the process. The study also found that in most cases, the teams did not apply the analogies generated through the WordTree Method to the next step for an unknown reason. This can be particularly problematic as larger domain distances result in design solutions which are potentially more innovative [44, 45, 46, 47]. The second tool discussed in the previous chapter was AskNature.org. This tool is a major asset in DbA. To start, an individual who would use this tool would immediately find the web site aesthetically pleasing. This design repository, as of September 2015, includes 1,675 37 [11] analogies. One of the results of studies performed by Lucero et al. [7] indicated that AskNature.org is an effective tool for aiding novice engineers. There are two primary drawbacks to AskNature.org. The first is that the tool only has biological analogies. While these analogies have been useful, there are countless example of human developed solutions; none of which are available through AskNature.org. The second drawback which is found also in utilization of the WordTree Method, and that is that focusing on linguistic similarities could cause engineers to miss opportunities based on performance parameters. The third tool discussed, MEMIC, isn’t actually a tool for DbA as much as it is a design tool. The tool itself aids in concept generation from function models input from the user. The tool itself creates a list of concepts from a functional model the user inputs. This list concepts each have a number of objects which together meet the need of the functional model which was entered into the system. The user then would need to interpret how each concept fits together to meet the design requirements. The tool itself is a novel idea, however, it is not an analogy generation tool, in the same sense as AskNature.org or the WordTree Method. Table 3.1 shows a side-by-side comparison of many of the aspects covered about the various design tools. Table 3.1 Tool WordTree Method Design-by-Analogy Tools Comparison Domains Linguistic Restraints Multiple Yes AskNature.org Biological Yes MEMIC Multiple None seen DRACULA Multiple Developed around Primary Application Design-byAnalogy Design-byAnalogy Concept Generation Design-byAnalogy 38 # of Functions Input Assesses Function Interaction 1 No 1 No Multiple No 1-3 Yes 3.2 DRACULA Since DRACULA was originally developed, several changes have taken place to the program. The most notable of which is that the tool has been moved from being a downloadable application to being accessible via the internet. Both the analogy generation as well as the repository are kept on an internet server through the Georgia Institute of Technology. The primary reasoning for this for ease of use. As the tool itself aids in analogy generation based on function, flow and performance, experiments to establish performance will be a necessity. Enabling easy access is a necessary aspect for these case studies. Potential test studies discussed further in subsequent chapters. With the tool online, the information provided to the user has increased. With the previous DRACULA application, the information provided after an analogy generation occurred was minimized to only the top three generated analogies with the ability to download and look at a text document which contained the input parameters, the scores of each analogy when compared to the inputs followed by the list of the top three analogies, in descending order. With the current web based system, the user can specify the maximum number of entries to be displayed, and the results page displays the name, description, possible applications, domain, field, source and hyperlink of the information. An example of the formatted output from the DRACULA program can be seen in Table 3.2. In this example, the top 2 scored analogies are shown for a search with the Temperature Engineering Parameter selected and only one Critical Function, Regulate, was selected. The analogies are again listed in a descending order and there is the ability to specify whether the individual scores are to be displayed or not. Similar to the previous version of DRACULA, there is the ability to export the current analogy generation results, however, the exported results file contains additional information about the generated analogies. An internet browser is necessary to view the results, 39 but an internet connection is not otherwise necessary except to view the pictures associated with the analogies. One of the minor differences between the two versions is that the original version had the ability to perform up to three searches at the same time. For the sake of saving computational power, this was reduced to only being able to perform one search at a time. The last major difference is the repository itself. Previously, the repository was a set of text documents, each of which contained a list or a matrix. As a result, this data was prone to errors which were both challenging to locate and to properly disentangle. This included the addition of new entries. As the repository is now network based, a separate web browser based applet was created for the maintenance of the repository. An additional cost of moving the system into a network was need to rebuild the database. While the initial work of locating entries for the repository and developing function structures for each one had been done, the lengthy process of adding each entry currently available into the repository is an ongoing project. Table 3.2 Name Description Possible Applications Domain Field Source Hyperlink Formatted DRACULA Output Analogy 1 Ants Keep Cool When an ant enters into the sunlight, they are able to keep themselves cool as air scoops open on their sides. For self-cooling devices or buildings, the machine turns on the air cooling system when sunlight hits the machine. Biological Biomimicry AskNature Analogy 2 Penguin Fins Retain Heat Wings of penguins reduce heat loss by forming a countercurrent heat exchanger via the vascular design. Pressure Temperature Biomimicry Institute-Energy. (2014), accessed 6/2014 http://www.asknature.org/strategy/67 http://www.asknature.org/strategy/74 9517306e815ab19b4b04ba75a543eb# 0c420618b1b9abb92630cdaff6e0dd#. .VIBw2zHF98E U5e6Y_ldU4E 40 The current algorithm in use for DRACULA could be improved upon for DbA through functional form. The algorithms in DRACULA compare the user inputs to every analogy in the repository and ranks each analogy according to how directly similar the analogy functional model is to the input parameters. It has been theorized by the researchers of the DAPPS program that analogies with near identical flows are not necessarily the most beneficial. Analogies with inverse flows from the design problem have the potential aid in the creation of novel engineering solutions. However, these analogies are typically more difficult for a design engineer to determine. While inverse relationship matches are not currently embedded into the algorithm, this research effort sought to include these relationships in the matching algorithm. It is also speculated that analogies generated by comparing which functions are present in the model without specifically looking at the order could also be beneficial. Similar to the inverse relationships, the ordering of the relationships is not currently taken into account in the algorithm, but has also begun the process of being incorporated into the tool for testing. The testing, however, is discussed in Chapter 4. 3.2.1 Functional Model Pattern Types In previous sections, it has been mentioned that the DRACULA tool utilizes bond graphs as a way to pair analogies to a set of inputs. It should be noted that these functions can be compared in multiple ways. For this research, two characteristics of the Functional models have been defined as the Components and the Architecture. Start with a visual representation of what the bond graph of a design problem may look like, as seen in Figure 3.1. 41 Figure 3.1 Design Problem Functional Model Representation In this example, the shapes represent the functional aspect of the Functional Model while the arrows represent the flow direction. The component of the design problem is that there is a red circle, yellow diamond, and blue square. The architecture of the design problem is that yellow diamond comes after the red circle and the blue square comes after the yellow diamond. It is easy to say that an exact match of both component and architecture would have the same visual representation. Figure 3.2 shows the visual representation of a functional model with a possible analogy match which is similar in components. Figure 3.2 Functional Model Component Comparison 42 The design problem (left) is similar to the analogy (right) in that both Functional Models have a red circle and a yellow diamond. This concept is what the current DRACULA algorithm is looking at between what the user inputs to the system and the analogies in the repository. Figure 3.3 shows a visual representation of how an additional Functional Model could be similar to the design problem due to a similarity in architecture. Figure 3.3 Functional Model Architecture Comparison In this example, the design problem (left) is similar to the analogy (right) in that both functional models contain the same set of shape and color components. The ordering of the functions is what is different between the design problem and the analogy. So while these models are similar, they are architecturally distinct. Five different ways of have been identified to compare architectures. These five different types have been identified based on the concept that there are two aspects of architectural comparisons. The compared sets can either have an ordered aspect to them or a disordered. Within the ordered aspect, the two sets could be identical or mirrored when compared to each other while in the disordered aspect, the functional sets can either be viewed as disordered or unique. It is also possible for these aspects to be combined, which can be seen in Figure 3.4. 43 Figure 3.4 Architectural Aspect Breakdown It should be noted that not all architectural comparisons can be distinguished when the chains have fewer than four common functions. It should also be noted that when two chains exhibit only a single common function no comparative architecture can be considered. Figure 3.5 shows a visual representation of a design problem with the 5 identified architectural comparison types. 44 Figure 3.5 Architectural Comparison Types While Figure 3.5 shows the 5 architectural comparisons, it is obvious that more permutations of these shapes could occur in a linear style. Not only could there be other permutations, there is the definite possibility that there are other functions nestled between the ones shown above, as well as certain functions could be absent. These general definitions of the five architectural comparisons have been developed as a result. The identical architectural comparison is based on how identical the orders are between the two sets of functions being compared. The mirrored architectural comparison is similar to the identical with the exception that it is based on whether the orders of the two sets of functions being compared are in the exact opposite order with the same penalties of extra or non-existent functions. A disordered architectural comparison is characterized by having most of the function interactions being identical. If you take the Disordered set from Figure 3.5 and compare it to the design problem, it can be seen that the red circle leads to the blue square, which leads to the yellow diamond. The green pentagon does not follow the yellow diamond, but instead comes before the red circle. 45 This is just one example of a disordered architectural comparison. The mirrored disordered architectural comparison is similar to the disordered, but again, it is a look at the function models in reverse order. Lastly, the unique architectural comparison shows that none of the interactions are the same between the two function sets. Looking at the example in Figure 3.5, not only are none of the shapes of the Unique set in the same location as the design problem, but none of the interactions are the same. This scenario shown is one of the most Unique comparison sets conceived while not including functions which are not common between the sets. Table 3.3 Architectural Type Metric Scores Analogy Metrics Function Chain Component Identical Mirrored Disordered Mirror Disordered Unique Identical 1.0000 1.0000 0.0000 1.0000 0.5000 0.2500 Mirrored 1.0000 0.0000 1.0000 0.5000 1.0000 0.2500 Disordered 1.0000 0.0000 0.0000 0.6250 0.7500 0.3125 Mirror Disordered 1.0000 0.0000 0.0000 0.7500 0.6250 0.3125 Unique 1.0000 0.0000 0.0000 0.6250 0.6250 0.3750 Green = Function Structure type compared to equivalent metric Red = Indicates metric value greater than equivalent metric Table 3.3 shows the metric values for each of the architectural analogy types shown in Figure 3.5. The metric scores which are designed to relate to a specific architectural type are in green while any score which is greater than that value are in red. As anticipated, both the identical and mirrored architectural types are the only types with a score associated with them in their correlated metrics, respectfully. The unique metric was highest with the unique architectural type, however, it is significantly higher than a majority of values calculated in 46 experiments. The disordered and mirror disordered while did not display the highest scores, did not perform surprisingly. The architectural types displayed in Figure 3.5 do not have any functions which do not match between the function chains. This affects the disordered and mirror disordered metric scores greatly. This is precisely the reason a computer program is necessary to interpret the data. As previously mentioned, the current DRACULA algorithm relates the components of the analogies in the repository with the user inputs. However, the algorithm does not take into consideration the architecture of the analogies. This is an aspect which is desired within the tool as it is anticipated that certain functional model architectural similarities may provide better analogy results than others. 3.3 Conclusion The identification of the various Design by Analogy tools is a large step towards the development of new tool, such as DRACULA. The theoretical method behind DRACULA attempts to implement a new tool which is geared towards filling an observed experience gap in the design engineering community. With the implementation of the DRACULA successful, the need to validate the tool became the next step. To validate DRACULA, the concept of functional model pattern types was explored. Two aspects were identified for a function model, component and architecture. While the components of two function models can be compared directly, five different comparisons were identified within architecture: identical, mirror, disordered, mirror disordered, and unique. The next step became how best to identify each of the six metrics and place a value with each one. This would be followed by validation of the metrics to ensure that they are appropriate method of assessing analogical pairs. 47 CHAPTER 4 EXPERIEMENTS Chapter 4 discusses the preliminary results from analogy matching through function, flow and performance parameters on the DAPPS project and presents an outline of the remaining required work. Initial testing shows that a tool, such as DRACULA, which is based on function, flow, and performance parameters can be beneficial to a design engineer creating a new design. Additionally, it is theorized that more comprehensive matching metrics can lead to more robust identification of design analogies 4.1 DAPPS Case Studies Lucero et al. [7] conducted several case studies examining the algorithms underlying DRACULA. These studies primarily showed the ability to identify critical components of a functional model as well as showing that useful analogies could be determined by comparing the critical functions within Functional Models. While the method was shown to be useful, the overall value of the method has not been assessed. This is work which needed to be tested. 4.2 Metrics The metrics originally implemented in DRACULA only evaluate the component similarity of the critical chains within the functional models. They do not consider the nature of the architecture. While many analogies are based solely on component similarity (e.g. a nail gun versus a stapler) other analogies present different architectures that go beyond similarity (i.e. a motor versus a generator). This project established metrics to be used to measure both component similarity and architectural relationships. These metrics serve two purposes. First, they will be used to score the analogies beyond the current DRACULA algorithm. These metrics 48 were developed based on the six different aspects of components and architecture. The metric measures the closeness of the compared sets based on their components. The metrics identified for the comparison of functional structures are the Component similarities, along with the five architectural similarities: Identical, Mirrored, Disordered, Mirror Disordered and Unique. Six equations have been developed to establish a numerical value to each of these metrics. Equation 4.1 shows the equation for the Component comparisons. (4.1) where FunctionsShared = The number of functions two chains have in common Chain1Length = The total chain length of the input Chain1Length = The total chain length of the source required to cover all common functions This metric models multiple aspects of similarity. First, it is important to know the total number of functions in common. Second, it is important to note how the common functions relate to the input chain. Third, it is also important to note how the common functions relate to the source analogy chain. Finally, it is important to keep track of the functions the source has in common with the input as well as the functions in between, but exclude the functions in the beginning or the end of the source chain which are not relatable to the input. A visual representation of this function chain snipping operation can be seen in Figure 4.1. 49 Figure 4.1 Function Chain Snipping Example The snipping operation considers the green pentagon and yellow diamond significant as they are in common as well as the red circle as it is between the common functions. Both of the blue squares would be discarded as they are not perceived to have significance. The next metric, identical, is nearly identical to the component metric, with the exception that its determinate is based on whether or not the common functions of the input and the source are in the exact same order. If the order of the common functions is not the same in the two chains, the metric value is zero. (4.2) The variables for the Identical equation are the same as Component equation. It has been speculated that there may be value in having a value for Identical metric which is based on the greatest number of functions in the source which have the same order as the input, however, this concept will be further vetted at a later time. The calculation for the Mirrored metric is also nearly identical to the Component, as seen in Equation 4.3. The exception for the Mirrored metric is that it is dependent on the common functions of the input chain and the source chain to be in the exact opposite order. 50 (4.3) The Disordered and Mirror Disordered metrics assign a value to the location of each shared function from the source to the input. Equation 4.4 and Equation 4.5 show the method which calculate the values associated with each of the two metrics. (4.4) (4.5) where n = the number of matched functions IFPi = the position of input function i SFPi = the position of source function i The overall goal of these two metrics is to try to judge how close various sets are to being in the same order. Take Figure 4.2 for example. If you consider that there are four possible positions, then the fraction of the whole that the Disordered red circle is from the Design Problem red circle is ¾. The same would be true for the blue square and the yellow diamond. The green pentagon is three positions away. Therefore, the value associated with the green 51 pentagon is ¼. The total disordered score in this example would be ¾ * ¾ * ¾ * ¼ = 27/256 ≈ 0.105. Figure 4.2 Disordered Example Comparison The Mirror Disordered value would be based on how close each function is to its mirrored position. In this case, the red circle would receive a score of ½, the blue square a 1, the yellow diamond a ½, and the green pentagon would receive a 1. The total score in this scenario for the Mirror Disordered metric would be a ¼ or 0.25. This example now shows how a function chain may be viewed as a disordered set originally may actually be closer to a mirror disordered, thus exemplifying the desire to use computers to assess potential matches. The last metric is the Unique metric. Equation 4.6 shows the simplistic nature of the calculation. (4.6) The equation is simply the Disordered and Mirror Disordered values subtracted from a max score of 1 after being divided by two in order to ensure the range this and every metric is normalized from 0 to 1. The Unique value calculated from the comparison in Figure 4.2 would yield a final value ≈0.822. Due to the similar nature between the Identical and Disordered as 52 well as the Mirrored and Mirror Disordered metrics, only the Disordered and the Mirror Disordered values are used in the calculation. 4.3 Sisyphus In an effort to efficiently compare function chains using the aforementioned metrics, a MATLAB program was created, called Sisyphus. The name, Sisyphus, came from a period of slow progress during the thesis. The role of Sisyphus is to perform all necessary metric calculations for the experiments which will validate the proposed metric. There are two major benefits of using Sisyphus. The first is accuracy. As the experiments conducted for this thesis as well as future experiments require several calculations to be performed, it is likely a human would make mathematical mistakes, even though much of the various calculations are simple arithmetic. This also leads to the second reason of efficiency. In total there are six metrics being assessed in each analogical comparison. The smallest set of data to be used in an experiment is approximately 30 comparisons. Sisyphus consists of eight different functions created in MATLAB. There is one function to calculate each of the six metrics. One function was created to remove functions at the beginning or end of the chain which do not coincide with the second function chain. The function which removes the unnecessary functions from the beginning and end of a chain is called a Snipping Function. The final function is a call function which calls all of the metric functions and the snipping function in the appropriate order. The call function also normalizes all of the calculated values on a scale from 0-1, to make comparison process easier. Sisyphus has several sets of outputs. The first is a table which contains every possible combination of analogical pairs from the dataset and the calculated metric values associated with them. This table is exported to text file for further analysis. The second output is the 53 predetermined list of comparable analogies, such as the impeller and propeller, and the calculated metrics associated with them. The set of comparable analogies is displayed to the user as well as exported to a text file. The last two parts output by Sisyphus is the average metric values of each of the list sets which are solely displayed to the user. All of these outputs were put in place to aide in the analysis of any experiments. 4.4 Experiment Development The intent of the experiment was to validate the developed metrics. One of the primary researchers on the DAPPS project, Professor Julie Linsey of Georgia Institute of Technology, has expertise in the formulation and analysis of case studies and experiments of this nature. With the guidance of Prof. Linsey, the experiments continued where the case studies performed by Lucero et al. [7] left off. Once the development of the experiment had been concluded, a set of students would be handed two packets of papers. The first packet contains five common household items, such as a can opener or electric clothes iron and a design problem for each product. An example of this would be that the manufacturer wishes to increase the efficiency of the product. The function structure of the product would be provided followed by a list of six preselected potential analogies. The five products were going to be assessed and several of the potential analogies would be able to be used for more than one product, totaling 21 potential analogies. The second packet contains details about each potential analogy. The potential analogies consisted of both biological systems and man-made products. Each potential analogy would have its own page with a title, description, critical functions, and an area for any helpful figures. The intent of the description is to provide a written understanding of how the product works in a constant manner. The critical functions are provided to highlight the most important aspects of that products various products. The provided figures would allow to participant to see 54 the product in question. As most of the potential analogies were other products, most of the supplied potential analogies had a function structure in the figures area. For some of the analogies a picture indicating the process which is occurring was added. An example of this would be a cut-away picture of the product exposing the internal components allowing the participant to see how the internal components interacted as seen in Figure 4.3. Figure 4.3 Potential Analogy Cut-Away Example [48] All of the provided data about the potential analogies is to ensure that a common understanding of each one is available to the participants. All function structures used for this portion of the experiment came from either the Oregon State University Design Lab or developed by students of Dr. Linsey. This is one of the primary concerns which was raised by 55 Dr. Linsey during development. Dr. Linsey stated that if each of the potential analogies were not able to be properly understood, the collected data could become skewed. The participant, as previously mentioned would be asked to compare the product to six potential analogies. The participant would be instructed to rank the potential analogies in one of four design characteristics: similarity, applicability, ability to be successfully implemented and likelihood to lead to a novel solution. The reasoning behind this is theory that potentially one or more of the previously defined metrics may either directly or inversely correlate to one of the design characteristics. 4.4.1 Experiment Implementation and Termination Before the experiment was handed out to an appropriate amount of participants, two preliminary runs were scheduled. The first preliminary study was given to two experienced design engineers. There were several purposes to the preliminary study. The first purpose was consistency. As previously specified, if the information provided about each of the potential analogies was not consistent or if a similar understanding about each of the potential analogies was not ensured, the results of the experiment could become skewed or inconsistent. The second purpose was feasibility. By giving the experiment to experienced design engineers, it was thought that the possible connections between the product and the potential analogies would be more easily seen. As such, it was theorized that the results would be closer to the anticipated results. The second preliminary study was never performed and will be discussed later in Future Work. The second preliminary study was not performed due to several complications which arose during the first preliminary study. Four primary complications were observed during the first preliminary study. The first was a difference in perspectives about the interpretation of the 56 provided information about the potential analogies. Both first study participants ran through the experiment multiple times. During these multiple run-throughs it was discovered that the different perspectives yielded different results. The ability to discern the quality of the comparisons between the product and the potential analogies was ultimately the differentiation characteristic. An example of the results of one of the questions with three different perspectives by the same individual can be seen in Table 4.1. The question marks signify that the participant was unsure of the relation to the problem. Table 4.1 Preliminary Study Results Perspective Example Perspective 1 Perspective 2 Perspective 3 Black and Decker Can Opener 1 3 1 Blackberries 2 4 2 Keyhole Limpets ? 2 3 Milwaukee Copper Tube Cutter 3 5 5 Velvet Worms ? 1 4 VHS Player 3 6 6 ? = Indicates the participant was unsure of the relation between the potential analogies This example plainly shows the effects of the different perspectives. The first perspective did not allow for two of the potential analogies to be comparable to the design problem. It should also be noted that the relative scores of most of the potential analogies change considerably from one perspective to another. 57 The second complication which arose during the first preliminary study was inconsistent results. As stated previously, the participants did several run-throughs of the experiment. The participants made an effort to try to use similar approaches as each other for various trials. Even when the participants used similar approaches, the results were inconsistent. This coincides with the findings by Ward et al. in that participants are not solely limited by the problem, but are influenced by memories and experiences [49]. Table 4.2 shows one of the comparisons between the two participants answer’s using similar perspectives. Table 4.2 Preliminary Study Results Consistency Example Participant 1 Participant 2 Black and Decker Can Opener 5 1 Blackberries 4 2 Keyhole Limpets 1 3 Milwaukee Copper Tube Cutter 3 5 Velvet Worms 2 4 VHS Player 6 6 Just as with the previous example, this consistency example highlights the second complication seen in the experiment. On average, the answers are different by 33% for each of the potential analogies. With this difference, it should also be noted that the direction which each score was skewed when comparing the two was also inconsistent. 58 The third complication of the first preliminary study was that the potential analogies suffered from structural challenges. These structural challenges included the variation of the complexity of the concepts. While the purpose of the information provided about each of the potential analogies was meant to help the understanding of the analogy, the difference in the complexity of various analogies required different amounts of information to be required. While this aided the effort to ensure that a consistent basic understanding was achieved, it undermined the consistency of the analogies. Another example of this is the complexity of the function structures. All of the function structures were either collected by Dr. Lucero for the use of her case study or retrieved from the Design Repository at Oregon State University. To ensure consistency all the function structures were commonly formatted. However, since there were different origins of the function structures, as well as different complexities in the base analogies, the complexity and depth of the function structures varies. The final complication of the experiment was a lack of uniformity within the linguistics. Due to the fact that many of the potential analogies came from various engineering domains, generally mechanical and biological, it is difficult to ensure that a common language is consistent throughout the entirety of the experiment. This again leads to a breakdown in trying to ensure consistency between all of the potential analogies. These are the primary reasons behind not continuing the experiment at this time. All four of the aforementioned complications have plausible solutions. Due to the forthcoming end of funding for the DAPPS project, it is not feasible to pursue the experiment further into the second preliminary study and the primary experiment. 59 4.5 Van Helsing The need to validate the metrics was still a primary concern for the DAPPS project. A new experiment needed to be designed to meet this need. After the termination of the planned experiment, the principle investigators collaborated to develop an alternate approach. One of the topics discussed was the available resources. During the development of the initial experiment, Sisyphus was created to be able to efficiently calculate the metric values for the experiment. This code also contains all of the function chains used in the initial experiment by the potential analogies as well as the products, approximately 30 chains. This lead to the realization that in the current state of the program, over 400 comparisons could be made. This brought on the idea that it could be possible to find pairs of objects which could be considered analogies to each other within the data already collected. These analogies could be compared to the overall average of the entire data set to establish a baseline with the metrics as well as being able to check to see if the results are as anticipated. This test was given the name Van Helsing due to its relationship to the DRACULA program. A search for comparative analogies which would not necessarily be immediately obvious but still perceived as being similar. Within the initial data set, five pairs were found. The initial comparison of the first five pairs can be seen in Table 4.3. Table 4.3 Van Helsing Initial Test Data Nerf Gun Nerf Gun Vacuum Vice-Grips Tube Cutter Nail Gun Brad Nailer Blower Quick Grip Can Opener Average Component 0.4638 0.6 0.5455 0.75 0.8571 1 Identical 0.2805 0.6 0.5455 0.75 0.8571 1 Mirror 0.0181 0 0 0 0 0 Disordered 0.5754 1 1 1 1 1 60 Table 4.3 Continued Mirror Disordered 0.3406 0.5556 0.5556 0.5556 0.5556 0.52 Unique 0.1527 0.2222 0.2222 0.2222 0.2222 0.24 In all of the metric categories, except for Mirror, the metric scores of each of the analogy pairs are greater than the average scores of all of combinations in the data collection. While this small scale test did not prove the theory that the proposed metrics are valuable for comparing function structures, it does point the research into a direction which may provide fruitful results. The next step was to create a larger list of analogies which could be used to elaborate on the initial test of Van Helsing. Further collaboration lead to a list of 26 comparative analogies which could be used to further test Van Helsing. The full list of the 26 comparative analogies can be seen in Table 4.4. Table 4.4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Comparative Analogies Comparative 1 Vacuum Vacuum Vacuum Vacuum Electric Screwdriver Black & Decker Slice Right Irwin Quick Grip Clamp Electric Can Opener Electric Can Opener Back Massager Toy Nerf Gun Toy Nerf Gun Toy Nerf Gun Toy Nerf Gun Electric Pellet Gun Paper Shredder Comparative 2 Air Popcorn Popper Shop-Vac Blower Dyson Bladeless Fan Water Pump Electric Drill Electric Jigsaw Vice-Grip Pliers Electric Copper Tube Cutter Electric Jar Opener Toy Bumble Ball Electric Pellet Gun Pneumatic Nail Gun Pneumatic Brad Nailer Electric Nail Gun Paintball Gun Noodle Maker 61 Table 4.4 Continued 17 18 19 20 21 22 23 24 25 26 Paper Shredder Noodle Maker Parachute Parachute Evaporative Cooler Winch Umbrella Impeller Velcro Wind Turbine Blade Shaved Ice Maker Shaved Ice Maker Dandelion Seed Handheld Anemometer Ant Air Vents Thread Spool Satellite Dish Propeller Plant Burrs Whale Fin By increasing the list of the comparative analogies, the list of analogies to be used for the comparison also increases. The total count for the sources in the data set for Van Helsing is 59. The function chains for the 59 predetermined analogies come from function structures from Oregon State Universities Design Lab, Dr. Lucero’s research, or developed by students performing research under Dr. Linsey. For Van Helsing, Sisyphus runs through 1711 comparisons using the sources from the data set and an additional 26 for the specified analogies totaling 1737. This process takes several seconds. 1711 values to compare to the 26 compared analogies seemed to be more than adequate and due to the time conditions, was not increased further. 4.6 Conclusion Once methods of calculating the predetermined metrics, the development of an experiment to test the metrics began along with the generation of a tool, Sisyphus, to help the generation of the metric values. Both Sisyphus and the experiment were being developed simultaneously. When the initial experiment was deemed impossible with the current project resources, the metrics and Sisyphus were still seen as assets. After much collaboration a new 62 experiment was set forth calculate a set of predetermined analogies against the average of a large set of sources. The following chapter will discuss the results of the experiments. 63 CHAPTER 5 RESULTS & DISCUSSION To understand the role of the metrics used in Sisyphus and to evaluate the hypothesis that the quality of matches based on function structure can be determined by comparing the function structure, the experimental Van Helsing, introduced in Chapter 4, was conducted. The results of this experiment are discussed in this chapter. 5.1 Results The previous chapter discussed the development of the experiment titled Van Helsing. This experiment consisted of the program Sisyphus which contained 59 different function models which are analyzed in combinatorial pairs. It also analyzes 26 specific, predetermined comparisons, matching known analogies, as well as performing some statistical analysis. The output of Sisyphus contains a text document of each set with the calculated metric values for each comparison. In total 1737 analogical comparisons were performed by Sisyphus. Several aspects were considered in data analysis. The first considered the metric averages for the entire pairwise combinational dataset. The average metric values of the dataset are in Table 2.1. Table 5.1 Average Dataset Average Metric Values Component Identical Mirror Disordered Mirror Disordered Unique 0.5348 0.2869 0.0211 0.7164 0.4479 0.2016 By calculating an average of a data set, it can be established what the typical values when two random sources from the list are compared. If the average values of the predetermined set 64 (Table 5.2) show a tendency to be either greater or less than the dataset average, then a pattern may be established with respect to the effectiveness of the metrics as analogy matching criteria. Table 5.2 Predetermined Analogies Averages Difference from Random Average Dataset Standard Deviation Predetermined Analogies Standard Deviation Predetermined Matches Metric Value Statistics Component Identical Mirror Disordered Mirror Disordered Unique 0.7039 0.4808 0.0000 0.9061 0.5229 0.2470 + 0.1692 + 0.1939 -0.0211 + 0.1897 + 0.0750 + 0.0454 0.2086 0.2999 0.1041 0.3970 0.2568 0.1104 0.1936 0.3620 0.0000 0.2078 0.1161 0.0615 At first glance, most of the direct average comparisons appear to be useful. It should be noted that each metric calculation was normalized to have a range of [0 to1], however due to the nature of the calculations the Unique metric will typically have lower values. Noting that the range of all the metrics is [0 to 1] and that the Unique values will inherently be lower, the difference in the average values of the two sets is promising. The one metric which shows concern is the Mirror metric. It had been theorized on the DAPPS project that reverse analogies, or analogies which have reversed function structures are difficult to identify. In addition, it should be noted that the way the metric calculations were set up the ability for a comparison to calculate a value for Identical and Mirror metric values is mutually exclusive. By definition, Identical structures cannot Mirrored, and Mirrored structures cannot be Identical. This also being said, it is also possible for the structures being compared to be neither Identical nor Mirrored. Further work on mirrored analogies is likely necessary. Our further analysis of the 65 behavior of the mirrored analogy supports this conclusion and thus further results focus on the other 5 metrics. Table 5.3 Analogy 1 Preselected Comparison Metric Values Analogy 2 Vacuum Air Popcorn Popper Vacuum Shop-Vac Blower Vacuum Dyson Bladeless Fan Vacuum Water Pump Electric Screwdriver Electric Drill Black & Decker Electric Jigsaw Slice Right Irwin Quick Grip Vice-Grip Pliers Clamp Electric Copper Tube Electric Can Opener Cutter Electric Can Opener Electric Jar Opener Back Massager Toy Bumble Ball Toy Nerf Gun Electric Pellet Gun Toy Nerf Gun Pneumatic Nail Gun Pneumatic Brad Toy Nerf Gun Nailer Toy Nerf Gun Electric Nail Gun Electric Pellet Gun Paintball Gun Paper Shredder Noodle Maker Paper Shredder Shaved Ice Maker Noodle Maker Shaved Ice Maker Parachute Parachute Evaporative Cooler Winch Umbrella Impeller Velcro Wind Turbine Blade Dandelion Seed Handheld Ant Air Vents Thread Spool Satellite Dish Propeller Plant Burrs Whale Fin Component Identical Disordered Mirror Unique Disorderd 0.4286 0.8750 0.5333 0.6667 0.8571 0.4286 0.8750 0.5333 0.0000 0.0000 1.0000 1.0000 1.0000 0.9200 0.8333 0.5556 0.5102 0.5000 0.5200 0.5556 0.8421 0.8421 1.0000 0.5000 0.2500 1.0000 1.0000 1.0000 0.5556 0.2222 1.0000 0.6000 0.8889 0.7500 0.6000 1.0000 0.6000 0.0000 0.0000 0.6000 1.0000 1.0000 0.6250 0.7778 1.0000 0.5200 0.5556 0.7500 0.5556 0.5556 0.2400 0.2222 0.3125 0.3333 0.2222 0.5455 0.5000 0.7500 0.5000 0.6667 0.5000 0.6000 0.5714 0.3333 1.0000 0.5714 1.0000 0.8333 0.8889 0.5455 0.5000 0.0000 0.5000 0.0000 0.5000 0.6000 0.5714 0.0000 1.0000 0.5714 1.0000 0.8333 0.0000 1.0000 1.0000 0.7778 1.0000 0.8750 1.0000 1.0000 1.0000 0.0000 1.0000 1.0000 1.0000 1.0000 0.7500 0.5556 0.5556 0.5556 0.5556 0.5000 0.5000 0.5556 0.5000 0.0000 0.5200 0.5000 0.5200 0.5200 0.6250 0.2222 0.2222 0.3333 0.2222 0.3125 0.2500 0.2222 0.2500 0.0000 0.2400 0.2500 0.2400 0.2400 0.3125 Green = Metric value in the top ten percent in that category Red = Metric value less than the average in that category 66 0.2222 0.2449 0.2500 0.2800 0.3056 The next step in analyzing the method used in Sisyphus after comparing the average metric value of each set is looking at each predetermined comparison and comparing them individually with the average of the dataset as shown in Table 5.3. The values highlighted in red are values which did not exceed the average of the metric values from the entire dataset. As no predetermined analogies received Mirror metric scores, a Mirror column was omitted from the table. It can be seen from Table 5.3 that a majority of the calculated metric values from the predetermined analogy comparisons are greater than the average of the dataset. Only four predetermined analogy comparisons scored ranked lower than the average from the dataset in the Component category, six in the Identical, one in the Disordered, and not in the Mirror Disordered or Unique categories. The eight Identical values which are below the dataset average are all 0.0000. This means that no Identical structure was calculated between the two function structures. This is not surprising as it would be very logical to see that two functions structures, while nearly identical, could have one function out of place which would stop the Identical calculations from finding an associated value. The other predetermined comparisons with metric values below the average of the dataset all appear to be exceptionally close to the average. In addition to these aspects, no set of predetermined comparison metric values, with the exception of the Mirror metric value, contain more than one value which is lower than the average of the dataset. This too is a promising sign. One of the previously mentioned aspects is that it is reasonable to think that one concept will not be the sole guiding principle which will lead to the most promising Design by Analogy results. It is likely that multiple aspects will need to be taken into consideration. 67 In trying to take the metric values to the next step, the thought came as to whether or not any of the predetermined analogies had any metrics which ranked in the top ten percent overall. 24 of the 26 predetermined analogies had at least one which metric value which was ranked in the top ten percent of the entire dataset of pairwise comparisons. Further, nine of the predetermined analogies had three metric values which were ranked in the top ten percent of the entire dataset. The nine predetermined analogies which have three metric values in the top ten percent as well as the two pairs which had no metric values in the top ten percent are shown in Table 5.4. Table 5.4 Best and Worst of the Top 10% Analogy 1 Analogy 2 Vacuum Vacuum Black & Decker Slice Right Irwin Quick Grip Clamp Shop-Vac Blower Water Pump Electric Jigsaw Vice-Grip Pliers Electric Copper Tube Electric Can Opener Cutter Back Massager Toy Bumble Ball Evaporative Cooler Winch Impeller Velcro Wind Turbine Blade Ant Air Vents Thread Spool Propeller Plant Burrs Whale Fin Mirror Unique Disorder 1.0000 0.5102 0.2449 0.9200 0.5200 0.2800 Component Identical Disordered 0.8750 0.6667 0.0000 0.8421 0.8421 1.0000 0.5000 0.2500 0.8571 0.8571 1.0000 0.5556 0.2222 1.0000 1.0000 0.0000 0.0000 1.0000 1.0000 0.8333 0.0000 0.6250 0.0000 1.0000 1.0000 1.0000 0.7500 0.5200 0.2400 0.7500 0.3125 1.0000 0.8889 0.3333 1.0000 1.0000 0.8333 0.8889 0.8750 0.0000 0.5200 0.5200 0.5200 0.6250 0.0000 0.2400 0.2400 0.2400 0.3125 Green = Metric value in the top ten percent in that category Red = Metric value less than the average in that category There are several interesting takeaways from Table 5.4. The first one is with the last entry with the Back Massager and the Toy Bumble Ball. When the metric values from this specific set was compared to the average of the entire dataset, it was the only predetermined 68 analogy which had more than one metric value which was lower than the average of the entire dataset. Yet the other metric values of the Back Massager and the Toy Bumble Ball were in the top ten percent. While one example is hardly sufficient to make an absolute conclusion, this shows that the metric values may be needed as a group to provide numerical values which together show why two sources being compared are promising analogies. The second takeaway from Table 5.4, is with the predetermined analogies whose metrics all rank in the top ten percent in the Component, Identical, and Disordered categories. This may be an indicator that these metrics could in fact be redundant to each other. Even though they are mathematically different and were designed to assess different characteristics, such distinctions may be unnecessary. Similarly, the Component, Mirror Disordered, and Unique categories all came up as a set twice, once with the bumble ball/massager pair and again with the wind turbine blade/whale fin. This could indicate that these metrics may indeed be indicating similar strengths in an analogical comparison. The comparison between the evaporative cooler and the ant air vents was the second pair of the predetermined analogies which did not have any metric values in the top ten percent. Effectively, both are cooling processes which involve air flow and the exportation of thermal energy through water. The metric scores indicate that only one function was found in common between the two function chains. This is known as only the component value has a score. The function structures used for each of these processes were harvested from two separate resources. There are multiple possible explanations for the chains not being comparable. First, the processes may not overlap as much as previously thought. Second, since the function structures were taken from different resources, the interpretation of each process may be different and as 69 such would yield different structures. Either way further analysis into both the evaporative cooler and the ant air vents processes in necessary to determine if the metrics failed to recognize the comparison due to inadequate metric definitions, the analogy is purely an outlier, or if the pair is not an analogy at all. The final aspect looked at for the data is statistical data. The standard deviation of all metrics within the dataset as well as for the predetermined analogies can be seen in Table 5.2. Boxplots of the datasets have also been provided in Figure 5.1 and Figure 5.2. The standard deviations of each set of data provide some useful information. It is worth noting the difference in the standard deviations of the Disordered, Mirror Disordered, and Unique metrics. The predetermined analogies have a significantly smaller standard deviation in these metric categories compared to the entire dataset. This is another indicator that the Disordered, Mirror Disordered, and Unique metrics provide valid results. The standard deviation of the Mirror metric of the predetermined analogies is useless as no analogies were indicated to have Mirrored architectures. The boxplots primarily reinforce the findings from comparing the standard deviations of the two datasets. As expected from the standard deviation, the Disordered, Mirror Disordered, and Unique metrics have very tight groupings. It is worth noting that the Identical metrics in Figure 5.1 and Figure 5.2 are exceptionally similar with the exception of the median of each group. It is also worth noting that a majority of the Component scores in the predetermined analogy set would be considered to be above 25% of the average. This could be an indicator of the validity of the Component metric and its scoring system. 70 Figure 5.1 Figure 5.2 Entire Pairwise Dataset Statistical Boxplot Predetermined Analogies Boxplot 71 The last piece of information which can be taken away from in Figure 5.1 and Figure 5.2 is with the outliers. Every non-zero score in the Mirror metric category is labeled as an outlier. This reiterates the thought two sources which have inversed function structures are difficult to find. It is also worth noting that every zero score in the Component metric category is considered an outlier. This is perhaps an indicator that however unlikely sources seam, they may have a small connection. 5.2 Results Conclusion There are several discoveries to be taken away from Van Helsing discussed in this chapter. Most notably with the Mirror metric. The Mirror metric values did not show the expected insight, however the insight provided is still useful and not surprising. In addition to this, it appears as though some metrics seem to work together in showing potential significance. That being said, some metrics may be repetitive in terms of their usefulness. 5.3 Van Helsing Van Helsing implemented the program Sisyphus to calculate six analogy metrics for nearly 2000 pairwise combinations. It also generates statistical data associated with two separate sets of data. The first set of data consists comparing all possible combinations of sources together. The second set of data is a predetermined dataset which was comprised of 26 predetermined analogies. These predetermined analogies were seen as potentially strong analogies while not being viewed as trivial by experienced design engineers. These comparisons used the six previously defined analogy comparative metrics: Component, Identical, Mirror, Disordered, Mirror Disordered, and Unique. As a result of this analysis, the following conclusions were made about the validity of these metrics for analogy identification. 72 5.3.1 Mirror Analogy Metric During several of the steps of the analysis two comments about the Mirror metric were made. The first dealt with the fact that due to the nature of the Mirror metric calculation method, very few comparisons showed any indication of the two function structures having exact inverse flows. This is not surprising as it has been theorized that inverse analogies are exceptionally difficult to identify. Van Helsing supports this theory. First, none of the predetermined analogies generated a Mirror metric score. One of the predetermined analogies is typically considered a reversed analogy, the Wind Turbine Blade and the Whale Fin. The reason these are considered reverse analogies is because the whale uses its fin to push water (fluid), thus expelling energy and creating movement. The wind turbine blade is the reverse. The wind (fluid) pushes on the wind turbine blade, expelling energy and causing movement. The reason the Mirror metric did not pick up on this is due to the design of score. As stated in Chapter 4, both the Identical and the Mirror metric rely on the order of the function shared in the linear function chain to be in an exact order. If this exact order is not met, a score of zero is given. Functions which are not shared can be in the chain, but the shared functions must match in the appropriate order. This may be a design flaw in the system related to the vocabulary of the revised functional basis. If the metric cannot identify the analogies which are already seen as reverse or inverse analogies, there would be little hope that it could identify new inverse analogies effectively. As previously mentioned, there were several compared sources which did receive a score in the Mirror metric category, even though statistically they were considered outliers. Of the 41 paired sources, not one of the paired sources appeared to be analogies to each other. However, analogies do tend to be situation dependent. As such, these matches’ sources may be useful under the right set of circumstances. 73 5.3.2 Disordered and Mirror Disordered Analogy Metrics The Disordered analogy metric most likely showed the best promise for directly comparing linear function chains. The average value of the Disordered metric values for the predetermined analogies was the highest average of any of the metrics. The average Disordered metric scores of the predetermined analogies was approximately 40% higher than the average Disordered metric scores from the entire dataset. In addition to the highest average, the Disordered metric category, along with the Mirror Disordered metric category both had exceptionally small standard deviations. The Unique category from the predetermined set did have the smallest standard deviation, however this is not surprising. As previously mentioned, the Unique metric category is naturally a more narrow category which will yield smaller values in general. The tightness of the groupings of the both the Disordered and Mirror Disordered metric values in the predetermined analogy set is exceptionally encouraging for these metrics. The standard deviation of the Disordered and the Mirror Disordered metric values of the predetermined analogy set are 1/4th and 1/5th the entire data set, respectively, in addition to having a higher average value than typical of other metrics. The statistics of these two metrics show the potential of the Sisyphus program. It should be reiterated that the Disordered and Mirror Disordered metric categories are somewhat dependent on the Identical and Mirror metric categories, respectively. This dependency is only that, by design, typically Identical functions structures will lead to higher Disordered metric scores and Mirrored function structures will lead to higher Mirror Disordered metric scores. 74 5.3.3 Identical Analogy Metrics The Identical analogy metric has an overall interesting result. The range of the Identical metric values are identical for both the complete dataset and the predetermined analogy set. Also the third quartile for both sets sits in a nearly identical value when looking at the Identical scores from Figure 5.1 and Figure 5.2. Yet, both the median and the average of the predetermined dataset are higher than the complete dataset. This still indicates the validity of this metric. The one statistic which may be unfavorable for the implementation of the Identical metric is the standard deviation. The standard deviation on the Identical metric is the only one where the predetermined analogy set value is larger than the complete dataset value. On the other hand, the as no Identical score can be calculated for every pair due to the mathematics, it may not be a completely useless metric. One aspect which was discussed previously is the thought that the Identical metric may be most useful when comparing sources with another metric, such as the Component and/or Disordered metric(s). 5.3.4 Component Analogy Metric The Component analogy metric is probably the most basic of the six as it only compares what functions are shared between two different function chains. The Component metric showed its worth when comparing the complete dataset to the predetermined analogies. The average metric score of the predetermined set was higher than the complete set. The median of the predetermined set was higher. The standard deviation was smaller. As mentioned in the previous section, the Component metric may be most useful with other metrics, however. The reason for this statement is the fact that within the predetermined analogy set, every time the Component metric score was in the top ten percent of the entire data set, the Identical and Disordered metric scores were also in the top 10 percent. This may be an indicator that when a 75 source pair scores high in these three metrics, that it is a stronger analogy than a pair which only scores high in one or two of these metrics. This is purely speculation at this point, as there is no other predetermined analogies which have only one or two of the top ten metrics to compare the predetermined analogies with three top ten metrics. 5.4 DAPPS A great deal of work has been done on the DAPPS project prior to Van Helsing. Most notably would be the research and development of the program DRACULA, by Dr. Lucero et al [7]. One of the next steps past the development of DRACULA was to develop a methodology with which DRACULA can be baselined and compared to other Design by Analogy methods and tools. Sisyphus has shown a strong ability during Van Helsing to be able to meet this need of the DAPPS project. This is not to say that the metric equations do not need to be improved upon before they can be implemented. They do show potential value. While not definitive, the average metric scores of the complete dataset and the predetermined analogies do show a likelihood that they can indicate if a pair of sources are analogies compared to random pairing. At the very least Sisyphus could be used to indicate whether the analogy matching algorithm used in DRACULA produces better, worse, or similar results to a random system. It is reasonable to say at this point in the process that Sisyphus may be able to show the value of the results from the DRACULA tool. Sisyphus has shown an ability to distinguish potentially stronger analogies from weaker ones. This is of great importance to the DAPPS project for the validation of DRACULA. The success Sisyphus has shown in Van Helsing can potentially be helpful in other ways to the DAPPS project. First, Sisyphus could potentially help steer the project towards being able to provide certain types of analogies. For example, Sisyphus may be able to guide future version of 76 the DRACULA algorithm to be able to find analogies more effectively or even by architectural classification. This could potentially be extremely helpful. In previous chapters, it was mentioned that novice design engineers typically do not have the experience to provide as useful analogies as an experienced design engineer. Furthermore, inverse analogies are believed to be exceptionally difficult to identify. If DRACULA can identify potential inverse analogies to the user, the analogy gap between the novice and experienced design engineers may become smaller. In addition to Sisyphus having the potential to guide the DAPPS project towards the goal of providing strong analogies through the use of graph theory and bond graphs, it is also possible that Sisyphus could become a useful search algorithm, either independently or in conjunction with DRACULA. One of the considerations with the DAPPS project is that a design engineer may be looking for an analogy for multiple reasons. These reasons include innovativeness or at the other end of the spectrum, purely trying to find feasible solution. In Chapter 4 the concept was introduced that the different metric may coincide with different design goals, such as innovativeness or ease of implementation. If a correlation were able to be made between one of the metrics and a type of design goal, DRACULA and Sisyphus may be able to work in conjunction in order to provide the user with even stronger analogies than DRACULA on its own. 5.5 Conclusion Van Helsing has advanced the overall goal of the DAPPS project. However, the question remains as to how exactly it has benefitted the project. Sisyphus has shown an ability to indicate the strength of two compared sources as potential analogies. With further analysis of Sisyphus, improvements to both DRACULA and Sisyphus may be in order to ensure that DAPPS is providing the best possible output. 77 CHAPTER 6 CONCLUSION This final chapter compiles the research performed of the course of the thesis. The key concepts are reinforced. The potential improvements to the system are also reiterated along with the potential ways forward. 6.1 Design-by Analogy Tools In previous chapters, three Design by Analogy tools were discussed: the WordTree method, AskNature.org, and MEMIC. The WordTree method and AskNature.org have similar limitations with regard to their linguistic natures. In addition to the linguistic aspects, both the WordTree method and the AskNature.org tool are based on the use of a single function and does not incorporate multiple functions or the manner in which multiple functions interact. The assessment of MEMIC, the tool provided by Oregon State University’s Design Lab, is a tool which looks both at multiple functions and the interaction between them. The tool is for concept generation. Given the depth of the repository of the OSU Design lab, it is easy to see how the repository has the potential to be used as a DbA tool as well as why Poppa used DbA as a primary topic for Vector Space Similarity Measures [32]. The DAPPS project assesses the gaps of the aforementioned design tools as well as incorporates other unique aspects. One of the goals of the project was to develop a method which would not be limited by the linguistics of various engineering domains but rather unify them. This was accomplished with the inclusion of Key Performance Parameters and placing these parameters in normalized units utilizing the Dimensional Analysis Theorem. 78 6.2 DRACULA The continuation of the development of the DRACULA analogy database and matching algorithm has been a primary focus. The most substantial improvement from the initial implementation of the tool has been the transition from a desktop run program into a resource available online. This transition has been a major milestone for the project and has several key benefits. First and foremost, the new availability will make the overall testing and validation of the tool a reality. With the tool available online, and the knowledge gained from the case study discussed in this thesis, the validation of the DAPPS method is a reality. Second, while it has not been explicitly discussed, the development of the maintenance tool for the online version of DRACULA enables the repository to be filled more efficiently as well as the overall maintenance. Third, the online version allows for more helpful features such as clickable links, photos and documents. The helpful features are not just for the users, but also for maintenance and funding aspects. The online aspect allows for data to be collected about searches to facilitate both maintenance and funding aspects. The final, and most important reason the transition to an online tool is beneficial is that it is now more available for use to aid design engineers. 6.3 Metrics The development of the metrics used for the validation of function matching has been a large role of both the DAPPS project and this thesis. To develop these metrics, it was first necessary to distinguish between various methods of comparing two function structures. While looking at function structures, it was noted that there is a distinction between the components and the architecture which are the functions contained within each set and the relationships between the functions in each set, respectively. It was soon apparent that in order to fully grasp the architectural comparison between two function sets, multiple characteristics would be necessary. 79 This is where identical, mirrored, disordered, mirror disordered, and unique function structure comparison types were developed. With these six metrics established, mathematical equations were generated in order to assign values to each comparative metric. Some of the equations are simple in nature but have established a baseline for which functions structure matching can be assessed. 6.4 Experiment Van Helsing The initial small scale experiment being pursued developed complication making it unable to be pursued within the scope of this thesis. In turn, a second experiment was developed and carried out. Van Helsing involved the development of Sisyphus to calculate the six defined metric scores associated with two function chains. The results from Van Helsing show that Sisyphus is meeting its design goal of being able to be used to rank the strength of possible analogies. More extensive verification is needed before Sisyphus can be used to make a statement about the value of the analogies generated from DRACULA. With more verification and possibly adjustments, the DAPPS project should be able to move forward with the development of DRACULA as a useful Design by Analogy tool. 6.5 Future Work With the completion of Van Helsing, there are several avenues with which the work could be taken further. Some of the options include the algorithm improvement, completion of the first experiment discussed in this thesis, and looking into multi-objective optimization. These potential ways forward for the DAPPS project are discussed herein. 6.5.1 The Future of Sisyphus Sisyphus has shown its potential to be able to distinguish stronger analogies from weaker ones in Van Helsing. Van Helsing was a good step towards the validation of the algorithm used 80 in DRACULA. More work is needed in order to verify the usefulness of Sisyphus. Particularly, the test should be expanded. If possible, more predetermined analogies should be found and included into the dataset. This would serve multiple purposes. First, adding predetermined analogies would serve in being able to prove the usefulness of Sisyphus. The set used in Van Helsing has already served this purpose. More predetermined analogies could strengthen the findings. It is also possible that a larger predetermined set could show that Sisyphus is not as useful as initially believed. Another addition to Sisyphus would be to add more linear function structures into the dataset. This could have multiple effects. First, this could continue to grow the baseline usage of Sisyphus. Similar to how more predetermined analogies could show either usefulness or faults in the program, so could an increase in the sources in the dataset. An additional benefit would be the possibility to see analogies that were not previously conceived. For example, during the analysis of the results from Sisyphus during Van Helsing, the paired sources with a Mirror metric score were looked at, but none were seen as analogical. Increasing the size of the dataset increases the likelihood that a Mirror analogy could be found. 6.5.1.1 Algorithm Improvement The algorithms behind DRACULA and Sisyphus both appear to be functional. DRACULA has been shown to provide potential analogies [7], but the usefulness of the provided analogies has yet to be tested. Sisyphus has shown an ability to highlight stronger analogies. Beyond these initial tests results, it is impossible to make a statement on the effectiveness of the algorithms. Dr. Lucero made did not anticipate that the initial algorithms implemented in DRACULA would be the algorithm to be used in a finished product. She understood that there would likely be room for improvement in the algorithm. The same can be said for Sisyphus. 81 The Mirror metric calculations are a perfect example, and with it, the Identical metric calculations. Since the theory behind both the Identical and the Mirror metrics is the same with the exception of the order of the functions within a function chain, if one is altered, so should the other. As the Identical metric has already shown potential, drastic changes should be avoided, however the Mirror metric statistics indicate that something should be changed. The proposed change would be for the equation to assess the most number of metrics in the desired order. Take the example in this Figure 6.1. Figure 6.1 Modified Metric Example Figure 6.1 is a modified version of the figure showing examples of the various different function structure comparisons, but will suit the purposes of this example. Currently the Disordered example would not get an Identical or Mirrored metric score when compared to the design problem. However, it is not completely out of order. The thought occurred to develop the algorithm to be able to count the maximum number of functions in a source being compared which occur in the same order as to the design problem. In the example shown in Figure 6.1, if the first chain is the design problem, the then second chain would have a perfect multiplier of 1, the second would have a small multiplier of ¼ and the third chain would have a multiplier of ¾ for the Identical metric. When comparing the first chain to the other chains in Figure 6.1 for the 82 Mirror metric, the first chain being compared would receive a multiplier of ¼, the second would receive the multiplier 1 and the third chain would receive a multiplier of 2/4 or ½. When assessing the third chain being compared, there are three out of four functions in the same order as the design problem while at most only two functions appear in the same order in the reverse order. The theory behind including this multiplier into the metrics has two parts. First, the inclusion of this multiplier could help show Mirrored or inverse function structures more effectively. It is reasonable to think that two function structures could be fundamentally inverse to each other in concept but due to the interpretation of the processes that the individuals who developed the function structures may have the same functions in a slightly different order. Another example would be two products which serve the same purpose, such as an electric can opener, but due to the design of each can opener the function structures are slightly different and with the current scoring system, one could be seen as an inverse analogy while the other is not. Situations such as these likely exist currently. It seems counter intuitive to not try to account for them. This approach would be similar to the proposed method by Caldwell et al. which involves pruning certain functions from a function chain to allow for proper comparisons to take place [50]. 6.5.1.2 Previous Experiments Two experiments were detailed in Chapter 4. The second, Van Helsing, was seen through to the end and the results were shared and discussed in previous chapters. The first experiment was ended before it could be completed for multiple reasons. The primary reason why the experiment was not taken to completion was due to problems with the development. As previously stated, there were inconsistencies with both the data provided as well as with 83 interpretation of the instructions for the experiment. While every complication which arose during the experiment could be solved, the resources required to adequately develop solutions were more than were available on the project at the time. These resources primarily included time and usable function structures. The deadline for completing the validation portion of the DAPPS project precluded the ability to pursue the experiment to the end once the complications arose. In addition, a larger set of functions structures with which potential analogies could be pulled from would help in the generation of proper datasets for the experiment. 6.5.1.3 Multi-Objective Optimization Optimization in engineering is not a foreign topic. Take a typical algebra course. Some assignments include the students finding the maximum or minimum of a function on a graph. In a calculus class, student might learn to find the maximum or minimum of a function using the derivative. The function could be as simple as f(x,y)=x^2+y^2 which creates the shape shown in Figure 6.2. These are examples of optimization. One growing field which is currently being explored which relates to the DAPPS project is Mulit-Objective Particle Swarm Optimization (MOPSO). In general, optimization problems often have more than one objective function and the objectives being optimized are normally in conflict with each other [51]. This means that no single solution is available for the problem. When this situation occurs, a “trade-off” solution is sought out which represents the best possible compromise to the objectives. In real life scenarios, the possible solutions to the functions may not make up a nice shape, such as Figure 6.2, but instead may be scattered around the domain of the solutions. In cases where solutions are scattered, it could be obvious that some of the solutions are not optimal while others create all of the best solutions available. This set of the 84 best available solutions is called the Pareto Front. A Pareto Front in two objective space can be seen in Figure 6.3. Figure 6.2 Figure 6.3 f(x,y) = x^2 + y^2 Two Objective Space Pareto Front [51] 85 Consider each of the defined analogy metrics to be a dimension. If a product were compared to every source in the dataset, and the scores plotted, the representation may look similar to that of Figure 6.3. It would then become possible to search for the “best” possible analogies based on which sources paired have the strongest overall scores. In addition to this, previously it was discussed that it was theorized that some of the metrics may coincide with various design goals. Since the Pareto Front shows the best “trade-off” positions in a dataset, an individual could specify how to trade off which metrics were more or less important in an effort to meet certain design goals. Even if the algorithms used by Sisyphus are not used, MOPSO could be used with DRACULA if multiple algorithms become important in order to be able to search for all possible analogy types. 6.5.2 Future Work Conclusion Sisyphus has established a baseline for the DAPPS project to be used with DRACULA. The full usefulness of Sisyphus has yet to be determined, however, once a definite conclusion is made, more work will need to be done to fully implement it. Once it is fully implemented there are several avenues with which the researchers of the DAPPS project can move forward both in the validation of DRACULA and in developing a useful DbA tool. 6.6 Broader Context There are several primary conclusions to be taken away from this thesis. The first is that application of Sisyphus. Sisyphus was originally developed as a method of doing individual function structure comparisons. It was later adapted to run Van Helsing. In Van Helsing, Sisyphus showed that the metrics can indicate a stronger analogy than random pairings. This is key as the metrics, and Sisyphus, can be used to validate DRACULA and indicate if the 86 analogies generated are stronger than random pairings, similar to the process used in Van Helsing. Next, Sisyphus can be used to explore new avenues of analogy retrieval, specifically, trying to accommodate for specific types of matches, such as a disordered pair. Lastly, it is possible that Sisyphus could itself be further developed into an analogy retrieval tool, similar to DRACULA or AskNature.org. 6.7 The DAPPS Design Statement The primary goals of the research detailed in this thesis were developing a method to validate the theory that analogy matching based on function flow, and performance leads to better analogy generation. Through the metrics incorporated in Sisyphus, function, flow and performance has been incorporated together via critical function chains. These metrics identify known analogies consistently near the top of the metric scores for one or more metrics. These scores are well-above the average of random pairwise scoring. Therefore, using these metrics leads to better analogy generation from DRACULA and Sisyphus. 6.8 Conclusion The DAPPS program has moved forward during the course of this thesis. There is no doubt that the research performed for this thesis will help build the foundation with which DRACULA can be validated and improved upon. With the help of Sisyphus, the individuals working on the DAPPS project should be able to reach the ultimate goal of providing a tool which utilizes graph theory and user-defined performance parameters to generate useful analogies with DRACULA. 87 REFERENCES CITED [1] L. L. Bucciarelli, Designing Engineers, Cambridge: MIT Press, 2000. [2] A. T. Purcell and J. S. Gero, "Design and other types of fixation," Design Studies, vol. 17, no. 4, pp. 363-383, 1996. [3] G. Pahl, W. Beitz, J. Feldhusen and K. H. Grote, Engineering Design: A Systematic Approach, Springer: 2007, 2007. [4] N. Cross, "Designerly ways of knowing: design discipline versus design science," Design Issues, vol. 17, no. 3, pp. 49-55, 2001. [5] B. T. Christensen and C. D. Schunn, "The relationship of analogical distnace to analogical function an preinventive structure: The case of engineering design," Memory and Cognition, vol. 35, no. 1, pp. 29-38, 2007. [6] L. J. Ball and N. J. M. Thomas C Ormerod, "Spontaneous analogising in engineering design: a comparative analysis of experts and novices," Design Studies, vol. 25, no. 5, pp. 495-508, 2004. [7] B. M. Lucero, "Design-Analogy Performance Parameter System (DAPPS)," Colorado School of Mines, Golden, 2014. [8] J. Hirtz, R. B. Stone, D. A. McAdams, S. Szykman and K. L. Wood, "A Functional Basis for Engineering Design: Reconciling and Evolving Previous Efforts," Research in Engineering Design, vol. 13, no. 2, pp. 65-82, 2002. [9] D. G. Jansson and S. M. Smith, "Design fixation," Design Studies, vol. 12, no. 1, pp. 3-11, 1991. [10] H. Casakin and G. Goldschmidt, "Expertise and the use of visual analogy: implications for design education," Design Studies, vol. 20, no. 2, pp. 153-175, 1999. [11] "AskNature.org," Biomimicry Institute, 2015. [Online]. Available: www.asknature.org/article/view/why_asknature. [Accessed September 2015]. [12] G. A. Miller, WordNet: A Lexical Database for English, Prinston: Communications of the ACM, 1995. [13] G. A. Miller, R. Beckwith, C. Fellbaum, D. Gross and K. Miller, "Introduction to WordNet: An On-line Lexical Database," International Journal of Lexicography, vol. 3, no. 4, pp. 235-244, 1990. 88 [14] T. Pedersen, S. Patwardhan and J. Michelizzi, "WordNet::Similarity Measuring the Relatedness of Concepts," in HLT-NAACL--Demonstrations '04 Demonstration Papers at HLT-NAACL 2004, Stroudsburg, 2004. [15] "About WordNet," Princeton University, 2010. [Online]. Available: http://wordnet.princeton.edu. [16] D. G. Ullman, The Mechanical Design Process, New York: The McGrawHill Companies, Inc., 2010. [17] K. Otto and K. Wood, Product Design: Techniques in Reverse Engineering and New Product Development, Upper Saddle River: Prentice Hall, 2000. [18] A. Kossiakoff and S. S. S. M. B. William N. Sweet, Systems Engineering Principles and practice, Hoboken: John Wiley & Sons, Inc., 2011. [19] R. B. Stone and K. L. Wood, "Development of a Functional Basis for Design," Journal of Mechanical Design, vol. 122, no. 4, pp. 359-370, 2000. [20] Y. A. Çengal and M. A. Boles, Thermodynamics: An Engineering Approach, New York: The McGraw-Hill Companies, Inc., 2002. [21] D. A. McAdams and K. L. Wood, "A Quantitative Similarity Metric for Design-by-Analogy," Journal of Mechanical Design, vol. 124, no. 2, pp. 173-182, 2002. [22] S. B. Hazez, "Linguistic Pattern-Matching with Contextual Constraint Rules," Systems, Mand and Cybernetics, vol. 2, pp. 971-976, 2001. [23] M. R. Bohm, R. L. Nagel and M. L. Shirley, "A Tablet Based Application for Teaching Function and Exploring Concept Alternatives During Early Design," in ASME 2012 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, Chicago, 2012. [24] J. Hey, J. Linsey, A. M. Agogino and K. L. Wood, "Analogies and Metaphors in Creative Design," International Journal of Engineering Education, vol. 24, no. 2, pp. 283-294, 2008. [25] I. Chiu and L. H. Shu, "Natural Language Analysis for Biomimetic Design," in ASME 2004 Design Engineering Technical Conference and Computers and Information in Engineering Conference, Salt Lake City, 2004. [26] P. Ngo, V. Viswanathan, C. J. Turner and J. Linsey, "Initial Steps Toward an Analogy Retrieval Tool Based on Performance Specification," in ASME 2013 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, Portland, 2013. 89 [27] J. S. Linsey, A. B. Markman and K. L. Wood, "Design by Analogy: a Study of the WordTree Method for Problem Re-Representation," Journal of Mechanical Design, vol. 134, no. 4, 2012. [28] J. S. Linsey, K. L. Wood and a. A. B. Markman, "Modality and Representation in Analogy," Artificial Intelligence for Engineering Design, Analysis, and Manufacturing, vol. 22, no. 2, pp. 85-100, 2008. [29] Biomimicry Group Inc., "Biomimicry 3.8," [Online]. Available: http://biomimicry.net. [Accessed September 2015]. [30] AskNature.org, "Biomimicry Taxonomy," 2013. [Online]. Available: http://static.biomimicry.org/asknature/biomimicry_taxonomy-v6.0.pdf. [Accessed September 2013]. [31] "Sticky Proteins Serve as Glue: Blue Mussel," AskNature.org. [Online]. [Accessed 28 September 2015]. [32] K. R. Poppa, "Theory and Application of Vector Space Similarity Measures in Computer Assisted Conceptual Design," Oregon State University, 2001. [33] "Design Engineering Lab: Design Repository," Oregon State University, 2015. [Online]. Available: http://design.engr.oregonstate.edu/repo. [Accessed 28 12 2015]. [34] "Design Engineering Lab Repository," Oregon State University, [Online]. Available: http://function2.mime.oregonstate.edu:8080/view/options.jsp. [Accessed 5 Ocotober 2015]. [35] F. M. White, Fluid Mechanics, New York: The McGraw-Hill Companies, Inc., 2011. [36] E. Coatané, Conceptual modelling of life cycle design : a modelling and evaluation method based on analogies and dimensionless numbers, Helsinki University of Technology, 2005. [37] B. Lucero, V. K. Viswanathan, J. S. Linsey and C. J. Turner, "Identifying Critical Functions for Use Across Engineering Design Domains," Journal of Mechanical Design, vol. 136, no. 12, 2015. [38] B. W. Caldwell, C. Sen, G. M. Mocko and J. D. Summers, "An Empirical Study of the Expressiveness of the Functional Basis," Artificial Intelligence for Engineering Design, Analysis and Manufactureing, vol. 25, no. Special Issue 03, pp. 273-287, 2011. [39] M. R. Bohm, R. B. Stone and S. Szykman, "Enhancing Virtual Product Representations for Advanced Design Repository Systems," Journal of Computing and Information Science in Engineering, vol. 5, no. 4, pp. 360-372, 2005. 90 [40] D. C. Karnopp, D. L. Margolis and R. C. Rosenberg, System Dynamics: A Unified Approach, Wiley, 1990. [41] D. C. Karnopp, D. L. Margolis and R. C. Rosenberg, System Dynamics: Modeling, Simulation, and Control of Mechatronic Systems, Wiley, 2012. [42] W. Borutzky, Bond Graph Methodology: Development and Analysis fo Multidisciplinary Dynamic System Models, Springer, 2010. [43] J. S. Linsey, K. L. Wood and A. B. Marman, "Increasing Innovation: Presentation and Evaluation fo the WordTree Design-by-Analagy Method," ASME 2008 International Design Engineering Technical Converences and Computers and Information in Engineering Conference, pp. 21-32, 2008. [44] K. Fu, J. Chan, J. Cagan, K. Kotovsky, C. Schunn and K. Wood, "The Meaning of "Near" and "Far": the Impact of Structuring Design Databases and the Effect of Distance of Analogy on Design Output," Journal of Mechanical Design, vol. 135, no. 2, 2013. [45] R. Lopez, "Characterizing the effects of Noise and Domain Distance in Analogous Design," May 2011. [Online]. Available: http://oaktrust.library.tamu.edu/bitstream/handle/1969.1/ETD-TAMU-2011-059510/LOPEZ-THESIS.pdf. [Accessed September 2015]. [46] R. Lopez, J. S. Linsey and S. M. Smith, "Characterizing the Effect of Domain Distance in Design-by-Analogy," ASME 2011 International Design Engineering Technical Converences and Computers and Information in Engineering Converence, vol. 9, pp. 141-151, 2011. [47] M. W. Glier, D. A. McAdams and J. S. Linsey, "An Experimental Investigation of Analogy Formation Using the Engineering-to-Biology Thesaurus," in ASME, Portland, 2013. [48] T. Harris, "How Nail Gus Work," 3 September 2001. [Online]. Available: http://home.howstuffworks.com/nail-gun.htm. [Accessed 1 April 2016]. [49] T. Ward, "Structured Imagination: the Role of Category STructure in Exemplar Generation," Cognitive Psycology, vol. 27, no. 1, pp. 1-40, 1994. [50] B. W. Caldwell and G. M. Mocko, "Validation of Function Pruning Rules Through Similarity at Three Levels of Abstraction," Journal of Mechanical Design, vol. 134, no. 4, 2012. [51] M. Reyes-Sierra and C. A. C. Coello, "Multi-Objective Particle Swarm Optimizers: A Survey of the State-of-the-Art," International Journal of Computational Intelligence Research, vol. 2, no. 3, pp. 287-308, 2006. 91 [52] D. G. Ullman, The Mechanical Design Process, McGraw-Hill Science/Engineering/Math, 2002. 92 APPENDIX A DRACULA PSEUDO CODE Match Units Pseudo Code Data: user –selected engineering parameter (EP) Data: minimum of one, maximum of three critical functions (CF1, CF2, CF3) Data: list of bond graph type vectors corresponding to the critical functions (BG) Data: list of possible parameter vectors (PV) Result: list of parameter vector combinations which equal EP For every PV(i) If BG of PV(i) is compatible with CF1 If PF(i)==EP Append PV(i) to results vector End Else Continue End If CF2!=0 For every PV(j) If BG of PV(j) is compatible with CF2 If PF(j)==EP Append PV(j) to results vector End Else Continue End End If CF3!=0 For every PV(k) If BG of PV(k) is compatible with CF3 If PF(k)==EP Append PV(k) to results vector End Else Continue End End End End End 93 Find Best Analogy Pseudo Code Data: List of analogies, each of which is a list of function chains (LA) Data: List of function chains computed using “Match Units” (LC) Result: Index of best analogy in the input list For every LA(i,:) For every LA(:,j) For every LC(k) Score = scoreChainPair(LA(i,j) , LC(k)) If score > maxScore maxScore = score maxIdx = i End End Else End Return maxIdx 94 APPENDIX B SISYPHUS PSEUDO CODE Component Pseudo Code Data: Problem input function chain (p) Data: Source input function chain (s) Result: Component metric score (Mcon) I = the intersection of (p,s) Mcon = 2 * number of functions shared / ( size ( p ) + size ( s )) return Mcon Identical Architecture Pseudo Code Data: Problem input function chain (p) Data: Source input function chain (s) Result: Identical architecture metric score (MArchI) Ip=intersect(p,s) without changing the order of ( p ) Is=intersect(s,p) without changing the order of ( s ) Il=size(Ip,1) the number of common functions ps=size(p,1) original size of input problem chain ss=size(s,1) original size of source chain orders=zeros(Il,1) used to establish function chain order of (s) orderp=zeros(Il,1) used to establish function chain order of (s) count=0 the number of functions in order MArchI=0 Initial Identical Architecture metric value. for i=1:Il orderp(i)=i; end for i=1:Il for j=1:Il if function Ip(i) = function Is(j) orders(j)=i; end end end for i=1:Il if orders(i)<=orderp(i) 95 count=count+1; end end if count==Il MArchI=(2*Il/(ps+ss)); end return MArchI Mirror Architecture Pseudo Code Data: Problem input function chain (p) Data: Source input function chain (s) Result: Mirror architecture metric score (MArchM) Ip=intersect(p,s) without changing the order of ( p ) Is=intersect(s,p) without changing the order of ( s ) Il=size(Ip,1) the number of common functions ps=size(p,1) original size of input problem chain ss=size(s,1) original size of source chain orders=zeros(Il,1) used to establish function chain order of (s) orderp=zeros(Il,1) used to establish function chain order of (s) count=0 the number of functions in order MArchM=0 Initial Mirror Architecture metric value. for i=1:Il orderp(i)=i; end for i=1:Il for j=1:Il if function Ip(i) = function Is(j) orders(Il-j+1)=i; end end end for i=1:Il if orders(i)<=orderp(i) count=count+1; end end if count==Il MArchM=(2*Il/(ps+ss)); 96 End return MArchM Disordered Architecture Pseudo Code Data: Problem input function chain (p) Data: Source input function chain (s) Result: Mirror architecture metric score (MArchD) Ip=intersect(p,s) without changing the order of ( p ) Is=intersect(s,p) without changing the order of ( s ) Il=size(Ip,1) the number of common functions orders=zeros(Il,1) used to establish function chain order of (s) orderp=zeros(Il,1) used to establish function chain order of (s) count=0 the number of functions in order MArchD=0 Initial Disorderd Architecture metric value. for i=1:Il orderp(i)=i; end for i=1:Il for j=1:Il if function Ip(i) = function Is(j) orders(j)=i; end end end for i=1:Il for j = 1:Il if orders(i)=orderp(j) count(i) = (Il – abs(i-j)) / Il end end end MArchD = sum( count ) / Il return MArchD Mirror Disordered Architecture Pseudo Code 97 Data: Problem input function chain (p) Data: Source input function chain (s) Result: Mirror architecture metric score (MArchD) Ip=intersect(p,s) without changing the order of ( p ) Is=intersect(s,p) without changing the order of ( s ) Il=size(Ip,1) the number of common functions orders=zeros(Il,1) used to establish function chain order of (s) orderp=zeros(Il,1) used to establish function chain order of (s) count=0 the number of functions in order MArchMD=0 Initial Mirror Disorderd Architecture metric value. for i=1:Il orderp(i)=i; end for i=1:Il for j=1:Il if function Ip(i) = function Is(j) orders(j)=i; end end end for i=1:Il for j = 1:Il if orders(i)=orderp(IL – j + 1) count(i) = (Il – abs(i-j)) / Il end end end MArchMD = sum( count ) / Il return MArchMD Function Snipping Pseudo Code Data: Problem input function chain (p) Data: Source input function chain (s) Result: Snipped function (snip) I=intersect(s,p) without changing the order of ( s ) Il=size(Is,1) the number of common functions ss= the number of original functions in chain ( s ) 98 for i=1:ss if function i of (s) is the first common function Il(1) start = i end if function i of (s) is the last common function Il(1) fin = i end end snip = functions s(start) through s(fin) return snip Metric Calculation Call Function Pseudo Code Data: Problem input function chain (p) Data: Source input function chain (s) Result: 6x2 cell with 6 labels and 6 metric values (MV) Remove repeat functions in (p) Remove repeat functions in (s) If the intersection of p & s = 0, All metrics = 0 Else snip = snipped source function If the intersection of p & s >=2 MV(1) = commonfunctions(p,snip) MV(2) = ArchIdentical(p,snip) MV(3) = ArchMirror(p,snip) MV(4) = ArchDis(p,snip) MV(5) = ArchMirDis(p,snip) MV(6) = (2 – MV(4) – MV(5))/2 Else MV(1) = commonfunctions(p,snip) MV(2-6) = 0 End End return MV Sisyphus Program Pseudo Code 99 Data: Product function chains (P) Data: Predetermined Analogy List (A) Result: All possible combinations of 2 product comparisons from P (dataset) Result: Predetermined Analogy comparisons (analogies) n = number of product function chains count = 1 counta = 1 For all P(i), where i = [1,n] For all P(j), where j = [i+1, n] dataset(count) = MetricV(P(i),P(j)) End End For all L analogies(count) = MetricV(L) end calculate average and standard deviation of each metric in dataset calculate average and standard deviation of each metric in analogies display boxplot of dataset display boxplot of analogies export dataset export analogies 100 APPENDIX C SUPPLEMENTAL ELECTRONIC FILES Appendix C contains all necessary files to be able to perform the experiments detailed in this thesis. The files are organized into three parts. The first is the files used in the preliminary experiment and the results. The second part contains the files, source code, and results of the second experiment performed. The third part is the source code for Sisyphus and functions generated for Sisyphus. Preliminary Experiment Files Analogies V6.vsdx Directions V6.docx Results Subject 1.vsdx Results Subject 2.pdf Van Helsing Files Function Structures.vsdx Sisyphyus Data.xlsx Sisyphus Files ArchDis.m ArchIdentical.m ArchMirDis.m These are the files used and generated from the preliminary experiment discussed in the thesis. Visio file containing the analogies used in the preliminary experiment. Document file containing the directions and questions for the preliminary experiment Visio file containing all the answers from Subject 1 in .jpg form for the preliminary experiment. PDF file containing the results of Subject 2 for the preliminary experiment. These are the files used for the Van Helsing experiment detailed in this thesis. Visio file containing the function structures used in the Van Helsing experiment. Excel file containing data from two different runs of the Van Helsing experiment, each of which has two tabs. The second experiment contains everything from the first. These are the MATLAB source code files for the operation of Sisyphus MATLAB function which calculates the disordered architecture metric. MATLAB function which calculates the identical architecture metric. MATLAB function which calculates the mirror disordered architecture metric. 101 ArchMirror.m MATLAB function which calculates the mirror architecture metric. Commonfunctions.m MATLAB function which calculates the component metric. MetricV.m MATLAB function which call all metric function and outputs a cell containing all calculated metric values for one comparison. Sisyphus.m MATLAB function which calculates 100’s of pairwise combinations, statistical data, and output text files. SnipS.m MATLAB function which removes unnecessary functions at the beginning or end of chains. 102
© Copyright 2026 Paperzz