Professional Documents
Culture Documents
Departamento de Ingeniería de
Sistemas Industriales y Diseño
Presentada por:
Dioclécio Moreira Camelo
Dirigida por:
Dra. Mª Rosario Vidal Nadal
Dra. Elena Mulet Escrig
DOCTORAL
T E S I S
Castellón, 2007
UNIVERSITAT JAUME I
Departamento de Ingeniería de
Sistemas Industriales y Diseño
TESIS DOCTORAL
Presentada por:
Dioclécio Moreira Camelo
Dirigida por:
Dra. Mª Rosario Vidal Nadal
Dra. Elena Mulet Escrig
Castellón, 2007
Agradecimientos
Este trabajo es una suma de esfuerzos en diversos sentidos, las personas que me
han ayudado a su propia manera están presentes en él.
Una mención especial a Elena Mulet y a Sergio Martí por su incondicional apoyo y
su calidad humana.
i
KIEF Knowledge Intensive Engineering Framework
MA Microsoft Access
MPM Matrix Parametric of Movement
MRM Movement Restriction Matrix
MTM Motion Transformation Matrix
NOA Natural Optimization Algorithm
ODBC Open Database Connectivity
QHA Qualitative and Heuristic Approach
SISO Single Input and Single Output
SQL Structures Query Language
TFMF Two-stage Functional Modeling Framework
UG Universidad de Gerona
UJI Universitat Jaume I
UPC Universidad Politécnica de Cataluña
vmCOGA Variable Mutation Cluster-oriented Genetic Algorithm
ii
Simbología
Símbolo Descripción Página
bk Behaviour (comportamiento) 80
B:k Behaviour (comportamiento) 111
sl Structure (estructura) 83
iii
Índice
1 Introducción ...................................................................................................... 1
1.1 Hipótesis ....................................................................................................... 4
1.2 Objetivos ....................................................................................................... 4
1.3 Metodología ................................................................................................... 4
1.4 Estructura de la tesis ....................................................................................... 6
2 Antecedentes de los modelos funcionales de síntesis .............................................. 7
2.1 Tipos de diseño .............................................................................................. 9
2.2 El proceso de diseño ....................................................................................... 9
2.2.1 Etapas del proceso de diseño................................................................... 9
2.2.2 Síntesis y análisis................................................................................... 9
2.3 Modelos computacionales para la síntesis ........................................................12
2.3.1 Modelos que sintetizan por medio del árbol de funciones (function-means
tree) 13
2.3.1.1 Heuristic State-space Approach (HSA)...........................................13
2.3.1.2 Two-stage Functional Modeling Framework (TFMF) .......................14
2.3.1.3 Functional Design Software System (FuncDesigner)........................15
2.3.1.4 C-K Design Theory (CKDT)...........................................................15
2.3.1.5 Hierarchical Co-Evolutionary Approach to Conceptual Design
(HiCED) 16
2.3.2 Modelos que sintetizan por medio de las relaciones entre las entradas y las
salidas 16
2.3.2.1 Schematic Synthesis (SS)..............................................................16
2.3.2.2 Interaction-based Design (Ibis) ....................................................16
2.3.2.3 Kinematic Building-Blocks (KBB) .................................................17
2.3.2.4 Functional Synthesizer for Input Output Networks (FuncSION)........17
2.3.2.5 Qualitative and Heuristic Approach (QHA) .....................................17
2.3.2.6 Automatic Design by Configuration Space (ADCS)...........................18
2.3.2.7 Método de Bruno, Giampà, Muzzupappa y Rizzuti ............................18
2.3.3 Modelos que sintetizan por medio de la relación entre causa y efecto..........18
v
2.3.3.1 Schemebuilder ........................................................................... 18
2.3.3.2 Dialog-oriented Intelligent CAD (DIICAD) ................................... 19
2.3.3.3 Modelo de Zavbi y Duhovnik......................................................... 19
2.3.4 Modelos que sintetizan por medio de las relaciones entre las características:
Initial Design Selection (IDS)............................................................................. 20
2.3.5 Modelos que sintetizan por medio de agentes.......................................... 20
2.3.6 Modelos que sintetizan por medio de las redes neuronales: Function-based
design synthesis (FBDS) .....................................................................................21
2.3.7 Modelos que sintetizan por medio de abducción: Knowledge Intensive
Engineering Framework (KIEF).......................................................................... 22
2.3.8 Modelos que sintetizan por medio de algoritmos evolutivos...................... 22
2.3.8.1 Genetic Algorithm Designer (GADES)........................................... 22
2.3.8.2 Interactive Evolutionary Design System (IEDS).............................. 22
2.3.8.3 Autogenetic Design Theory (ADT)................................................. 23
2.4 Conclusiones del capítulo.......................................................................... 23
3 Análisis de la representación del conocimiento y de los métodos de evaluación en los
modelos de síntesis .................................................................................................... 25
3.1 Análisis de la representación del conocimiento para la síntesis.......................... 27
3.1.1 Función, comportamiento y estructura (FBS).......................................... 27
3.1.2 Estado del arte de la representación FBS en modelos funcionales de síntesis
28
3.1.2.1 Representación del conocimiento en el modelo Schematic Synthesis
(SS) 29
3.1.2.2 Representación del conocimiento en el modelo Interaction-based
design (Ibis)................................................................................................. 30
3.1.2.3 Representación del conocimiento en el modelo Initial Design
Selection (IDS)..............................................................................................31
3.1.2.4 Representación del conocimiento en el modelo Kinematic Building
Blocks (KBB) ................................................................................................ 32
3.1.2.5 Representación del conocimiento en el modelo Qualitative and
Heuristic Approach (QHA)............................................................................. 33
3.1.2.6 Representación del conocimiento en el modelo Schemebuilder ....... 34
3.1.2.7 Representación del conocimiento en el modelo A-Design ............... 35
vi
3.1.2.8 Representación del conocimiento en el modelo DiiCAD.................. 36
3.1.2.9 Representación del conocimiento en el modelo Automatic Design by
Configuration Space (ADCS)...........................................................................37
3.1.2.10 Representación del conocimiento en el modelo Genetic Algorithm
Designer (GADES)........................................................................................ 38
3.1.2.11 Representación del conocimiento en el modelo FuncSION.............. 39
3.1.2.12 Representación del conocimiento en el algoritmo de Zavbi.............. 40
3.1.2.13 Representación del conocimiento en el modelo Interactive
Evolutionary Design System (IEDS).................................................................41
3.1.2.14 Representación del conocimiento en el modelo Knowledge Intensive
Engineering Framework (KIEF) ......................................................................41
3.1.2.15 Representación del conocimiento en el método de Bruno, Giampà,
Muzzupappa y Rizzuti .................................................................................... 42
3.1.2.16 Representación del conocimiento en el modelo Autogenetic Design
Theory (ADT) ............................................................................................... 43
3.1.2.17 Representación del conocimiento en el modelo Heuristic State-Space
Approach (HSA) ........................................................................................... 44
3.1.2.18 Representación del conocimiento en el modelo Two-stage Functional
Modeling Framework (TFMF)........................................................................ 45
3.1.2.19 Representación del conocimiento en el modelo Funcdesigner ......... 47
3.1.2.20 Representación del conocimiento en el modelo C-K Design Theory
(CKDT) 48
3.1.2.21 Representación del conocimiento en el modelo Hierachical Co-
evolutionary approach to conceptual Design (HiCED)....................................... 48
3.1.2.22 Representación del conocimiento en el modelo Function-based
Design Synthesis Approach (FDSA) ................................................................ 49
3.1.3 Resumen de la representación del conocimiento en los modelos de síntesis50
3.2 Análisis de los métodos de soporte a la decisión ............................................... 50
3.2.1 Modelos de resolución funcional analizados ........................................... 50
3.2.2 Clasificación de los modelos de evaluación ............................................. 52
3.2.3 Objeto de la evaluación ......................................................................... 53
3.2.4 Dominio del diseño.............................................................................. 53
3.2.5 Métodos para convergencia de funciones.................................................55
3.2.5.1 Métodos basados en reglas ............................................................55
vii
3.2.5.2 Métodos heurísticos .................................................................... 57
3.2.5.3 Algoritmos evolutivos .................................................................. 58
3.2.5.4 Mejor cumplimiento de las especificaciones .................................. 58
3.2.6 Criterios y su importancia en la evaluación de alternativas........................ 58
3.2.6.1 Especificaciones de proyecto........................................................ 59
3.2.6.2 Aspectos cinemáticos ..................................................................60
3.2.7 Valor de las alternativas sobre los criterios ............................................. 61
3.2.7.1 Simulación ................................................................................. 61
3.2.7.2 Función de uso............................................................................ 62
3.2.7.3 Método fuzzy .............................................................................. 62
3.2.8 Métodos de soporte a la decisión (evaluación de alternativas) ................... 63
3.2.8.1 Mono-criterio ............................................................................ 65
3.2.8.2 Algoritmos evolutivos .................................................................. 65
3.2.8.3 Suma ponderada .........................................................................66
3.2.8.4 Valor agregado ............................................................................66
3.2.8.5 Método heurístico ....................................................................... 67
3.2.8.6 Optimización por Pareto .............................................................. 67
3.2.8.7 Deducción.................................................................................. 68
3.3 Conclusiones del capítulo .............................................................................. 68
4 Propuesta del modelo funcional de síntesis...........................................................71
4.1 Funciones de propósito ................................................................................. 73
4.1.1 Simplificación simbólica ...................................................................... 75
4.2 Función de acción .................................................................................... 75
4.2.1 Simplificación simbólica .......................................................................77
4.3 Comportamiento .......................................................................................77
4.3.1 Simplificación simbólica y gráfica..........................................................80
4.4 Estructuras .............................................................................................. 81
4.4.1 Simplificación simbólica y gráfica.......................................................... 83
4.5 Entradas del entorno o flujos externos ........................................................ 84
4.5.1 Simplificación gráfica y simbólica.......................................................... 84
viii
4.6 Relación entre los niveles.......................................................................... 85
4.6.1 Visión general de las relaciones............................................................. 85
4.6.2 Relaciones con la función de propósito .................................................. 86
4.6.2.1 Relación función de propósito – función de acción ......................... 88
4.6.2.2 Relación función de propósito – comportamiento/estructura .......... 89
4.6.2.3 Relación función de propósito - función de propósito..................... 89
4.6.3 Relaciones con la función de Acción....................................................... 90
4.6.3.1 Relación de función de acción – entradas del entorno ......................91
4.6.3.2 Relación de función de acción-función de acción ........................... 92
4.6.3.3 Relación de función de acción-comportamiento/estructura ............ 93
4.6.4 Relaciones con el comportamiento ........................................................ 95
4.6.4.1 Relación comportamiento-comportamiento.................................. 96
4.6.4.2 Relación comportamiento-entrada del entorno y comportamiento-
función de acción.......................................................................................... 97
4.6.4.3 Relación comportamiento-estructura ........................................... 99
4.6.5 Relaciones con la estructura .................................................................. 99
4.6.6 Relaciones con la entrada del entorno ................................................... 101
4.7 Procedimientos de síntesis de alternativas................................................. 101
5 Implementación del modelo propuesto ..............................................................105
5.1 Introducción ...............................................................................................107
5.1.1 Lenguaje y arquitectura de implementación...........................................107
5.1.2 Exploración y captura por medio de las capas de implementación ............108
5.2 Capa de interfaz ...........................................................................................109
5.2.1 Ventana principal ...............................................................................109
5.2.2 Diagramas...........................................................................................111
5.2.3 Ventana de apoyo ................................................................................ 112
5.2.3.1 Ventanas para el nivel de función de propósito.............................. 112
5.2.3.2 Ventanas para el nivel de función de acción .................................. 114
5.2.3.3 Ventanas para el nivel de comportamiento.................................... 116
5.2.3.4 Ventana para el nivel de estructuras .............................................120
ix
5.2.3.5 Ventanas para el nivel de entradas del entorno ..............................122
5.2.4 Menús emergentes..............................................................................124
5.2.4.1 Describir un problema de diseño................................................. 125
5.2.4.2 Explorar a partir de las funciones de propósito.............................. 125
5.2.4.3 Explorar a partir de las funciones de acción...................................126
5.2.4.4 Explorar a partir de los comportamientos .....................................128
5.2.4.5 Exploración a partir de las estructuras ..........................................130
5.2.4.6 Explorar a partir de las entradas del entorno .................................130
5.2.4.7 Capturar el conocimiento con ayuda de los menús .........................130
5.3 Capa de aplicación .......................................................................................132
5.3.1 Exploración por medio de la capa de aplicación ......................................133
5.3.2 Captura por medio de la capa de aplicación ............................................134
5.3.3 Clases principales ...............................................................................136
5.3.3.1 Clase para el control de las alternativas.........................................136
5.3.3.2 Clase de funciones de propósito................................................... 137
5.3.3.3 Clase de funciones de acción .......................................................138
5.3.3.4 Clase de comportamientos ..........................................................138
5.3.3.5 Clase de estados .........................................................................139
5.3.3.6 Clase de estructuras................................................................... 140
5.3.3.7 Clase de entradas del entorno..................................................... 140
5.4 Capa de comunicación con el banco de datos .............................................. 141
5.4.1 Explorar por medio de la capa de comunicación con el banco de datos ...... 141
5.4.2 Relación entre los niveles de abstracción...............................................142
5.4.3 Captura del conocimiento por medio de la capa de comunicación con el
banco de datos .................................................................................................143
5.5 Capa de banco de dados ............................................................................... 144
5.5.1 Recursos utilizados............................................................................. 144
5.5.2 Estructura del conocimiento en el banco de datos.................................. 144
6 Ejemplo de aplicación y evaluación del modelo....................................................147
6.1 Definición del problema.............................................................................. 149
x
6.2 Aplicación del modelo de síntesis al caso de estudio....................................149
6.2.1 Formación de alternativas....................................................................150
6.2.2 Alternativas generadas ........................................................................170
6.3 Evaluación del modelo ............................................................................. 173
7 Conclusiones y trabajos futuros ......................................................................... 175
Referencias .............................................................................................................. 181
Apéndice 1................................................................................................................193
Apéndice 2 ...............................................................................................................199
Apéndice 3 .............................................................................................................. 203
xi
Índice de figuras
Figura 1 - Metodología de investigación para el diseño propuesto por Blessing y Chakrabarti
(Blessing, Chakrabarti et al. 1995; Blessing y Chakrabarti 2002). ............................. 6
Figura 2 – Modelo de Cross (Cross 1994). ..................................................................... 10
Figura 3 - Etapas del proceso de diseño según Campbell (Campbell, Cagan et al. 2003). ..... 11
Figura 4 - Algoritmo de resolución del Heuristic State-space Approach (Zhang, Tor et al.
2002b)..............................................................................................................14
Figura 5 – La teoría C-K Design (Hatchuel, Masson et al. 2004) .......................................15
Figura 6 - Algoritmo de resolución del modelo DIICAD (Lossack, Umeda et al. 1998) ........19
Figura 7 - Algoritmo de resolución del modelo A-Design (Campbell, Cagan et al. 1998a) ....21
Figura 8 – Semántica y sintaxis del conocimiento en el modelo SS. .................................. 30
Figura 9 - Semántica y sintaxis del conocimiento en el modelo Ibis. .................................31
Figura 10 - Semántica y sintaxis del conocimiento en el modelo IDS................................ 32
Figura 11 - Función y comportamiento según el modelo KBB (Kota y Chiou 1992). ............ 32
Figura 12 - Semántica y sintaxis del conocimiento en el modelo KBB. .............................. 33
Figura 13 - Semántica y sintaxis del conocimiento en el modelo QHA. ............................. 34
Figura 14 - Semántica y sintaxis del conocimiento en el modelo Schemebuilder. .............. 35
Figura 15 - Ejemplo de función en el modelo A-Design (Campbell, Cagan et al. 2003)....... 35
Figura 16 - Semántica y sintaxis del conocimiento en el modelo A-Design. ...................... 36
Figura 17 - Semántica y sintaxis del conocimiento en el modelo DiiCAD. ..........................37
Figura 18 - Semántica y sintaxis del conocimiento en el modelo ADCS............................. 38
Figura 19 - Estructuras primitivas representadas en el modelo GADES (Bentley y Wakefield
1996). .............................................................................................................. 38
Figura 20 - Semántica y sintaxis del conocimiento en el modelo GADES. ......................... 39
Figura 21 – Semántica y sintaxis del conocimiento en el modelo FuncSION. ..................... 40
Figura 22 - Semántica y sintaxis del conocimiento en el algoritmo de Zavbi. ..................... 40
Figura 23 - Semántica y sintaxis del conocimiento en el modelo IEDS...............................41
Figura 24 - Semántica y sintaxis del conocimiento en el modelo KIEF.............................. 42
Figura 25 - Semántica y sintaxis del conocimiento en el método de Bruno. ....................... 43
Figura 26 - Semántica y sintaxis del conocimiento en el modelo ADT. ............................. 43
xiii
Figura 27 - Semántica y sintaxis del conocimiento en el modelo HSA ............................... 45
Figura 28 - Funciones y comportamiento según la representación FBS de Deng (Deng 2002).
........................................................................................................................46
Figura 29 - Semántica y sintaxis del conocimiento en el modelo TFMF. ........................... 47
Figura 30 - Semántica y sintaxis del conocimiento en el modelo FuncDesigner................. 48
Figura 31 - Semántica y sintaxis del conocimiento en el modelo HiCED. ..........................49
Figura 32 - Semántica y sintaxis del conocimiento en el modelo FDSA. ............................49
Figura 33 - Cuadro comparativo con las formas en que los modelos de síntesis representan el
conocimiento de diseño. .....................................................................................51
Figura 34 - Diagrama de los modelos que evalúan las funciones. ..................................... 56
Figura 35 - Comparación entre criterios en el modelo IEDS............................................ 59
Figura 36 - Tipos de evaluación de alternativas.............................................................. 63
Figura 37 - Grupos de modelos que evalúan las alternativas............................................. 65
Figura 38 – Diagrama de Pareto, buenos y malos diseños en el modelo A-Design (Campbell,
Cagan et al. 1999) .............................................................................................. 68
Figura 39 – Simplificación del modelo de representación propuesto................................ 74
Figura 40 - Simplificación simbólica de la función de propósito. .................................... 75
Figura 41 - Simplificación simbólica de la función de acción............................................77
Figura 42 - Cadena (a) y red de estados (b) manifestados en un comportamiento. ............. 79
Figura 43 – Ejemplo de una cadena de estados en un comportamiento. ............................ 79
Figura 44 - Simplificación gráfica del comportamiento y combinación de comportamiento a
partir de una función de acción...........................................................................80
Figura 45 – Simplificación de una estructura en datos informáticos................................. 83
Figura 46 - Simplificación gráfica (a) y organización de las estructuras en cadena o red (b).
........................................................................................................................ 83
Figura 47 - Simplificación gráfica de las entradas del entorno y combinación de entradas del
entorno a partir de una función de acción y comportamiento. ................................ 85
Figura 48 - Convergencia en el proceso de exploración. ................................................. 85
Figura 49 - Visión general de las relaciones en el modelo de representación. ................... 86
Figura 50 - Relación existentes a partir de la función de propósito................................... 87
Figura 51 - Formación de cadena (a) o red (b,c) de funciones de acción a partir de una
función de propósito.......................................................................................... 89
Figura 52 - Descomposición funcional a través de los operadores lógicos AND y OR. .........90
xiv
Figura 53 - Relaciones existentes a partir de la función de acción. ....................................91
Figura 54 - Relación función de acción y entradas del entorno. ....................................... 92
Figura 55 - Ejemplo de entradas y salidas compartidas en la función de acción. ................ 93
Figura 56 - Cadena de funciones de acción a partir de una función de propósito. .............. 94
Figura 57 – Coincidencia de las entradas y salidas de una función de acción con las entradas y
salidas de un o más comportamientos.................................................................. 94
Figura 58 - Relaciones existentes a partir del comportamiento........................................ 95
Figura 59 - Combinación comportamiento-comportamiento. ........................................ 96
Figura 60 - Comportamientos organizados en cadena (a), red bajo con conector lógico AND
(b) o conector lógico OR (c)................................................................................ 97
Figura 61 - Combinación de una cadena de comportamientos a partir de una función de
acción. ............................................................................................................. 98
Figura 62 - Abstracción de un comportamiento por medio de una función de acción......... 98
Figura 63 - Comportamientos que pueden manifestar una Estructura.............................. 99
Figura 64 – Formación de red o cadenas de estructuras. ............................................... 100
Figura 65 – Combinación entre superficies de contacto al final de la síntesis. ................. 100
Figura 66 - Relaciones existentes a partir de las entradas del entorno............................. 101
Figura 67 - Formación de una cadena de comportamientos (a) y combinación de un flujo
externo con la cadena de comportamientos (b)....................................................103
Figura 68 – Proceso de síntesis propuesto....................................................................104
Figura 69 - Capas implementadas...............................................................................107
Figura 70 - Exploración con ayuda de capas..................................................................108
Figura 71 - Captura con ayuda de las capas....................................................................109
Figura 72 - Ventana principal de la herramienta ........................................................... 110
Figura 73 - Pestañas y alternativas en la herramienta .................................................... 110
Figura 74 - Barra de estado en la herramienta .............................................................. 110
Figura 75 - Símbolos definidos para los niveles de abstracción........................................111
Figura 76 - Ejemplo de enlaces entre niveles de abstracción .......................................... 112
Figura 77 - Ventana de tipo selección para el nivel de función de propósito ..................... 113
Figura 78 - Ventana de tipo captura para el nivel de función de propósito........................ 113
Figura 79 - Ventana de tipo propiedades para el nivel de función de propósito................. 114
Figura 80 - Ventana de tipo selección para el nivel de función de acción ......................... 115
xv
Figura 81 - Ventana de tipo captura para el nivel de función de acción............................. 116
Figura 82 - Ventana de tipo propiedades para el nivel de función de acción ..................... 116
Figura 83 - Ventana de tipo selección para el nivel de comportamiento ........................... 117
Figura 84 - Ventana de tipo captura para el nivel de comportamiento ............................. 118
Figura 85 - Ventana para capturar los estados ............................................................... 119
Figura 86 - Ventana de tipo propiedades para el nivel de comportamiento. .....................120
Figura 87 - Ventana de tipo selección para el nivel de estructura..................................... 121
Figura 88 - Ventana de tipo captura para el nivel de estructuras......................................122
Figura 89 - Ventana de tipo propiedades para el nivel de estructuras ..............................122
Figura 90 - Ventana de tipo selección para el nivel de entradas del entorno.....................123
Figura 91 - Ventana de captura para el nivel de entradas del entorno...............................124
Figura 92 - Ventana de tipo propiedades para el nivel de entradas del entorno.................124
Figura 93 - Menú inicial para describir un problema de diseño...................................... 125
Figura 94 - Menú emergente para explorar a partir de una función de propósito ..............126
Figura 95 - Menu emergente que permite explorar a partir de una función de acción........ 127
Figura 96 - Tres tipos de funciones de acción que pueden ser exploradas: a) Función de
acción sin entrada dirigida, b) función de acción con entrada dirigida y salida
funcional y c) función de acción combinada a partir de un comportamiento abstraído.
.......................................................................................................................128
Figura 97 - Ejemplo de combinación entre comportamiento - función de acción -
comportamiento ..............................................................................................129
Figura 98 - Menú emergente que explorar a partir de un comportamiento seleccionado ...129
Figura 99 - Menú emergente que permite explorar a partir de una estructura ..................130
Figura 100 - Menú emergente que permite explorar a partir de una entrada del entorno...130
Figura 101 – Comando que permite registrar una nueva estructura (“bottom-up”) ........... 131
Figura 102 - Elección o exclusión de una función de acción a partir de una función de
propósito (“top-down”) ....................................................................................132
Figura 103 - Exploración con ayuda de la capa de aplicación...........................................133
Figura 104 - Captura de conocimiento con ayuda de la capa de aplicación........................ 135
Figura 105 - Procedimientos implementados por la clase Alternatives. ........................... 137
Figura 106 - Procedimientos implementados por la clase de funciones de propósito. .......138
Figura 107 - Procedimientos implementados por la clase de funciones de acción. ............138
xvi
Figura 108 - Procedimientos implementados por la clase de comportamientos................139
Figura 109 - Procedimientos implementados por las clases states y entityState................139
Figura 110 - Procedimientos implementados por la clase de estructuras..........................140
Figura 111- Procedimientos implementados por la clase de entradas del entorno. ............140
Figura 112 - Exploración con ayuda de la capa de comunicación con el banco de datos....... 141
Figura 113 - Captura con ayuda de la capa de comunicación con el banco de datos.............143
Figura 114 - Tablas que contienen el conocimiento en la capa de banco de datos. .............145
Figura 115 - Tablas auxiliares en la capa de banco de datos. ............................................146
Figura 116 - Función de propósito y entrada del entorno que forman la alternativa parcial.
......................................................................................................................150
Figura 117 - Resultado de la descomposición para la función de propósito "Support writing
activity"........................................................................................................... 151
Figura 118 - Funciones que descomponen a la función de propósito "Support writing
activity"........................................................................................................... 151
Figura 119 - Exploración de funciones de acción para la función de propósito "Stabilize a
horizontal plan". .............................................................................................. 152
Figura 120 - Ventana para confirmar la conexión automática entre la función de acción con la
entrada del entorno disponible.......................................................................... 153
Figura 121 - Alternativa definida después de la combinación entre función de acción y la
entrada disponible en el entorno. ...................................................................... 153
Figura 122 - Comportamientos que resultan de la exploración a partir de función de acción
“Stabilize a horizontal plan” (Estabilizar plano horizontal). ..................................154
Figura 123 - Resultado de la exploración de estructuras a partir del comportamiento
"Stabilize horizontal plan". ............................................................................... 155
Figura 124 - Configuración de la alternativa tras elegida la estructura "Plan". ..................156
Figura 125 - Resultado de la exploración de funciones de acción à partir de la función de
propósito "Support structure". .......................................................................... 157
Figura 126 - Ventana capturada después de incluir nuevas funciones de acción................ 158
Figura 127 - Comando utilizado para explorar comportamientos a partir de una función de
acción. ............................................................................................................159
Figura 128 - Exploración de comportamientos que atienden a la función de acción "Secure
structure"........................................................................................................159
Figura 129 - Configuración de la alternativa después de combinados los comportamientos
“Support structure” (B:7) y “Transport load” (B:33). ............................................160
xvii
Figura 130 - Exploración de estructuras para comportamientos "Support structure" ........ 161
Figura 131 - Exploración de estructuras para comportamientos “Transport load”. ............ 161
Figura 132 - Configuración de la alternativa después de combinadas dos estructuras. .......162
Figura 133 - Configuración de la alternativa después de duplicada la cadena de funciones de
acción, comportamientos y estructuras. ..............................................................163
Figura 134 - Combinación entre superficies de la primera alternativa. ............................163
Figura 135 - Acceso al comando "Create a snapshot of the alternative". .......................... 164
Figura 136 - Función de acción "Regulate height" añadida a la descomposición de la función
"Support writing activity"..................................................................................165
Figura 137 - Funciones de acción que atienden a la función de propósito "Regulate height".
...................................................................................................................... 166
Figura 138 - Funciones de acción combinadas para atender a la función de propósito
"Regulate height". ........................................................................................... 166
Figura 139 - Mensaje de aviso sobre las entradas de entorno disponibles que no atienden a la
función de acción elegida. .................................................................................167
Figura 140 - Exploración de entradas del entorno que pueden atender a la entrada dirigida
de la función de acción “Increase height”............................................................167
Figura 141 - Configuración de la alternativa después de renovados los enlaces entra las
funciones de acción y las entradas del entorno.....................................................168
Figura 142 - Resultado final después de combinados los comportamientos y las estructuras.
...................................................................................................................... 169
Figura 143 - Combinación entre superficies de la segunda alternativa............................ 169
Figura 144 - Posibles formas de productos definidos con base en el resultado de la síntesis.
.......................................................................................................................170
Figura 145 - Primera solución generada para la función de propósito "Support writing
activity"........................................................................................................... 171
Figura 146 - Segunda solución generada para la función "Support writing activity". ......... 172
xviii
Índice de tablas
Tabla 1 - Clasificación de los métodos de evaluación. ..................................................... 54
Tabla 2 – Semántica, sintáctica y ejemplo de función de propósito....................................75
Tabla 3 - Semántica, sintaxis y ejemplo de función de acción. ..........................................77
Tabla 4 - Semántica, sintaxis y ejemplo de comportamiento ........................................... 80
Tabla 5 - Semántica, sintaxis y ejemplo de estructura. .................................................... 82
Tabla 6 - Semántica, sintaxis y ejemplo de entrada del entorno. ...................................... 84
Tabla 7 - Verbos de la segunda clase de Hirtz (Hirtz, Stone et al. 2002)............................195
Tabla 8 - Verbos de la tercera clase de Hirtz. ................................................................ 197
xix
Índice de cuadros
Cuadro 1 - Exploración de función de propósito por medio de la capa de aplicación..........134
Cuadro 2 - Captura de función de propósito por medio de la capa de aplicación. ..............136
Cuadro 3 - Exploración de función de propósito por medio de la capa de comunicación con el
banco de datos. ................................................................................................142
Cuadro 4 - Relación de descomposición en el nivel de función de propósito por medio de la
capa de comunicación con el banco de datos........................................................143
Cuadro 5 - Captura de función de propósito por medio de la capa de comunicación con el
banco de datos. ................................................................................................143
Cuadro 6 - Captura de una relación entre funciones de propósito por medio de la capa de
comunicación con el banco de datos. ..................................................................144
xxi
1 Introducción
Introducción
En los últimos 20 años, los modelos computacionales han logrado reducir el tiempo
necesario para el diseño y desarrollo de productos por medio de las herramientas de Diseño
Asistido por Ordenador (CAD). Los avances en el campo de los modelos computacionales
han proporcionado nuevos métodos y modelos para soportar automáticamente las tareas
rutinarias del proceso de diseño, así como soportar de forma semiautomática otras tareas en
las que interviene la creatividad.
Muchas de estas herramientas utilizan principios del campo de la psicología y de la
inteligencia artificial en sus algoritmos, pues se cree que estos principios ayudan a
reproducir la capacidad humana de intuición, creatividad, análisis y síntesis para resolver los
problemas de diseño (Horvath 2004b). Sin embargo, a pesar de las técnicas propuestas para
automatizar el proceso de diseño, éstas han tenido poca aceptación por parte de los
diseñadores de las industrias. Este inconveniente se debe a la dificultad de reproducir las
condiciones normales de un proceso de diseño (Horvath 2004a), pero quienes están a favor
de este modelo, argumentan que la intervención humana es fundamental para ayudar a
formar nuevas ideas y conceptos más creativos (Parmee 2001; Horvath 2004a; Chakrabarti,
Sarkar et al. 2005; Sridharan y Campbell 2005; Wilhelms 2005; Chakrabarti 2006). Para ello,
la herramienta de soporte al diseño conceptual debe alcanzar los siguientes objetivos
(Horvath 2000; Li, Bracewell et al. 2001; Wilhelms 2005):
• Conducir y controlar el proceso de diseño,
• Capturar, relacionar y racionalizar el diseño en tiempo de ejecución,
• Organizar y almacenar la definición y el historial del diseño,
• Ofrecer un método de búsqueda que facilite el acceso y la interacción con
el conocimiento,
• Integrar las herramientas de diseño,
• Permitir la interacción del usuario durante el proceso creativo; así como
ejecutar procesos automáticos que reduzcan el tiempo del diseño
rutinario,
• Permitir al diseñador manipular conjuntos de alternativas para un único
problema, y
• Generar los documentos sobre el producto de manera automática.
Dentro de este contexto, es necesario definir modelos computacionales de soporte
del diseño interactivos, que permitan que el proceso de diseño esté regido por el diseñador
en mayor medida.
1.1 Hipótesis
Las hipótesis de este trabajo son:
• Potenciando la representación del conocimiento en la síntesis funcional
se pueden formar alternativas de manera más flexible e interactiva que la
que permiten los actuales modelos funcionales de síntesis.
• Se puede lograr dicha flexibilidad, así como facilitar el almacenamiento, y
reutilización del conocimiento de proyectos anteriores y la conexión con
diferentes dominios, explotando más las posibilidades de representación
por medio del marco función, comportamiento y estructura (FBS).
1.2 Objetivos
El objeto de esta tesis consiste en definir un nuevo modelo computacional que
soporte algunas tareas del diseño de forma interactiva, permitiendo que los pasos por los que
se forman las alternativas de diseño durante la síntesis estén guiados por el diseñador,
aproximándose en mayor medida a las características de los procesos creativos de diseño.
Los objetivos de este modelo son:
• Que sea capaz de mejorar la exploración del conocimiento e incrementar
los posibles caminos a seguir en el proceso de síntesis, con el fin de
ampliar las opciones de búsqueda de soluciones;
• Que sea capaz de aumentar la interacción con el diseñador durante toda la
síntesis;
• Que sea capaz de representar el conocimiento para soportar la síntesis
partiendo de un lenguaje más cercano al usuario y que al mismo tiempo
evite ambigüedades.
Al mismo tiempo, el modelo propuesto cumplirá otros objetivos, si bien ya
alcanzados en otros modelos, tales como:
• Restringir la exploración del conocimiento por medio de reglas, para
seleccionar los elementos más convenientes que puedan presentarse
como alternativas, y
• Permitir al diseñador manipular varias alternativas.
El beneficio potencial de este modelo en el futuro, es que se logre disminuir el
tiempo de formación de nuevos productos y de forma compatible con la creatividad del
diseñador. Se espera que ello permita lograr una mayor aceptación de los métodos
computacionales de síntesis por los diseñadores.
1.3 Metodología
Esta tesis toma como referencia el estudio experimental defendido en la tesis de
Mulet (Mulet 2003), donde se definen algunas directrices para mejorar el diseño creativo a
partir del análisis del proceso de obtención de soluciones en diseñadores. Algunas de estas
directrices se han tenido en cuenta en la definición del modelo computacional que se
presenta en esta tesis, mientras que otras directrices se abordarían en un futuro modelo.
Esta investigación ha sido realizada durante tres años. En el primer año se cursaron
las asignaturas del programa de doctorado impartidas en la UJI, en la Universidad
Politécnica de Cataluña (UPC) y en la Universitat de Girona (UG). Durante el segundo año, se
realizó un extenso análisis sobre los modelos de síntesis funcional y se definió una propuesta
preliminar de modelo computacional de síntesis.
Al final del segundo año, se defendió el trabajo de investigación y se obtuvo el
Diploma de Estudios Avanzados. Desde octubre de 2006 hasta enero de 2007, se realizó una
estancia de investigación en el Departamento de Design Engineering de la Delft University
of Technology (DUT). Durante este periodo, se pudo completar y concluir el modelo
preliminar, así como conocer los modelos computacionales desarrollados por otros grupos
de investigación. Seguidamente se implementó el modelo en una la herramienta informática
piloto, que ha sido aplicada, como caso de diseño, a la formación de alternativas de diseño de
mobiliario de oficinas. Finalmente, a partir de los resultados obtenidos con esta herramienta
para el caso de aplicación, se ha realizado una evaluación preliminar del modelo.
Según la metodología de investigación de Blessing et al (Blessing, Chakrabarti et al.
1995; Blessing y Chakrabarti 2002), las etapas de investigación en ingeniería del diseño son:
formulación de los criterios, estudio descriptivo I, estudio prescriptivo y estudio descriptivo
II.
En este capítulo se han definido los objetivos de la tesis. Los capítulos 2 y 3
comprenden la etapa de estudio descriptivo I que consiste en obtener el conocimiento sobre
cómo influyen distintos factores de la actividad analizada en la consecución de los objetivos
definidos en la fase anterior. El capítulo 4 comprende el estudio prescriptivo, por el cual se
proponen directrices, técnicas, métodos y metodologías de diseño para fomentar el
cumplimiento de los objetivos, basándose en los resultados del estudio descriptivo.
Finalmente, los capítulos 5 y 6 comprenden la etapa de estudio descriptivo II que consiste en
evaluar hasta qué punto se ha logrado que la técnica, método, conjunto de directrices, etc.
propuestos, cumplan con los objetivos (Figura 1).
Esta tesis parte de algunos de los resultados del estudio descriptivo realizado en la
tesis de Mulet (Mulet 2003), que se completa con la revisión bibliográfica de los modelos
funcionales de síntesis, a partir de los cuales se propone un nuevo modelo de síntesis cuya
representación del conocimiento permite describir, explorar y sintetizar de manera flexible
el conocimiento antes y durante la síntesis, fomentando las pautas del diseño que el estudio
descriptivo revela como más efectivas (estudio prescriptivo). Este modelo ha sido
implementado y aplicado a un caso de diseño restricto al campo del diseño mecánico, en
concreto el diseño de muebles. A partir de la herramienta implementada y de la aplicación
del caso de diseño, se ha realizado una evaluación preliminar del grado de cumplimiento del
modelo sobre los objetivos de la investigación (estudio descriptivo II); Al final, se presentan
las conclusiones y algunas propuestas para trabajos futuros.
los atributos sobre los requerimientos funcionales del diseño (Tomiyama, Yoshioka et al.
2002).
El modelo sistemático de Pahl y Beitz describe el diseño por medio de ciclos de
resolución y evaluación para formar las alternativas (Pahl y Beitz 1986). La resolución se
lleva a cabo por medio de procesos de búsqueda y composición. En esta aproximación, la
exploración y la combinación de conocimientos (ideas, conceptos o elementos físicos)
describen la formación de soluciones para los problemas de diseño.
Cross describe el diseño por medio de procesos intercalados de divergencia y
convergencia. El autor considera el diseño principalmente convergente, pero manteniendo
una cierta divergencia para ampliar la búsqueda de nuevas ideas (Cross 1994). La Figura 2
ilustra este modelo. La divergencia amplía el espacio de soluciones, mientras que la
convergencia reduce este espacio con ayuda de métodos de evaluación. En los ciclos
subsiguientes, los dos procesos funcionan como auxiliares en la creación y elección de
soluciones hasta encontrar la que mejor atienda las necesidades del proyecto.
Figura 3 - Etapas del proceso de diseño según Campbell (Campbell, Cagan et al. 2003).
Figura 4 - Algoritmo de resolución del Heuristic State-space Approach (Zhang, Tor et al. 2002b)
partir de una tabla de clasificación funcional, identifica los componentes que mejor atienden
a las entradas y salidas. El modelo utiliza los fenómenos físicos como base para la resolución
simbólica de mecanismos, pero se limita a los fenómenos de cinemática. En su proceso de
resolución, el algoritmo se guía a través de los requerimientos funcionales, donde en cada
ciclo se eligen diversos componentes con ayuda de la clasificación y de la posición en un
ranking de aproximación a los requerimientos. Al final de todo el proceso, se selecciona la
alternativa más compacta (con menor cantidad de componentes) como solución para el
problema. Para sus autores, el método ayuda a desarrollar soluciones compactas y
compatibles, es decir con un mínimo de componentes y que coincidan con los principios
generales de la ingeniería.
2.3.2.6 Automatic Design by Configuration Space (ADCS)
El Automatic Design by Configuration Space (ADCS) de Li desarrolla soluciones en
base a la cinemática de pares de componentes obtenidos por el método Configuration Space
(CSpace) (Li 1998; Li, Chan et al. 1999a; Li, Chan et al. 1999b). Este método implementa un
algoritmo recursivo que ilustra la realización cinemática de las entradas y salidas en los
planos cartesianos x-y, y-z y z-x y compara sus movimientos a través del gráfico de las
interacciones.
El modelo utiliza un algoritmo de búsqueda heurística que guía la exploración
durante la síntesis. Sin embargo, no evalúa el espacio de soluciones, se limita a elegir las
alternativas con menos componentes. El modelo se limita a desarrollar una única solución
para el conjunto de especificaciones.
2.3.2.7 Método de Bruno, Giampà, Muzzupappa y Rizzuti
El método propuesto por Bruno conduce el desarrollo a partir de bloques
funcionales y componentes/mecanismos en un entorno tridimensional (Bruno, Giampà et
al. 2003). El autor ofrece un método que permite manipular los bloques funcionales y los
componentes en 3D con ayuda de reglas de entrada/salida y con la coincidencia entre
superficies de contacto. En este entorno, el modelo implementa un algoritmo centrado en el
usuario y en base a reglas.
2.3.3 Modelos que sintetizan por medio de la relación entre causa y
efecto
Este método de resolución permite encontrar efectos deseados que se pueden
alcanzar por medio de una causa de elementos anteriores. Desde un punto de vista
computacional, para que un elemento obtenga determinado efecto se necesita una causa
complementaria que se enlace con el efecto de un elemento anterior en una cadena o red.
Los modelos que utilizan la relación de causa y efecto para generar soluciones son:
Schemebuilder, Dialog-oriented Intelligent CAD y el modelo de Zavbi.
2.3.3.1 Schemebuilder
El Schemebuilder de Bracewell comprende un conjunto de herramientas que guían
el acceso y el uso de información durante la formación de alternativas (Bracewell y Sharpe
1996; Bracewell 2002). Su modelo computacional utiliza las síntesis de árbol de funciones y
bond-graphs (Karnopp y Rosenberg 1968) como base para la resolución funcional. Según ha
sido demostrado por los autores, este modelo no presenta una resolución linear, lo que
permite al diseñador empezar la síntesis desde cualquier etapa del proceso de diseño. En la
evaluación, la herramienta implementa un módulo de visualización 3D que verifica el
comportamiento y el desempeño de un prototipo virtual. Al final de todo el proceso, se
define una solución de diseño según los requerimientos.
2.3.3.2 Dialog-oriented Intelligent CAD (DIICAD)
El Dialog-oriented Intelligent CAD (DIICAD) de Lossack es un sistema de diseño
que genera conceptos a partir de patrones encontrados en experiencias anteriores (Lossack,
Umeda et al. 1998; Lossack 2002). En la síntesis funcional, el modelo tiene dos tipos de
funciones, una orientada al usuario y otra orientada al componente, que se representa por la
transformación de entradas en salida. Para desarrollar un producto, el modelo utiliza un
método de resolución cualitativo basado en principios físicos. De esta manera, su algoritmo
(Figura 6) desarrolla alternativas en tres etapas: en la primera define los requerimientos, en
la segunda resuelve las funciones y en la última resuelve las estructuras. A pesar de no
evaluar la solución, el sistema ofrece al diseñador dos métodos para guiar la síntesis
funcional: uno relacionado con las entradas y salidas, y otro que considera la preferencia del
usuario. Los autores consideran que el modelo facilita el uso de conocimientos de proyectos
anteriores.
Figura 6 - Algoritmo de resolución del modelo DIICAD (Lossack, Umeda et al. 1998)
Figura 7 - Algoritmo de resolución del modelo A-Design (Campbell, Cagan et al. 1998a)
optimización por Pareto. Para el autor, su propuesta ofrece medios para almacenar, reutilizar
el conocimiento y desarrollar soluciones en tiempo inferior al proceso manual.
2.3.7 Modelos que sintetizan por medio de abducción: Knowledge
Intensive Engineering Framework (KIEF)
El Knowledge Intensive Engineering Framework (KIEF) de Takeda sintetiza las
funciones por medio de abducción y genera soluciones mediante el uso de un mecanismo de
metamodelos (Pluggable Metamodel Mechanism), que relaciona conceptos y componentes
físicos (Takeda, Veerkamp et al. 1990; Yoshioka y Tomiyama 2000; Takeda, Yoshioka et al.
2001; Yoshioka, Nomaguchi et al. 2001; Tomiyama, Yoshioka et al. 2002).
La abducción y deducción son dos términos obtenidos de la lógica; la primera
permite inferir las causas a partir de los efectos (generar soluciones) y la segunda verifica las
consecuencias lógicas (efectos) de causas especificas (evaluación de lo que ha sido generado)
(Yoshikawa 1981).
Este modelo difiere de los demás por tener como base los conocimientos reales
obtenidos por un análisis de protocolo (Takeda, Yoshioka et al. 1996). En su banco de datos,
las ontologías enlazan los conocimientos con información cuantitativa, y para solucionar los
problemas de diseño conceptual, los autores utilizan múltiples procesos que tratan los
conocimientos explorados (abducción).
2.3.8 Modelos que sintetizan por medio de algoritmos evolutivos
Estos modelos representan sus funciones en una abstracción genética e
implementan algoritmos de optimización. Su método detecta las funciones más favorables y,
a partir de ellas, cambia los parámetros con ayuda de la mutación o recombinación para
avanzar en la formación de la solución.
2.3.8.1 Genetic Algorithm Designer (GADES)
El Genetic Algorithm Designer (GADES) de Bentley utiliza métodos evolutivos para
optimizar parámetros geométricos decodificados en forma binaria (Bentley y Wakefield
1997; Bentley 1999b). El modelo resuelve problemas de diseño donde las alternativas son
regeneradas con ayuda de criterios multi-objetivos. El algoritmo genético utilizado (GA)
manipula genotipos (funciones) organizados en una forma jerárquica, y manipula los
fenotipos que define la forma física del producto. Para el autor, el modelo forma alternativas
más optimizados y evoluciona conjuntos de soluciones convencionales y no convencionales
para problemas de diversos campos del diseño.
2.3.8.2 Interactive Evolutionary Design System (IEDS)
El Interactive Evolutionary Design System (IEDS) de Parmee resuelve problemas
por medio del algoritmo Variable Mutation Cluster-oriented Genetic Algorithm (vmCOGA)
que identifica zonas en el espacio de soluciones que contengan alternativas viables para las
necesidades de proyecto (Parmee, Cvetkovic et al. 2000; Parmee 2001). El modelo sintetiza
las funciones a través de métodos co-evolutivos y guía la síntesis con ayuda de métodos
genéticos de recombinación y mutación. Para evaluar las alternativas generadas, el modelo
utiliza un filtro adaptable (adaptive filter) con el que elige la mejor alternativa para continuar
(a) (b)
Para enlazar los niveles de función se utiliza un atributo llamado salida funcional.
Para enlazar una función de acción con un comportamiento y el comportamiento con la
estructura, el modelo utiliza los atributos de estados y de entradas/salidas de acción u objeto.
Este modelo incorpora un recurso diferente a los demás, ya que permite definir la
función con dos tipos de enfoque: intencional y operacional. Sin embargo, no define la
información necesaria para el nivel de estructura.
La Figura 29 muestra la semántica y la sintaxis adoptados por el modelo de
representación TFMF.
Figura 33 - Cuadro comparativo con las formas en que los modelos de síntesis representan el
conocimiento de diseño.
Funciones Alternativas
Objeto de Dominio de Importancia
Modelos de síntesis Síntesis Convergencia Criterio Valoración Evaluación
evaluación diseño del criterio
Schematic Synthesis Funciones Diseño
Relaciones E/S Basada en Reglas Cinemática - Simulación Mejor ranking
(SS) Alternativas Mecánico
Interaction-based Funciones Diseño
Relaciones E/S Basada en Reglas Cinemática - Simulación Mejor ranking
design (Ibis) Alternativas Mecánico
Initial Design Selection Funciones Diseño Búsqueda por Mejor en Especificaciones de
Estimación Función de uso Suma ponderada
(IDS) Alternativas Mecánico características Especificaciones proyecto
Kinematic Building Funciones Diseño
Relaciones E/S Basada en Reglas Cinemática - Simulación Suma ponderada
Blocks (KBB) Alternativas Mecánico
Funciones Diseño
FuncSION Relaciones E/S Método Heurístico Cinemática - Simulación Mejor ranking
Alternativas Mecánico
Qualitative and Heuristic Diseño Mejor en
Funciones Relaciones E/S - - - -
Approach (QHA) Mecánico Especificaciones
Árbol de
Funciones Diseño Electro- funciones y
Schemebuilder Basada en Reglas Cinemática - Simulación Mejor ranking
Alternativas Mecánico Relaciones de
Causa
Diseño Especificaciones de
A-Design Alternativas - - Estimación Función de uso Pareto Óptimo
Mecánico proyecto
Árbol de
Diseño
DiiCAD Funciones funciones y Basada en Reglas - - - -
Mecánico
Relaciones E/S
Funciones Diseño Electro- Relaciones de Especificaciones de
Zavbi Basada en Reglas - Simulación Valor Añadido
Alternativas Mecánico Causa proyecto
Automatic Design by
Funciones Diseño
Configuration Space Relaciones E/S Método Heurístico Cinemática - Simulación Mejor ranking
Alternativas Mecánico
(ADCS)
Genetic Algorithm Funciones Diseño Métodos Mutación y Especificaciones de
Estimación Simulación Algoritmos Evolutivos
Designer (GADES) Alternativas Genérico evolutivos Recombinación proyecto
Interactive Evolutionary Funciones Diseño Métodos Mutación y Especificaciones de Basada en
Simulación Algoritmos Evolutivos
Design System (IEDS) Alternativas Mecánico evolutivos Recombinación proyecto Reglas
Knowledge Intensive
Diseño Especificaciones de
Engineering Framework Alternativas Abducción - - - Deducción
Mecánico proyecto
(KIEF)
Autogenetic Design Funciones Diseño Métodos Mutación y Especificaciones de
- Simulación Algoritmos Evolutivos
Theory (ADT) Alternativas Mecánico evolutivos Recombinación proyecto
Heuristic State-space Funciones Diseño Árbol de Especificaciones de Basado en
Método Heurístico Estimación Heurística
Approach (HSA) Alternativas Mecánico funciones proyecto Fuzzy
Two-stage Functional
Diseño Árbol de
Modeling Framework Funciones Basada en Reglas - - - Elección del usuario
Mecánico funciones
(TFMF)
Diseño
Método de Bruno Funciones Relaciones E/S Basada en Reglas - - - Elección del usuario
Mecánico
Funciones Diseño Árbol de Especificaciones de
FuncDesigner Basada en Reglas Estimación Función de uso Suma ponderada
Alternativas Mecánico funciones proyecto
C-K Design Theory Funciones Diseño Árbol de Especificaciones de Basado en
Basada en Reglas - Conjunción
(CKDT) Alternativas Genérico funciones proyecto Fuzzy
Funciones Diseño Árbol de Especificaciones de
HiCED Basada en Reglas Estimación Simulación Algoritmos Evolutivos
Alternativas Mecánico funciones proyecto
Funciones Diseño Redes Especificaciones de
FDCS Basada en Reglas Estimación Simulación Algoritmos Evolutivos
Alternativas Genérico neuronales proyecto
El modelo IDS utiliza las características que debe tener un producto. Los criterios
consideran factores técnicos y económicos como rendimiento, confort, durabilidad, estética,
altura, peso, volumen, coste, período de garantía, etc. Para la importancia, el diseñador
estima pesos sobre las características esperadas. Los pesos comprenden valores entre 0 y 10,
donde el 0 significa un criterio sin importancia para el diseño. A pesar de permitir la
estimación, el autor aplica el valor 1 para todos sus ejemplos.
El modelo propuesto por Zavbi propone deducir los criterios por medio de las
funciones deseadas en un sistema de diseño. Los criterios se obtienen a partir de
especificaciones de presión, densidad, temperatura, deflexión, etc., y varían según la
aplicación. A pesar de los múltiples criterios, el autor no define valores de importancia para
las simulaciones de las leyes físicas.
La teoría ADT considera los criterios relacionados con la geométrica del producto,
pero no define valores de importancia para sus criterios.
En el modelo HSA el diseñador define los criterios por medio de las
especificaciones del ciclo de vida del producto. El autor muestra ejemplos de criterios, tales
como manufactura, ensamblaje, mantenimiento, eficiencia, fiabilidad, etc. La importancia
de los criterios se define por la estimación del propio diseñador con ayuda del método Fuzzy.
Por su parte, la teoría CKDT define criterios en base a los requerimientos, pero no
define la importancia de los criterios.
El modelo KIEF considera los criterios relacionados con la manufactura del
producto, y verifica que las entidades desarrolladas presenten valores mínimos para atender
a los procesos. De esta forma, el modelo da al diseñador la información necesaria sobre la
viabilidad del producto.
El modelo HiCED utiliza en su evaluación criterios que son aplicados a sus reglas,
tales como: compatibilidad de los enlaces entre funciones, tamaño de las estructuras
formadas por estas funciones, preferencias sobre determinadas medios de implementación
y datos cualitativos de estos medios (potencia, etc.). El usuario estima la importancia de los
criterios.
3.2.6.2 Aspectos cinemáticos
El modelo SS obtiene los criterios a través del comportamiento mecánico
cualitativo de una solución. El autor considera una variable de esfuerzo o flujo que relaciona
las entradas y salidas. Dado que considera solamente un criterio, no utiliza grado de
importancia.
El modelo Ibis define un único criterio sobre la interacción entre componentes por
medio de un diagrama de estados cualitativos.
El modelo FuncSION considera la continuidad y reciprocidad mecánica entre
mecanismos de una solución. El primero describe la continuidad de movimiento de las
entradas y salidas de los componentes. Y el segundo relaciona la reciprocidad sobre estas
entradas y salidas. Ambos criterios muestran el mismo valor de importancia.
El modelo de Zhang utiliza una representación trapezoidal o triangular para traducir los
valores lingüísticos en números. El modelo CKDT recomienda dos tipos de valoraciones: uno
lógico y otro a través del método fuzzy.
3.2.8 Métodos de soporte a la decisión (evaluación de alternativas)
Al final de cada ciclo de resolución se desarrollan diversas alternativas. Con ayuda
de los métodos de soporte a la decisión se puede medir y comparar las alternativas en
relación a determinados aspectos. Un buen método permite al diseñador encontrar las
mejores alternativas y evolucionarlas para mejorar el cumplimiento de los objetivos.
Este sub-apartado muestra la forma en que los modelos evalúan las alternativas
formadas. La Figura 36 muestra los métodos aplicados por los modelos computacionales
analizados.
En este análisis se ha observado que existen modelos que soportan la decisión sin
ayuda de los procesos computacionales y otros que basan la decisión por medio de métodos
computacionales. En los modelos que no consideran los procesos computacionales, el propio
usuario elige la alternativa por intuición o experiencias anteriores. En los métodos que
evalúan con ayuda de procesos computacionales, algunos manejan un único criterio (mono-
criterio) o múltiples criterios (multi-criterio).
3.2.8.1 Mono-criterio
El modelo SS organiza en un ranking las alternativas y elige aquellas que presentan
mayor valor obtenido en base a una simulación cualitativa de los movimientos de los
componentes.
El modelo Ibis suma todas las expresiones simbólicas de la combinación de los
comportamientos y el resultado de la interacción entre componentes. El modelo sólo genera
una alternativa y la evalúa a través del comportamiento que manifiesta.
El modelo FuncSION utiliza una herramienta 3D que permite simular la solución.
El modelo Schemebuilder utiliza una herramienta 3d para simular la dinámica y el
rendimiento de las alternativas.
El modelo ADCS utiliza el grafo Behaviour Realization Graph (BRG) para simular de
manera cualitativa una solución. Este grafo integra dos tipos de comportamientos: la
cinemática de pares de componentes y la interacción entre los pares de movimientos.
3.2.8.2 Algoritmos evolutivos
El modelo GADES usa una biblioteca de módulos de evaluación para calcular según
la necesidad, tales como tamaño mínimo y máximo, masa específica, área de superficie,
estabilidad, garantía de soporte, rayos trazados y simulador de flujo de partículas.
El modelo IEDS utiliza como base de su síntesis el Algoritmo Genético (GA) de
Goldberg (Goldberg 1989) y se basa en un método de filtro adaptable (adaptive filter) para
evaluar las alternativas desarrolladas en cada ciclo de síntesis. El filtro extrae soluciones y las
Ecuación 1 - Cálculo del Overall Goodness of Match del modelo IDS (Esterline y Kota 1992).
El método AHP extiende la comparación por pares a los valores de los criterios y a la
importancia de dichos criterios. Su método utiliza las funciones u que evalúan las
alternativas sobre los criterios i y el grado de importancia k. Cada alternativa a recibe un
valor v(a), calculado según la Ecuación 2. Con este resultado, el método ordena y elige la
mejor alternativa por medio de un ranking.
n
v(a ) = ∑ k i u i (a )
i =1
Ecuación 2 - Cálculo del Analytic Hierarchy Process (AHP) (Bouyssou, Marchant et al. 2000).
(a) (b)
Ecuación 3 - Cálculo del valor heurístico en el modelo HSA (Zhang, Tor et al. 2002b).
Figura 38 – Diagrama de Pareto, buenos y malos diseños en el modelo A-Design (Campbell, Cagan et
al. 1999)
3.2.8.7 Deducción
El modelo KIEF utiliza la deducción para evaluar sus alternativas, comparando las
alternativas desarrolladas con los principios involucrados en el proceso. Sus principios se
obtienen a partir de las especificaciones al inicio de la síntesis.
Cuanto al análisis sobre los métodos de soporte a la decisión, se observa que dichos
métodos evolucionan respecto a la complejidad de los criterios y de los cálculos adoptados. A
través de este análisis se constata que:
• La evaluación de funciones ha sido tratada de forma relevante en la
mayoría de los modelos de síntesis, en comparación con otras tareas.
Quizá porque, en la evaluación de una alternativa, el modelo de síntesis
cuenta con datos numéricos y criterios más precisos, mientras que en las
funciones muestran datos poco claros.
• Al definir un modelo de síntesis, se debe considerar y potenciar un
método de evaluación que conduzca de forma fiable la síntesis.
• El método de evaluación debe considerar la información representada en
el banco de datos de conocimiento y debe tener como enfoque principal
aquello que se espera alcanzar en la síntesis.
Ignorar la evaluación o tratarla sin relevancia puede llevar a formar alternativas de
poca fiabilidad y sin garantía sobre su realización.
A partir de estos aspectos, se propone un nuevo modelo de representación de
diseño que incluye nuevos detalles, nuevas relaciones y nuevos conocimientos para facilitar
la síntesis en un modelo computacional más flexible y que se describe en el siguiente
capítulo.
los componentes con los cuales se puede implementar el propósito perseguido. Por ejemplo,
al buscar una solución para “transformar energía en momento”, el modelo permitiría
encontrar distintos componentes que implementen esta necesidad. Estas características de
independencia y de enfoque hacia las intenciones ayudan al diseñador a explorar en
distintos dominios del conocimiento.
La Tabla 2 resume las características semántica y sintáctica de una función de
propósito y presenta un ejemplo de aplicación para este nivel de representación.
4.3 Comportamiento
El nivel de comportamiento indica qué estados intermedios puede asumir un
componente o mecanismo desde la entrada hasta la salida. Estos estados pueden ser
resultado de la interacción entre uno o más componentes o entre un componente y su
entorno.
Este nivel de representación está referido al componente físico, por lo que sus
atributos no están orientados al usuario. Esta orientación al componente dificulta la
exploración manual por parte del diseñador.
Desde el punto de vista computacional, el comportamiento se define por medio de
los mismos atributos que se han definido para la función de acción, pero además contiene
una descripción de las entradas dañinas y los efectos no deseados o no previstos durante el
funcionamiento del sistema. Así, un comportamiento se describe a través de los siguientes
atributos:
• Código de identificación
• Descripción: descripción simplificada de los probables estados físicos a
través de los cuales se lograría una salida determinada.
• Entradas y salidas: transformaciones que se realizan entre las entradas y
salidas de energía, material, señal o movimiento. Estas entradas y salidas
contienen los atributos de función de acción más otros atributos que
expresan valores concretos de los flujos de entrada y salida, o bien rangos
de valores más estrechos que los de las funciones de acción.
o Entradas dañinas (o no esperada): entradas no previstas o que
sobrepasan los parámetros máximos/mínimos que son válidos
para el adecuado funcionamiento del sistema. Este nivel
considera los excesos de energía, baja intensidad de fuerzas, etc.
o Efectos no deseados (o salidas no esperadas): salidas que se
obtienen como respuesta a las entradas no esperadas.
Intervienen en el funcionamiento normal del sistema.
• Cadena de estados: cadena o red de estados que puede asumir un
comportamiento durante su actuación en el sistema. Esta representación
de los estados difiere de una función de acción en el sentido de que
permite al diseñador describir todos los estados intermedios durante la
actuación de un comportamiento. En una cadena (Figura 42a), el modelo
de representación considera el estado inicial y el estado final, pero
también permite describir la secuencia lineal de estados que transcurren
entre el inicial y el final. En una red (Figura 42b), los estados intermedios
no son sólo secuenciales, sino que se puede pasar del estado inicial al final
pasando por distintas ramas o secuencias. Estas ramas representan
variaciones sutiles en el comportamiento, y los estados finales permiten
representar distintas formas de salidas (Martel 1998; Thompson y
Heimdahl 1999).
4.4 Estructuras
La estructura es el nivel de menor grado de abstracción y describe la geometría de
un componente y su configuración física. Desde el punto de vista semántico, la estructura
contiene los siguientes atributos:
• Código de identificación
• Descripción: describe el componente o mecanismo.
• Funciones de Propósito: relación de las funciones de propósito que
pueden ser alcanzadas por medio de la estructura;
• Funciones de Acción: relación de las posibles funciones de acción que
pueden ser alcanzadas por el componente físico. Este atributo permite al
modelo encontrar un conjunto de posibles estructuras para alcanzar una
función de acción;
• Comportamientos: lista de posibles comportamientos que presenta el
componente. Este atributo es una lista de estados físicos que puede
manifestar el componente durante su funcionamiento en el sistema;
• Definición geométrica: representación geométrica del elemento físico que
define los elementos de contacto de un componente, los puntos de unión,
los grados de libertad, los elementos compatibles, etc. Ofrecen al
diseñador posibles soluciones sobre la forma del producto;
o Geometría sólida: abstracción paramétrica de la forma
geométrica de la estructura.
o Superficies de contacto: conjunto de atributos que permiten al
modelo identificar las superficies que son parte de la
composición entre un elemento físico y otro, y cuyos atributos
son:
Identificación: código para identificación de las
superficies;
Tipo: tipo de superficies, pudiendo asumir valores
como del tipo Plano, Cilíndrico, Cónico truncado, etc.
(Bruno, Giampà et al. 2003);
Superficies de contacto:
Código de la superficie compatible: 01 –
Plano
Tipo: Plano
DOF: 1
Superficies compatibles: 01 - Plano
Las estructuras se representan a través del símbolo s l (Figura 46a). La Figura 46b
representa una cadena o red de componentes que describen un conjunto de componentes
organizados para formar un único mecanismo. A partir de la interacción entre los
componentes de un mecanismo es posible describir comportamientos diferentes de los
comportamientos de los componentes en funcionamiento individual.
Figura 46 - Simplificación gráfica (a) y organización de las estructuras en cadena o red (b).
Figura 47 - Simplificación gráfica de las entradas del entorno y combinación de entradas del entorno a
partir de una función de acción y comportamiento.
Las relaciones entre los niveles de abstracción debe ser tal que permitan al
diseñador solucionar el problema de diseño y evite una posible explosión combinatoria. Esta
forma de búsqueda converge el espacio explorado hacia las necesidades y restricciones de
proyecto (Figura 48). Por medio de este recurso, el diseñador puede formar nuevos
conceptos en menos tiempo y con menos recursos computacionales.
Este apartado describe las relaciones internas y externas de los niveles, y los
atributos que utiliza para compartir información en esta relación. Las relaciones internas
indican las relaciones reflexivas que permiten la descomposición o el encadenamiento de
elementos, mientras que las externas indican el enlace de un nivel con los demás.
4.6.1 Visión general de las relaciones
Antes de describir la relación, la Figura 49 muestra una visión general sobre la
manera en que estas relaciones se realizan y en que secuencia actúan durante la síntesis. De
esta forma se constata la manera en que una alternativa de diseño puede formarse partiendo
de su funcionalidad hasta llegar a su abstracción física.
Las relaciones mostradas en la figura son analizadas considerando los niveles de
forma individual, en los siguientes sub-apartados.
El número indica el
orden de
implementación de
las relaciones
durante la síntesis.
Pero a diferencia del operador lógico AND, el modelo no necesita que estén las dos
formas a la vez en la red de funciones de propósito.
Figura 51 - Formación de cadena (a) o red (b,c) de funciones de acción a partir de una función de
propósito.
árbol y que son consideradas las más simples para describir el problema. La organización
jerárquica permite considerar los operadores lógicos AND y OR (Figura 52) de forma
equivalente al nivel de función de acción; donde el primero de tipo AND define que las sub-
funciones se ejecutan de manera simultánea, y la segunda de tipo OR permite implementar
las sub-funciones en dos o más alternativas o implementar de manera redundante para que
se atienda a una función de propósito dada.
exploración hasta satisfacer la entrada o salida requerida. Es decir, para una determinada
función de acción que presente una entrada y una salida, el modelo explora inicialmente en
el banco de datos de conocimiento todas las posibles funciones de acción que muestren en su
salida la entrada requerida por la función de acción original. De esta forma, el modelo de
síntesis combina las funciones de acción que atiendan a las entradas de función requeridas.
Como ejemplo, para la función de acción “transformar energía en momento” que
requiere energía eléctrica en su entrada, la síntesis explora otras funciones cuya salida sea la
energía requerida (Figura 55).
Figura 57 – Coincidencia de las entradas y salidas de una función de acción con las entradas y salidas de
un o más comportamientos.
Figura 60 - Comportamientos organizados en cadena (a), red bajo con conector lógico AND (b) o
conector lógico OR (c).
La Figura 68 ilustra cómo transcurre el proceso de síntesis propuesto con ayuda del
modelo de representación del conocimiento descrito en los apartados anteriores.
La síntesis empieza con la siguiente información:
e p , e p+1 , e p+2
• Las entradas existentes en el entorno ( );
Tras definir los datos iniciales, el modelo conduce la exploración para generar
soluciones que atiendan a los requerimientos. La primera operación ejecutada es la
exploración por funciones de acción (I). En caso de que la síntesis no encuentre ninguna que
implemente estas necesidades, el proceso cambia de enfoque para buscar por
comportamientos (II) y posteriormente por estructuras.
En caso de que el modelo no encuentre posibilidades de atender a los
requerimientos iniciales, la síntesis trata estas funciones como complejas y arranca un
proceso de descomposición funcional que divide los requerimientos en problemas más
simples (III). Con estas nuevas funciones fruto de la descomposición, el modelo puede
conducir la búsqueda por nuevos elementos (funciones de acción, comportamientos o
estructuras) que atiendan a las nuevas funciones de propósito.
En el modelo de síntesis propuesto, la simplificación o descomposición funcional
se realiza por medio de reglas y con la intervención del diseñador. Estas reglas permiten al
modelo encontrar descomposiciones de proyectos anteriores.
Tras encontrar y combinar los posibles elementos que atiendan a las necesidades
(función de acción, comportamiento o estructura), el modelo de síntesis toma como
referencia las primeras funciones de acción para seguir con la resolución. A partir de estas
funciones de acción iniciales, el modelo explora entradas del entorno que complementen las
entradas requeridas por una de estas funciones (IV). Las entradas requeridas por una
función de acción indican las entradas que son solicitadas por el sistema de diseño para que
el producto pueda funcionar. En caso de que exista alguna entrada disponible en el entorno
que pueda atender a una entrada de función de acción, el modelo la utiliza para formar la
alternativa generada. En caso contrario, la síntesis cambia de orientación y pasa a explorar
otros conjuntos de funciones de acción cuyas salidas suministren las entradas solicitadas por
la función de acción inicial (V).
La búsqueda de otras funciones de acción que atiendan a estas funciones de acción
iniciales permite al modelo de síntesis formar cadenas o redes de funciones que forman la
alternativa de diseño. En caso de que no haya disponible ninguna función de acción, el
modelo busca elementos más concretos, como los comportamientos (VI) y posteriormente
las estructuras.
Cuando una alternativa muestra solamente comportamientos en los extremos del
árbol, el modelo toma estos comportamientos como referencia para la búsqueda de nuevos
comportamientos cuyas entradas requeridas coincidan con las entradas del entorno. Así que
el siguiente proceso es buscar otros comportamientos (VII) para la formación de cadenas o
redes de comportamientos. Las entradas y salidas de estas cadenas o redes tienen que
coincidir con cada una de las entradas y salidas de las funciones de acción con las que
mantiene relación. Mientras esta cadena se forma (Figura 67a), otro proceso paralelo se
ejecuta para encontrar flujos externos que atiendan a las entradas de los comportamientos
(VIII) y así poder terminar una de las ramas auxiliares creadas por las redes de
comportamientos (Figura 67b). Estas ramas indican que la síntesis tuvo que compensar la
falta de comportamientos con soluciones de otros proyectos. Estas soluciones reducen el
tiempo de búsqueda, generando nuevas entradas para que el sistema funcione.
En caso de que no se encuentren comportamientos para seguir con la formación de
cadenas, el modelo abstrae por medio de funciones de acción para buscar otros
comportamientos (IX). Esta abstracción permite al diseñador regresar en el nivel de
abstracción para explorar otras posibilidades de comportamientos en otros dominios de
aplicación y así seguir la síntesis con nuevas soluciones.
Para concluir la exploración de comportamientos, el modelo verifica si las cadenas
creadas atienden a las entradas y salidas de la función de acción. En caso de que así se
verifique, el modelo implementa los comportamientos con abstracciones de los elementos
físicos, buscando soluciones en el nivel de estructuras (X).
Figura 67 - Formación de una cadena de comportamientos (a) y combinación de un flujo externo con la
cadena de comportamientos (b).
5.1 Introducción
Una vez definido el modelo teórico, se debe implementar, probar y evaluar por
medio de una herramienta computacional que lo reproduzca. Para ello, se implementa un
entorno simbólico que facilita la interacción con el diseñador y la herramienta. Con el fin de
reproducir dicho entorno, la herramienta debe implementar un entorno gráfico flexible y de
fácil interacción. El entorno propuesto muestra el conocimiento explorado bajo la forma de
símbolos y gráficos que facilitan la formación de alternativas. Al final de la formación, la
herramienta muestra las soluciones generadas y los componentes de esta solución.
Este capítulo describe la implementación del modelo computacional, que se ha
aplicado, a modo de ejemplo, el ámbito de muebles de oficina.
5.1.1 Lenguaje y arquitectura de implementación
Se ha implementado la herramienta con el lenguaje Python 2.4. Python es un
lenguaje de programación de alto nivel, interpretado y orientado a objeto. El lenguaje
propuesto es simple, de fácil mantenimiento y con la máxima reutilización de código. Su
arquitectura permite el uso de librerías que reducen el código y facilitan el mantenimiento
de la herramienta.
La implementación de la herramienta se basa en la arquitectura Three-tier, que
consiste en capas que implementan y encapsulan las clases. Estas clases abstraen un
conjunto de objetos con características similares. Las clases se definen por medio de
métodos y atributos que describen los estados de los objetos. La Figura 69 muestra la
división conceptual de la implementación en tres capas y un gestor de banco de datos.
operativo Windows. De esta manera, la herramienta muestra al usuario una interfaz amigable
con ventanas y símbolos.
La segunda capa de implementación se denomina capa de aplicación. Esta capa
sirve de puente entre la interfaz y la capa de comunicación con el banco de datos. Esta capa
implementa los niveles de abstracción del modelo teórico en clases y traduce toda
exploración en objetos. La capa de aplicación reutiliza el código y facilita la portabilidad de la
interfaz a otros medios, como Web, thin-client, client-server, etc.
La tercera capa se denomina capa de comunicación con el banco de datos. Esta capa
sirve de puente entre los objetos y el gestor de banco de datos. Y concentra todo control sobre
los comandos Structures Query Language (SQL), la configuración del servidor de banco de
datos y la estructura de consulta de los datos en una única capa. La relación entre las capas de
comunicación y el gestor de banco de datos se realiza con ayuda del Open Database
Connectivity (ODBC). El ODBC es una interfaz de programación que permite acceder a los
datos por medio del SQL.
La última capa de implementación se denomina banco de datos. Esta capa manipula
el conocimiento y las relaciones con ayuda del gestor de banco de datos Microsoft Access
(MA). El MA es un gestor simple, fácil de manipular y configurar y se encuentra disponible
junto con el conjunto de programas del Office Profesional.
5.1.2 Exploración y captura por medio de las capas de implementación
Las capas implementadas funcionan según se ilustra en la Figura 70. Primero, el
usuario solicita a la interfaz una exploración, por ejemplo, explorar todos los
comportamientos relacionados con una función de acción dada. En base a esta solicitud, la
interfaz envía un comando a la capa de aplicación (1). La capa de aplicación transfiere la
solicitud a la capa de comunicación con el banco de datos bajo la forma de comando (2). La
capa de comunicación traduce el comando en un comando de tipo SQL y se lo envía al gestor
de banco de datos (3). A partir del último comando se obtiene una lista con datos (4 y 5). La
capa de aplicación interpreta estos datos y los traduce en una lista con objetos (6). La interfaz
recibe esta lista de objetos y muestra el resultado al usuario.
banco de datos (3). El gestor recibe este comando y registrar la información en las tablas que
corresponden. En caso de que se realice un error, la interfaz muestra un mensaje de aviso al
usuario. En caso contrario, la interfaz considera que el envío ha sido ejecutado con éxito y
sigue con los demás procesos.
En el caso de que el usuario defina una nueva alternativa, la ventana principal crea
una nueva ventana, cuya pestaña aparece en la parte superior. Esta pestaña ayuda el
diseñador a gestionar las alternativas en formación. La Figura 73 muestra cómo activar
distintas alternativas en la herramienta.
5.2.2 Diagramas
Las clases de tipo diagrama permiten al diseñador manejar símbolos que
representan el conocimiento en la alternativa y que facilitan su manipulación en la
herramienta.
En la herramienta propuesta, se obtienen los diagramas a partir de la síntesis
orientada por los menús emergentes. Estos diagramas indican el código, el nivel de
abstracción del conocimiento y un color que identifica el origen del conocimiento. El color
amarillo indica un conocimiento definido en el inicio del proyecto y el color gris indica un
conocimiento obtenido a partir de una exploración.
La Figura 75 muestra los símbolos de los elementos que se utilizan para formar la
alternativa. Estos símbolos reproducen la misma notación definida en el modelo teórico. De
esta forma, las elipses de códigos [PF: i] y [AF: j] representan las funciones de propósito
(purpose functions) y funciones de acción (action functions) respectivamente, los
rectángulos de código [B:k] representan los comportamientos (behaviours) y los cuadrados
con código [E:p] representan las entradas del entorno (environmental input). La única
diferencia en relación al modelo teórico se presenta en las estructuras (structures), que
reproducen la imagen reducida del componente físico abstraído. Así, el usuario puede
identificar los componentes que componen una solución.
Esta ventana presenta el botón “Add function” que activa la ventana de tipo captura
(Figura 78). A través de ella, el diseñador describe una función de propósito por medio de
verbo + complemento. Los verbos utilizados pertenecen a la segunda clase presentada por
Hirtz (Hirtz, Stone et al. 2002), para evitar la ambigüedad al describir una función de
propósito. Después de elegir un verbo, la herramienta muestra su descripción en la barra
inferior de texto. El campo de complemento presenta una zona donde el usuario introduce
texto de manera libre.
La Figura 91 ilustra la ventana de tipo captura que permite describir un flujo por
medio desde los siguientes parámetros:
• Verbo (tercera clase de Hirtz),
• complemento,
una regla pero sí un orden lógico que evita la descomposición exhaustiva de las funciones de
propósito.
Después de elegir una función de propósito, la herramienta muestra el menú que se
ilustra en la Figura 94. Los comandos de este menú ejecutan las siguientes instrucciones:
1. “Explore action fuctions”: abre una ventana para explorar las funciones de
acción que se relacionan con la función de propósito seleccionada.
2. “Explore behaviours”: abre una ventana con los comportamientos que se
relacionan con la función de propósito seleccionada.
3. “Explore structures”: abre una ventana para explorar las estructuras que se
relacionan con la función de propósito seleccionada.
4. “Decompose this purpose function”: permite al diseñador descomponer
la la función de propósito en sub-funciones de propósito.
5. “Erase this purpose function”: elimina de forma automática la función de
propósito y todos sus elementos vinculados.
6. “Properties”: abre una ventana con las propiedades de la función de
propósito seleccionada.
3. “Build chain of action function”: abre una ventana para explorar las
funciones de acción cuya salida funcional atienda a la entrada de la
función de acción seleccionada.
4. “Add new environmental input”: permite introducir una nueva entrada en
el entorno. De esta forma, se puede definir una entrada aún no
considerada en el sistema de diseño.
5. “Explore behaviours input and output”: abre una ventana que explora los
comportamientos cuya entrada dirigida coincida con la entrada de la
función de acción elegida y cuya salida funcional coincida con la salida de
la misma función de acción.
6. “Explore behaviours output”: permite explorar los comportamientos cuya
salida funcional coincida con la salida funcional de la función de acción.
7. “Explore structures”: permite explorar las estructuras que se relacionan
con la función de acción seleccionada.
8. “Erase this action function” y “Properties”: ejecutan comandos similares a
las instrucciones equivalentes de la función de propósito.
Figura 95 - Menu emergente que permite explorar a partir de una función de acción
La función de acción puede mostrarse de tres formas distintas. Para ello, el menú
emergente se adapta según cada variación (Figura 96). Los tres casos se describen de la
siguiente forma:
• Función de acción sin entrada dirigida (Figura 96a): el menú muestra las
opciones para explorar comportamientos para atender a su salida
funcional.
• Función de acción con entrada dirigida y salida funcional (Figura 96b): el
menú muestra las opciones para ejecutar todos los comandos de explorar
para este nivel.
Figura 96 - Tres tipos de funciones de acción que pueden ser exploradas: a) Función de acción sin
entrada dirigida, b) función de acción con entrada dirigida y salida funcional y c) función de acción
combinada a partir de un comportamiento abstraído.
Figura 100 - Menú emergente que permite explorar a partir de una entrada del entorno
del conocimiento se analiza bajo dos aspectos: los elementos capturados y las técnicas de
captura utilizadas.
Desde el punto de vista de los elementos considerados en la captura, los menús
orientan la captura de nuevos conocimientos y nuevas relaciones entre niveles de
abstracción. Casi todos los niveles se relacionan por medio de referencias, con excepción de
las funciones de acción, comportamientos y entradas del entorno, que ligan sus relaciones
por la coincidencia entre los flujos de entrada y salida.
Desde el punto de vista de las técnicas de captura, los menús permiten capturar
elementos antes y durante la formación de alternativas. Antes de la formación, el diseñador
utiliza la técnica “bottom-up”; y durante la formación, se utiliza la técnica “top-down”. La
técnica “bottom-up” consiste en describir nuevos conocimientos a partir de los
componentes físicos hasta sus intenciones. Mientras que la técnica “top-down” parte de las
funciones de propósito y va detallando hasta llegar a los componentes físicos.
Como ejemplo de la técnica “bottom-up”, el diseñador utiliza el comando “Add
structure” en el menú emergente de la ventana principal (1). En la ventana principal,
ilustrada por la Figura 101, el usuario marca la opción “Add new structure” (2). Por medio de
la ventana abierta, el diseñador puede registrar una nueva estructura (3). Después, se pueden
añadir nuevos comportamientos, funciones de acción y funciones de propósito al banco de
datos de conocimientos de la misma manera.
Figura 101 – Comando que permite registrar una nueva estructura (“bottom-up”)
Figura 102 - Elección o exclusión de una función de acción a partir de una función de propósito (“top-
down”)
Capa de interfaz
foo = purposeFunctions()
listOfObjects = foo.ListAll()
for eachObject in listOfObjects:
print “Id: “ + eachObject.id
print eachObject.verb + “ “ + eachObject.complement
campo1.text = eachObject.id
campo2.text = eachObject.verb
campo3.text = eachObject.complement
Capa de aplicación
class purposeFunctions:
def __init__(self):
# Definicion de los atributos
self.id = None
self.verb = ""
self.complement = ""
self.parent = ""
self.childs = []
self.description = ""
def ListAll(self):
# Lista todas las funciones de propósito
func = dbPurposeFunctions()
lista = func.ShowAllOrdered()
return self.Passa(lista)
relaciones entre los niveles de abstracción. Esta capa considera la información capturada y
no la técnica de captura.
El Cuadro 2 y la Figura 104 describen el proceso de captura de conocimiento:
1. La interfaz crea una instancia de un objeto de la capa de aplicación, por
ejemplo función de propósito.
2. Después, la interfaz repasa la información de los campos para el objeto.
3. Después, la interfaz utiliza el comando Insert() para capturar la
información de este objeto en el banco de datos (1).
4. Dentro de la capa de aplicación, el objeto utiliza el comando
SearchVerbComplement(self.verb, self.complement) para
verificar la posible redundancia en el banco de datos.
5. Seguidamente, la aplicación utiliza el comando Insert() para enviar a la
capa de comunicación con el banco de datos una solicitud de captura (2).
Capa de interfaz
pfObj = purposeFunctions() # Crea un objeto de
# función de propósito
# Rellena el objeto con los datos
pfObj.verb = campo1.text
pfObj.complement = campo2.text
pfObj.Insert()
Capa de aplicación
class purposeFunctions:
def __init__(self):
# Define los atributos de una función de propósito
self.id = None
self.verb = ""
self.complement = ""
def Insert(self):
# Certifica si los datos no existen en el banco
if not self.SearchVerbComplement(\
self.verb, self.complement):
db = dbPurposeFunctions()# Abre la capa de DB
# Envía los datos
db.Insert(self.verb, self.complement)
# Obtiene el código del último objeto añadido
rows = db.GetLastId()
for i in rows:
self.id = i.lastId
Se han implementado dos nuevas clases para representar los estados inicial, final e
intermedios de un comportamiento. La clase de comportamientos utiliza un atributo para
vincular un comportamiento a este conjunto de estados.
5.3.3.5 Clase de estados
Dos clases han sido implementadas para considerar los estados. La clase entidad de
estado (entityState) considera la información sobre cada unidad de estado. Estos estados
pueden ser inicial, final o intermedio y permiten representar la información del flujo para
los estados inicial y final. La clase estados (states) contiene listas que agrupan conjuntos de
entidades de estado para formar un diagrama de estados.
La Figura 109 muestra todos los procedimientos implementados por las clases
states y entityState.
Figura 112 - Exploración con ayuda de la capa de comunicación con el banco de datos.
Capa de aplicación
class purposeFunctions:
def ListAll(self):
# Lista todas las funciones de propósito
func = dbPurposeFunctions()
lista = func.ShowAllOrdered()
return self.Passa(lista)
class dbPurposeFunctions:
def ShowAllOrdered(self):
SQLCommand = "SELECT * FROM purposeFunctions "+\
"ORDER BY verb, complement;"
db = database()
rows = db.Show(SQLCommand)
return rows
Cuadro 3 - Exploración de función de propósito por medio de la capa de comunicación con el banco de
datos.
Figura 113 - Captura con ayuda de la capa de comunicación con el banco de datos.
class dbPurposeFunctions:
def Insert(self, verb, complement):
# Envia la información en la tabla purposeFunctions
SQLCommand = "INSERT INTO purposeFunctions " +\
" (verb, complement) "+\
" VALUES ('%(verb)s', '%(complement)s' );"
i = ['verb': verb, 'complement': complement]
db = database()
db.Execute(SQLCommand % i)
Cuadro 5 - Captura de función de propósito por medio de la capa de comunicación con el banco de
datos.
Cuadro 6 - Captura de una relación entre funciones de propósito por medio de la capa de
comunicación con el banco de datos.
medio de este ejemplo, se reproducen los pasos seguidos para formar algunas de las
alternativas.
El ejemplo comienza definiendo una función de propósito y una entrada del
entorno. Al final se muestran las alternativas generadas con ayuda de la herramienta.
6.2.1 Formación de alternativas
El programa se activa con la primera alternativa vacía. A partir de esta alternativa, el
usuario registra la función de propósito “Support writing activity” (Soportar actividad de
escribir) y la entrada del entorno “Position a vertical load” (Posicionar una carga vertical).
Ambos elementos aparecen en la alternativa según se ilustra en la Figura 116.
Figura 116 - Función de propósito y entrada del entorno que forman la alternativa parcial.
Tras definir la función de propósito inicial, se exploran las funciones de acción que
atienden a la misma. Como la herramienta no sugiere ninguna función de acción, se pasa a
explorar comportamientos y seguidamente estructuras. Después de verificar que ningún
elemento atiende a la función de propósito, el usuario la descompone.
En la descomposición, la herramienta explora funciones de propósito que
subdividen la función de propósito seleccionada (Figura 117). Después, el usuario elige las
funciones “Stabilize horizontal plan” (Estabilizar plano horizontal) y “Support structure”
(Soportar estructura), para proporcionar un plano horizontal y soportar dicho plano.
Figura 117 - Resultado de la descomposición para la función de propósito "Support writing activity".
Figura 118 - Funciones que descomponen a la función de propósito "Support writing activity".
Figura 119 - Exploración de funciones de acción para la función de propósito "Stabilize a horizontal
plan".
Figura 120 - Ventana para confirmar la conexión automática entre la función de acción con la entrada
del entorno disponible.
Figura 121 - Alternativa definida después de la combinación entre función de acción y la entrada
disponible en el entorno.
comportamientos cuyas entradas y salidas con la entrada y salida de la función de acción. Por
medio de esta exploración, la herramienta proporciona los comportamiento que se ilustran
en la Figura 122, con la única opción “Stabilize horizontal plan” (Estabilizar plano
horizontal) disponible en el banco de datos.
Figura 122 - Comportamientos que resultan de la exploración a partir de función de acción “Stabilize a
horizontal plan” (Estabilizar plano horizontal).
Tras concluir una función de propósito, el usuario elige la función de propósito PF:
5 “Support structure” (Soportar estructura), a partir de la cual se obtienen las funciones de
acción que se ilustran en la Figura 125.
Figura 127 - Comando utilizado para explorar comportamientos a partir de una función de acción.
Figura 128 - Exploración de comportamientos que atienden a la función de acción "Secure structure".
La Figura 129 ilustra cómo quedarían los comportamientos combinados con las
funciones de acción.
Figura 136 - Función de acción "Regulate height" añadida a la descomposición de la función "Support
writing activity".
Figura 137 - Funciones de acción que atienden a la función de propósito "Regulate height".
Figura 138 - Funciones de acción combinadas para atender a la función de propósito "Regulate height".
Al explorar las entradas disponibles en el entorno que coincidan con las entradas de
las funciones de acción, la herramienta muestra un mensaje de aviso que se ilustra en la
Figura 139. Este mensaje comenta que no existen entradas en el entorno que coincidan con
las entradas dirigidas de las funciones de acción seleccionadas.
Figura 139 - Mensaje de aviso sobre las entradas de entorno disponibles que no atienden a la función
de acción elegida.
Así que, el usuario debe incluir una nueva entrada en el entorno para atender a las
funciones de acción. Para ello, explora entradas del entorno con el banco de datos, y se
obtienen aquellas que coinciden con las entradas de las funciones de acción (Figura 140).
Figura 140 - Exploración de entradas del entorno que pueden atender a la entrada dirigida de la
función de acción “Increase height”.
Figura 141 - Configuración de la alternativa después de renovados los enlaces entra las funciones de
acción y las entradas del entorno.
Figura 142 - Resultado final después de combinados los comportamientos y las estructuras.
De esta manera, la alternativa final formada presenta las estructuras descritas por la
Figura 143.
Figura 144 - Posibles formas de productos definidos con base en el resultado de la síntesis.
Figura 145 - Primera solución generada para la función de propósito "Support writing activity"
Figura 146 - Segunda solución generada para la función "Support writing activity".
Esta investigación propone un modelo de síntesis para el soporte del diseño que
permite al diseñador resolver un problema desde la funcionalidad del producto hasta llegar a
una abstracción física de la solución.
Las contribuciones de este modelo son:
• Permitir al diseñador representar los elementos externos (entradas o
flujos del entorno) que afectan el funcionamiento del sistema en varios
niveles de representación y ampliar la información para representar
dichos flujos, lo cual permite controlar la exploración evitando que el
número de alternativas formadas se expanda de una manera
descontrolada. Este recurso extiende la propuesta de otros modelos, ya
que utiliza más atributos para definir las entradas del entorno. Por lo
tanto, esta aportación permite aplicar los flujos del entorno a más de un
nivel de representación del conocimiento.
• Utilizar un estándar de lenguaje que evite la ambigüedad en la
representación de las funcionalidades. Esto proporciona diversas
ventajas, la principal de ellas es que se puede comenzar a diseñar sin
necesidad de adaptarse en gran medida al modelo de soporte, ya que el
punto de partida utiliza un lenguaje muy cercano al diseñador.
• Ampliar la información representada por los modelos actuales así como
las relaciones entre los niveles. Esto permite:
o Aumentar la interacción con el diseñador.
o Favorecer la exploración en el espacio de conocimientos.
o Generar redes formadas por elementos de diseño (función de
acción, comportamiento y estructura). Estas redes dan lugar a un
mayor número de posibles alternativas de solución.
o Llegar a niveles inferiores pasando por mayor o menor número
de niveles intermedios en función de cada caso concreto.
o Facilitar la exploración en otros dominios del conocimiento, ya
que comienza desde un nivel muy abstracto.
Con estas contribuciones se mejora la síntesis al permitir buscar soluciones en
otros dominios de aplicación y se reduce el tiempo y el uso de recursos durante el diseño. Y
además de esto, permite al diseñador formar alternativas de distintas maneras por medio de
distintos procesos de razonamiento.
Por otra parte, el análisis de los métodos de evaluación proporciona una manera de
examinar el modo en que estos métodos han evolucionado durante los años y durante la
evolución de los modelos de síntesis. A través de este análisis se constata que:
• La evaluación no ha sido tratada de forma relevante en la mayoría de los
modelos de síntesis, en comparación con otras tareas.
Blessing, L., Chakrabarti, A., et al. (1995). A design research methodology. ICED´1995,
Praga.
Bouyssou, D., Marchant, T., et al. (2000). Evaluation and decision models: a critical
perspective. Massachusetts, EEUU, Kluwer Academic.
Britton, G., Deng, Y., et al. (2000). Functional Design: A systems viewpoint. Singapore: 54.
Bruno, F., Giampà, F., et al. (2003). A Methodology to support designer creativity during the
conceptual design phase of industrial products. International Conference on
Engineering Design, ICED 03, Stockholm, Sweden, Design Society.
Campbell, M., Cagan, J., et al. (2003). "The A-Design approach to managing automated
design synthesis." Research in Engineering Design 14: 12 - 24.
Campbell, M. I., Cagan, J., et al. (1998a). Agent-based synthesis of electromechanical design
configurations. ASME Design Engineering Technical Conferences, Atlanta, GA.
Campbell, M. I., Cagan, J., et al. (1999). "A-Design: an agent-based approach to conceptual
design in a dynamic environment." Research in engineering design 11: 172-192.
Chakrabarti, A. (1998). Supporting two views of function in mechanical designs. AAAI 1998.
Madison.
Chakrabarti, A., Sarkar, P., et al. (2005). "A functional representation for aiding biomimetic
and artificial inspiration of new ideas." Artificial intelligence for engineering
design,analysis and manufacturing(AIEDAM) 19: 113-132.
Chandrasekaran, B., Goel, A., et al. (1993). Functional representation as design rationale.
Clement, S., Jordan, A., et al. (2004). The use of evolutionary algorithms in prototypes in
engine development at Volkswagen AG. MTZ.
Clement, S., Jordan, A., et al. (2003). The autogenetic design theory - an evolutionary view of
the design process. International Conference on Engineering Design - ICED,
Stockholm.
Cross, N. (1994). Engineering design methods. Strategies for product design. Chichester,
John Wiley & Sons.
Deng, Y. M., Briton, G. A., et al. (1998). "A Design Perspective of Mechanical Function and
its Object-Oriented Representation Scheme." Engineering with Computers 14:
309-320.
Deng, Y.-M., Britton, G. A., et al. (2000). "Constraint-based functional design verification
for conceptual design." Computer-Aided Design 32(14): 889-899.
Esterline, A. y Kota, S. (1992). "A General paradigm for routine design - theory and
implementation." Artificial Intelligence in Engineering Design, Analysis, and
Manufacturing 6(2): 73-93.
Hatchuel, A., Masson, P. L., et al. (2004). C-K theory in practice: lessons from industrial
applications. International Design Conference - Design 2004, Dubrovnik.
Hirtz, J., Stone, R., et al. (2002). "A functional basis for engineering design: reconciling and
evolving previous efforts." Research in Engineering Design 13: 65 - 82.
Horvath, I. (2000). Conceptual design - inside and outside. 2nd Seminar and Workshop
EDIPro, Poland.
Jin, Y., Li, W., et al. (2005). "A hierarchical co-evolutionary approach to conceptual design."
Cirp Annals-Manufacturing Technology 54(1): 155-158.
Li, C.-l. (1998). Conceptual design of single and multiple state mechanical devices : an
intelligent CAD approach. Mechanical Engineering. Hong Kong, University of
Hong Kong: 347.
Li, C. L., Chan, K. W., et al. (1999a). "Automatic design by configuration space: an automatic
design system for kinematic devices." Engineering Applications of Artificial
Intelligence 12: 613-628.
Li, C. L., Chan, K. W., et al. (1999b). "A configuration space approach to the automatic
design of multiple-state mechanical devices." Computer Aided Design 31: 621-653.
Li, C. L., Tan, S. T., et al. (1996). "A qualitative and heuristic approach to the conceptual
design of mechanisms." Engineering applications of artificial intelligence 9(1): 17-
31.
Li, G., Bracewell, R., et al. (2001). A knowledge framework to support engineering design.
Eighth ISPE International Conference on Concurrent Engineering.
Liu, Y., Chakrabarti, A., et al. (2000). "A computational framework for concept generation
and exploration in mechanical design further developments of function." Artificial
Intelligence in Design '00: 499 - 519.
Lossack, R. (2002). Design process and context for the support of design synthesis.
Engineering Design Synthesis. Understanding, Approaches and Tools.
Chakrabarti, A. Londres, Springer-Verlag: 213 - 227.
Maier, J. R. A. y Fadel, G. M. (2002). Comparing function and affordance as bases for design.
DETC'02 - ASME 2002 - Design Engineering Technical Conferences, Montreal,
Canada.
Pahl, G. y Beitz, W. (1986). Systematic Approach to the Design of Technical Systems and
Products. Berlin, VDI Society for Product Development, Design and Marketing: 1-
32.
Parmee, I. C., Cvetkovic, D., et al. (2000). "Multiobjective satisfaction within an interactive
evolutionary design environment." Evolutionary computation 8(2): 197-222.
Roozenburg, N. F. M. (2002). Defining synthesis: on the senses and the logic of design
synthesis. Engineering Design Synthesis. Understanding, approaches and tools.
Chakrabarti, A. Londres, Springer-Verlag: 3-18.
Saaty, T. L. (1990). How to make a decision: the analytic hierarchy process. Pitsburgh: 39.
Smart, J., Roebling, R., et al. (2006). wxWidgets 2.6.3: A portable C++ and Python GUI
toolkit. 2007.
Takeda, H., Hamada, S., et al. (1990). A cognitive approach to the analysis of design
processes. Design theory and methodology.
Takeda, H., Tomiyama, T., et al. (1992). A logical and computable framework for reasoning
in design. Design theory and methodology (DTM'92), The American Society of
Mechanical Engineers (ASME).
Takeda, H., Veerkamp, P., et al. (1990). "Modeling Design Processes." AI Magazine 11(4):
37-48.
Takeda, H., Yoshioka, M., et al. (2001). A general framework for modelling of synthesis-
Integration of theories of synthesis. International Conference on Engineering
Design - ICED'01, Glasgow, Elsevier Science.
Takeda, H., Yoshioka, M., et al. (1994). Analysis of design processes by function, behavior
and structure. The Delft Protocols Workshop, conference proceedings.
Thurston, D. L. (1991). "A formal method for subjective design evaluation with multiple
attributes." Research in Engineering Design 3(2): 105 - 122.
Tomiyama, T., Takeda, H., et al. (2003). Adbuction for creative design. ASME 2003 - Design
Engineering Technical Conference and Computers and Information in
Engineering Conference, Chicago, EEUU.
Tomiyama, T., Yoshioka, M., et al. (2002). A knowledge operation model of synthesis.
Engineering Design Synthesis. Chakrabarti, A. Londres, Springer: 67-90.
Tor, S. B., Britton, G. A., et al. (2002). "Guiding functional design of mechanical products
through rule-based causal behavioural reasoning." International Journal of
Production Research 40(3): 667-682.
Umeda, Y., Takeda, H., et al. (1990). Function, behaviour, and structure. Applications of
Artificial Intelligence in Engineering V. Gero, J. Berlin, Springer. 1: 177-194.
Vajna, S., Clement, S., et al. (2002). Autogenetic Design Theory: an approach to optimise
both the design process and the product. ASME 2002 - Design Engineering
Technical Conferences and Computer and Information in Engineering Conference,
Montreal, Canada.
Vajna, S., Clement, S., et al. (2005). "The Autogenetic Design Theory: An evolutionary view
of the design process." Journal of Engineering Design 16(4): 423-440.
Van Wie, M., Bryant, C. R., et al. (2005). "A model of function-based representations."
Artificial Intelligence for Engineering Design, Analysis and Manufacturing
(AIEDAM) 19: 89-111.
Vidal, R., Bermell, P., et al. (2002). Definicion de una arquitectura para la asistencia en el
diseño de productos. VI International Congress on Project Engineering, Barcelona.
Xu, Q. L., Ong, S. K., et al. (2006). "Function-based design synthesis approach to design
reuse." Research in Engineering Design 17: 27-44.
Yoshikawa, H. (1981). General Design Theory and a CAD System. IFIP Working Group 5.2
Working Conference, Tokyo, North-Holland.
Yoshioka, M., Nakamura, M., et al. (1993). A design process model with multiple design
objects models. Design Theory and Methodology - DTM '93.
Yoshioka, M., Nomaguchi, Y., et al. (2001). Proposal of an Integrated Design Support
Environment Based on the Model of Synthesis. DETC ASME´01 Design Engineering
Technical Conference and Computers and Information in Engineering Conference,
Pittsburg, Pennsylvania, EEUU.
Zavbi, R. y Duhovnik, J. (2001). "Conceptual design chains with basic schematics based on an
algorithm of conceptual design." Journal of Engineering Design 12(2): 131-145.
Zhang, W. Y., Tor, S. B., et al. (2002a). "Automated functional design of engineering
systems." Journal of Intelligent Manufacturing 13: 119-133.
Zhang, W. Y., Tor, S. B., et al. (2002b). "A Heuristic State-Space Approach to the Functional
Design of Mechanical Systems." The International Journal of Advanced
Manufacturing Technology 19(4): 235-244.
Zhang, W. Y., Tor, S. B., et al. (2003). "FuncDesigner a functional design software system."
International Journal of Advanced Manufacture Technology 22: 295-305.
Verbos Descripción
Acoplar Unir o juntar flujos (material, energía, señal) de tal forma que los miembros sean
independientes. Ejemplo: Un lápiz puede tener acoplado en su estructura una goma y
una pinza.
Actuar Liberar un flujo en respuesta a una señal de entrada. Ejemplo: Un circuito que libera la
(Liberar) salida de energía para encender una bombilla.
Almacenar Acumular un flujo. Ejemplo: una batería puede almacenar energía eléctrica para un
flash de una cámara.
Cambiar Ajustar el flujo de una manera predeterminada e fija. Ejemplo: La entrada de energía de
un motor puede ser regulada por un resistor variable. De esta forma, el motor puede
tener diferentes velocidades de salida.
Convertir Convertir un tipo de flujo por otro tipo. Ejemplo: Un motor convierte la entrada de
energía eléctrica por una energía de rotación.
Distribuir Causar una división de un flujo (material, energia o señal). Los bits individuales son
similar a cada uno y la ausencia de distribución de flujo. Ejemplo: Un atomizador
distribuye líquidos en proporciones muy pequeñas sobre la cabeza para sujetar los pelos
en un formato deseado.
Estabilizar Prevenir que un flujo cambie de ubicación o curso. Ejemplo: Vía de circulación de agua
o gases.
Exportar Enviar un flujo (material, energía o señal) para fuera del sistema. Ejemplo: Después de
licuar un sólido en la licuadora, el sistema exporta el material en forma más líquida.
Guiar Dar una dirección para el curso de un flujo (material, señal, energía) a través de un
camino específico. Ejemplo: Una tubería puede conducir gas o líquidos de un origen
(bombona) hasta determinado aparato en la casa (horno).
Importar Traer para dentro del sistema un flujo externo. Ejemplo: La apertura física de un
atomizador importa un sólido para dentro de su sistema.
Indicar Enseñar al usuario sobre la presencia de un flujo. Ejemplo: Un pequeño cristal en la
cafetera permite saber el nivel del agua en el recipiente.
Mezclar Combinar dos flujos (material, energía, señal) en un único flujo, de masa homogénea y
uniforme. Ejemplo: Un aparato para mezclar pigmentos, donde el resultado sale un
pigmento homogéneo y de único color.
Parar Cesar o prevenir la transferencia de flujo. Ejemplo: Una película protectora para
impedir la emisión de radios UV a través de una ventana.
Posicionar Definir la ubicación o orientación de un flujo. Ejemplo: En una máquina de café, el
sistema interno posiciona la moneda para efectuar su reconocimiento o evaluación.
Procesar Someter información a un tratamiento o método particular tomando como referencia
un número de operaciones o pasos. Ejemplo: Un ordenador procesa la identificación
del usuario antes de su entrada en el sistema.
Regular Ajustar el flujo en respuesta a una señal de entrada, la salida o entrada del flujo depende
de la característica que ese presenta. Ejemplo: Girando las válvulas para regular la salida
de líquido de un grifo.
Sentir Percibir o tomar conocimiento de la presencia de un flujo. Ejemplo: Un sensor puede
sentir la presencia de un determinado objeto en el ambiente.
Separar Aislar un flujo (material, energía, señal) en distintos componentes. Los componentes
Verbos Descripción
Acoplar Unir o juntar flujos (material, energía, señal) de tal forma que los miembros sean
distintos.
Actuar Liberar un flujo en respuesta a una señal de entrada.
(Liberar)
Almacenar Acumular un flujo.
Aumentar Aumentar un flujo en una determinada forma.
Cambiar Ajustar el flujo de una manera predeterminada e fija.
Condicionar Definir un flujo para determinado propósito.
Contener Mantener un flujo dentro de determinado límite.
Convertir Convertir un tipo de flujo por otro tipo.
Reducir Reducir un flujo hasta determinado punto fijo.
Detectar Descubrir información sobre determinado flujo.
Distribuir Causar una división de un flujo (material, energía o señal). Los bits individuales son
similares y la ausencia de distribución de flujo.
Dividir Separar un flujo.
Enlazar Acoplar flujos utilizando un flujo intermediario.
Estabilizar Prevenir que un flujo cambie de ubicación o curso.
Exportar Enviar un flujo (material, energía o señal) para fuera del sistema.
Extraer Sacar para fuera del sistema un flujo.
Guiar Dar una dirección para el curso de un flujo (material, señal, energía) a través de un
camino específico.
Importar Traer para dentro del sistema un flujo externo.
Indicar Enseñar al usuario sobre la presencia de un flujo.
Inhibir Mantener un flujo hasta que determinado comando lo libere.
Medir Determinar la magnitud de determinado flujo.
Mezclar Combinar dos flujos (material, energía, señal) en un único flujo, de masa homogénea y
uniforme.
Mostrar Revelar información sobre flujo para mente o vista.
Parar Cesar o prevenir la transferencia de flujo.
Permitir Controlar los movimientos de un flujo por una fuerza externa al dispositivo en una o
grado de más direcciones.
libertad
(DOF)
Posicionar Definir la ubicación o orientación de un flujo.
Prevenir Inhibir la actuación de determinado flujo.
Procesar Someter información a un tratamiento o método particular tomando como referencia
un número de operaciones o pasos.
Regular Ajustar el flujo en respuesta a una señal de entrada, la salida o entrada del flujo
depende de la característica que ese presenta.
Remover Sacar el flujo en partes definidas.
Rotar Fijar el movimiento de un flujo por un dispositivo en rededor de un eje.
205
Artículo A
CONVERGENCE APPROACH IN EXPERIMENTAL RESULTS
RESUMEN
Este artículo expone una investigación del Grupo de Ingeniería del Diseño de Castellón
en la generación de una mejor solución en un caso real de diseño, a través del uso del
algoritmo de búsqueda best-first search, presentado por Zhang. Además de aportar otro
punto de vista en la creación de un modelo computacional más eficiente y eficaz para el
diseño automatizado.
ABSTRACT
The process of synthesis is based on phases of divergence and convergence. Many authors
illustrate the divergence process to find better alternatives for the design requirements.
Although there are still few explanations to prevent the possible combinatorial explosion
present in complex systems. The heuristic state-space approach is an estimative process
that can manage the complexity in the functional reasoning process (convergence). Its use
differs from that of algorithms (mathematical procedures) because it is based on
commonsense general rules taken from experience. Heuristic programs are well known
for their capacity for self-learning, which can generate better optimised and more efficient
solutions for design requirements.
This article describes a research project carried out by the Engineering Design Group of
Castellón on the generation of a better solution to a real design case, through the use of
the best-first search algorithm presented by Zhang. We will therefore provide another
point of view on the creation of a more efficient computational framework for the
automated design process.
The advance of CAD systems has provided us with tools that enable the detailed
design phases of the development of a product to be widely optimised. Nevertheless,
these support systems have shortcomings in the resolution of problems during the
conceptual phase of the design process. The Engineering Design Group of Castellón
devotes part of its research to the area of support tools for solving problems in the
conceptual phase of product development, using methods and computational
frameworks to aid designers in the routine development of products.
The present work is part of a project called FiBiuS, which consists of a synthesis
system to aid the design activity. It intends to operate over a new Model Library
structure, thus allowing not only collection of the knowledge available but also help in
the routine design of new products. The system architecture is based on the Function-
Behaviour-Structure (FBS) approach and on the use of ontology frameworks aimed at
using and sharing knowledge between different applications. With this experience we
expected to identify opportunities to improve the algorithm in the following aspects: to
reach a more optimised solutions space showing more feasible alternatives, rather than
just one solution; to identify other heuristic ways to obtain better combinations and to
find more innovative alternatives in the design space.
As a way to prove the efficiency of the algorithm, the real development case
reported by Vidal et al. [3] was used to supply the system with information as a basis
for the construction of a library with behaviours, functions, constraints and environment
resources. This research, however, generated a feasible compact solution and aided
designers in the selection of alternatives in the solution space through the use of the
heuristic state-space approach.
Initially, the algorithm is supplied with all function requirements, constraints and
resources from the environment, which provides sufficient information for the
exploration process. Then, the system verifies the possible combination with existing
behaviours that satisfy the constraints; otherwise, the functions are broken down into
more sub-functions extracted from a knowledge database. After this expansion, the
algorithm creates new alternatives and selects the best one from the list.
Following these steps, finally just one solved alternative is generated. As stated
by the author, the solution is the best and most compact alternative for the problem.
hˆ ¦ (1 / r ) k
i
Where:
r is the numeric value for the behaviour present in the alternative. r (0,1)
k represents 1 for each function left unexplored or incomplete function
requirement in the alternative.
r represents the classic use of the weighted average aggregation method. In the
formula:
n
¦w r
j 1
j ij
ri n
¦w
j 1
j
Where:
Table 1 shows initial values from one of the alternatives that were studied. These
linguistic values, presented by the system, are the result of information available in the
database from the function-behaviour combination, and then the estimative calculations
are applied to rank and select alternatives.
average
1 very low 0 0 0,1 0,2 0,08
2 low 0,1 0,2 0,2 0,3 0,20
3 fairly low 0,2 0,3 0,4 0,5 0,35
4 medium 0,4 0,5 0,5 0,6 0,50
5 fairly high 0,5 0,6 0,7 0,8 0,65
6 high 0,7 0,8 0,8 0,9 0,80
7 very high 0,8 0,9 1 1 0,93
For the initial stage, a knowledge database of functions and behaviours was
created to aid the system in the reasoning process. The structure of these data uses
concepts proposed by Zhang [5] and Hirtz [2]. Specifically, Zhang defines a behaviour
structure based on object-oriented analysis, with rules, qualitative and quantitative data.
As the outcome of this exploration, a set of alternatives will be shown as a result of the
reasoning process.
The functional structure uses the assumption of Hirtz [2], which makes use of
verbs from the secondary and tertiary classes. The representation is:
Function representation
Function code – Infinitive verb + noun as a complement
Ex.:
F1 - Support a plan for drawing
This library illustrates how each function could be broken down into sub-
functions by the algorithm.
Behaviour representation
Behaviour code – Description
Purpose: Verb in infinitive + complement
Initial/ending state: Verb + complement
I/O flow of action
Driving input: intended input action
Functional output: intended output action
Ex:
B5 – Regulate by twisting
Initial/ending state: Change height of structure by twisting
Driving input: User intervention
Functional output: increase or decrease height
In this section, the use of the algorithm for designing a drafting table will be
outlined. All steps explained by the heuristic approach were applied and calculated to
prove its efficiency. We will explain how the decomposition function was obtained and
how it could solve the problem of the interpretation of functions. Then the behaviour
search will be shown using the library available, and all the alternatives generated
throughout the exploration and combination process will be calculated.
The process begins with information supplied by the designer. These data are the
function requirements, constraints and environments that are provided.
After definition of the function requirements and environment, the system built
the first alternative called A0, shown in Fig. 2, where F1 means “Support a plan for
drawing”.
Fig. 2 - Alternative 0
As presented by Zhang, this set might belong to a domain that is broad and could
involve other types of problems, which could be of a hydraulic, thermal, electric, etc.,
nature. In our case, the system makes use of a behaviour set related to the mechanical
domain, thus restricting the search process even more.
After the initial definition, a great deal of behaviour is found but none was
capable of satisfying the functional requirement. In spite of this, the system tended to
decompose the original function into more sub-functions by consulting the function
library described above.
4.2 Decomposition of function
After decomposition, the system seeks for other behaviours that should connect
with the function requirements available in the selected alternative. The system found 4
feasible behaviours that satisfied the functions and the constraints, namely:
B1 - Establish a surface
B2 – Regulate length by twisting
B3 – Divide components
B4 – Rotate plan
Through the estimative calculations, the alternatives were ordered and the best
one, the one with the lowest value was selected. In Table 2 below, the linguistic (Fuzzy)
values, k (unexplored functions) and ĥ are shown as the scores calculated using the
precepts of the heuristic state-space approach.
Alt A1.2
B1D1 B2D1 B4D1
i w r r r r r r
1 Manufacturability fairly high 0.65 high 0.8 0.52 low 0.2 0.13 low 0.2 0.13
2 Assemblability high 0.8 very high 0.925 0.74 fairly low 0.35 0.28 fairly low 0.35 0.28
3 Maintainability very high 0.925 medium 0.5 0.4625 low 0.2 0.185 low 0.2 0.185
4 Reliability high 0.8 medium 0.5 0.4 very low 0.075 0.06 very low 0.075 0.06
5 Efficiency fairly low 0.35 high 0.8 0.28 very low 0.075 0.02625 very low 0.075 0.02625
k 0 ç 11.82
Table 2 - Heuristic calculation
The selected alternative was a table whose functions and behaviour values are
shown in Fig. 6.
Fig. 6 - Alternative generated
5 DISCUSSION
5.1 Constraints
5.2 Behaviours
Evaluation is an important phase of a solution. This can verify the real efficiency
or feasibility of the results. Most products, before going on to a prototype or model
stage, might have their functions solved in number and length components that could
satisfy the requirements and constraints defined in the initial stages. The reasoning
presented here does not make use of this structured process of restudy. This gap of
information can provide problems of space used, the combination of components or
resources, and unexpected use during the life-cycle. For this reason, we propose that an
evaluation process or algorithm should be incorporated in a computable form to make
this set of alternatives more valuable for the solution to the problem.
We conclude that the algorithm under study here is efficient for problems
involving few function requirements, as shown in the course of this article. It has been
proved that its use in a computer platform can benefit designers in the creativity
process, and it could also help generate a set of more valuable and optimised solutions.
ACKNOWLEDGEMENTS
This research was supported by the Alban Programme, the European Union
Programme of High Level Scholarships for Latin America, scholarship no.
E04D030611BR, and by Bancaja project E-2004-22.
7 REFERENCES
[1] W.Y. Zhang, S.B. Tor and G.A. Britton A Heuristic State-Space Approach to the
Functional Design of Mechanical Systems, The International Journal of
Advanced Manufacturing Technology 19 (2002) 235-244.
[5] W.Y. Zhang, S.B. Tor and G.A. Britton A Prototype Knowledge-Based System
for Conceptual Synthesis of the Design Process, The International Journal of
Advanced Manufacturing Technology 17 (2001) 549-557.
[6] W.Y. Zhang, S.B. Tor and G.A. Britton FuncDesigner a functional design
software system, Int. J. Adv. Manuf. Technol. 22 (2003) 295-305.
[7] S.J. Russell and P. Norvig Artificial intelligence: a modern approach, Upper
Saddle River, N.J. Prentice Hall cop., 2003.
Artículo B
1ST IFIP TC-5 WORKING CONFERENCE ON CAI
IFIP-TC5 ULM, GERMANY. NOVEMBER 14-15 2005
1. Introduction
Product innovation is usually a hard task in a project. In each new project, designers spend
almost 40% of their project time collecting and analysing previous projects, books and
documents [1]. Hence, enterprises are looking for ways to meet consumers’ demands while
reducing time-to-market and production costs.
From a computational point of view [2, 3], routine design presents expected results through
known variables and parameters taken from an established knowledge database. Creative
design generates solutions from new variables and parameters included within the design
system. While routine design generates expected solutions from a defined solution space,
creative design generates unexpected solutions that are outside the expected solution space.
There are several computational models that automate routine design processes [4-12].
FunSION [10] generates solutions by starting out from the input/output abstraction of a
design system, subsequently explores knowledge from a static database and finally
accumulates generated ideas through three distinct levels of abstraction. Schemebuilder [5] is
an integrated software suite that assists designers from the conceptual to the embodiment
phase of design as they work in a 3D environmental input interface to generate and evaluate
solutions while exploring knowledge in the mechatronic domain. DIICAD [12] generates
solutions based on the symbolic transformations of the inputs and outputs of a design system.
A-Design [6] is a system that applies an iterative process of generation, evaluation and
management of agents to solve problems at the conceptual phase of design. FuncDesigner [8]
generates solutions at the conceptual phase of design using an iterative process of exploration,
combination and evaluation. Internally it exploits an adaptation of the A* Search algorithm.
The need to produce more creative designs together with the rising complexity of design
problems results in a higher number of functions and components in a product. Moreover, a
higher exploration potential is needed to analyse and find solutions that are more creative.
From a computational point of view, this is translated into a rise in memory usage and time
spent, which is one of the drawbacks to affording computational support for creative design.
1
The aim of the present article is to outline a computational framework that improves the
exploration process, rationalisation and storage of knowledge, and which generates design
alternatives at a very high level of abstraction. To achieve this, an adaptation of the Recursive
Best-First Search (RBFS) algorithm [13] is used in order to make progress in the field of
functional reasoning and computational models of creative design.
This research work is based on the reasoning process of Zhang [8, 14]. Zhang adapts a
functional reasoning algorithm based on the Best-First Search Algorithm (A* Search) that
generates optimised solutions for the conceptual phase of design using processes for the
exploration and combination of mechanical knowledge. His process uses heuristic
approximations to evaluate alternatives in order to guide the converge process in the solution
space. Like other models, it finds solutions by new combinations of mechanical components.
The present work is part of the initiatives carried out by the Engineering Design Group (GID)
on the development of a synthesis system, which aids design activity through a new library
structure that allows the collection of knowledge and improves the development of new
products.
The article is divided into sections that show the computable framework and its application
using data from a design experiment. Finally, it concludes with an analysis of the results.
2. Computable framework
The reasoning process proposed here starts with an abstraction of the design problem, then
resolves it through functional reasoning processes, and finishes with one single design
concept for the problem. To reach this objective, the model implements an adaptation of the
Recursive Best-First Search Algorithm, this uses recursive cycles of exploration and
combination to find the best path to the solution. During generation, the model uses a
heuristic estimation to compare alternatives and to continue converging in the solution space.
The following subsections are arranged in order to explain knowledge representation, the
algorithm of reasoning, the functional decomposition, and the equations used to evaluate the
alternatives that are generated.
2
verb-object as the standard in its variables. The environmental input entity (Figure 1c)
represents the input flow of the system. Through the flows, the model can rationalise energies
and forces that affect the design system. The alternative entity groups all the information
about the constraints used to limit the exploration, initial functions, weight of each criterion,
value of estimation, and parent alternative. Moreover, it uses a directed non-cyclic graph of
functions, behaviours, and environmental inputs to represent a solution. This abstraction has
initial functions to start the reasoning and finishes with a set of physical components.
3
Figure 2. Example of alternative and graphic simplification
These entities are logically connected with simple relations. Behaviours are connected with
functions through the functional output, and to environmental inputs through the driving
input. Each Function-Behaviour combination has specific information for the evaluation of
the alternatives generated and this is explained in section 2.4.
4
Figure 3. Pseudo-code of the reasoning algorithm
To explain the resolution process in detail, we show the steps required to solve a design
problem in Figure 4:
1. The algorithm starts by creating a blank alternative A0 :{FUNC:[None], PHY:[None]}.
It then defines the variable values like function, constraints, environmental inputs, and
weights for criteria. This can then be compounded into A0 :{FUNC:[ Fi ],
PHY:[None]}.
2. After calling the RBFS( A0 ) procedure, the algorithm verifies the completeness of the
A0 alternative. To consider an alternative as being complete, the algorithm needs to
meet both situations: a PHY list presenting only physical components and a FUNC list
presenting any functional requirement {FUNC:[None],PHY:[ B0 ... Bz ]}. At this
moment, the alternative presents functions to be fulfilled, so the algorithm calls the
Expand( A0 ) procedure. This procedure returns a set of expanded alternatives that will
replace the original one. These alternatives are called successors.
3. The procedure Expand() seeks behaviours in the database that meet the constraints and
the Fi function. With these constraint limitations, the model leads the exploration
while obeying maximum and minimum ranges of values (i.e. height, input and output,
costs, and so forth).
4. If a behaviour is obtained, the algorithm applies a procedure to decompose the
function and returns a set of sub-functions Fi1 ,..., Fn that are subsequently combined
5
into a new alternative. This function decomposition process is explained in detail in
section 2.3.
A1 : {FUNC:[ Fi1 ,..., Fn ], PHY:[None]}
5. Next, the last alternatives to be composed are returned into the successors list and
verified. If the successors list is empty, the procedure returns a null value forcing the
exploration of other available alternatives. Otherwise, the algorithm combines the
behaviours with the environmental inputs and calculates heuristic estimations for each
alternative in the successors list.
6. Next, the list of successors is ordered.
7. The best alternative evaluated in the successors list is selected and then the algorithm
calls the recursive process of the RBFS( A1 ) procedure.
8. If the selected alternative presents unattended functions, the algorithm calls the
Expand( A1 ) procedure. All behaviours that obey the constraints are found ( B1 ,..., Bn )
and included in the successors list. A new set of alternatives are generated using these
behaviours:
A1.1 :{FUNC:[ B1 ,..., Bn ], PHY:[None]} … A1.n :{FUNC:[ B1 ,..., Bn , T1 ], PHY:[None]}.
At this time, the model considers the behavioural set as functional requirements until
meets the available environmental inputs. Should any behaviour not match any
environmental input, it is later decomposed.
Sometimes a behaviour that fulfils the function causes the need to solve an additional
function that we call a ‘side effect’, which is represented as Ti. Thus, it is considered
as being an effect that results in a new function to be accomplished with another
behavioural resolution or functional decomposition. As an example, the A1.n
alternative shows a T1 side effect generated by an FB combination of the design
system, which represents another function requirement to be met.
9. After returning from the expansion procedure, each alternative is combined with the
environmental input resources available ( E1 ,..., Em ), and their heuristic estimation is
calculated.
A1.1 :{FUNC:[None], PHY:[ B1 E1,..., Bn Em ]}
10. The alternatives are scored and ordered. Then, the recursive process of the RBFS( A1.1 )
procedure is applied until the algorithm considers the alternative complete
A1.1 :{FUNC:[None], PHY:[ B1 E1,..., Bn Em ]}. Finally, the algorithm returns that
alternative as the best solution to the design problem.
6
Figure 4. Functional resolution
7
Figure 5 illustrates this decomposition process. We consider an alternative Ax with the
functional set FUNC:[Fi], i=1,2,..., n where Fi is a function unattended by any behaviour
available in the knowledge database. The algorithm then looks for sub-functions that simplify
the original function. When a function set [Fi+1,...,Fn] is defined, a new set of behaviours can
then be explored to generate a new set of alternatives. If any sub-function is found, the
algorithm returns a null value and considers this alternative as being unsolvable with the
knowledge that is available. One important benefit of the proposed model is the behavioural
resolution before the functional decomposition. This avoids the problem of being decomposed
“too finely” by the reasoning and, consequently, prevents the combinatorial explosion of the
function requirements from occurring [14].
The elucidated values are used to calculate ri , which represents the score of each FB
combination in the alternative. This value is achieved by the classic weighted average
aggregation between the ratios rij and the weights w j , where i 1,2,, m represented the FB
8
combination index and j 1,2,, n represented the index of available criteria. Equation (1)
shows this calculation.
n
¦w r
j 1
j ij
r n
(i 1,2,, m) (1)
¦w
j 1
j
To compare alternatives, ĥ is calculated by equation (2), where r is the numeric value for
each FB combination in each alternative r (0,1) and k is the number of unattended
functions.
m
§1·
hˆ ¦ ¨¨ r ¸¸ k (2)
i 1 © i¹
9
considered to be incomplete. Hence, the expand procedure is called to find successors
for the original alternative.
Figure 6. Alternative A0
3. Using the Expand( A0 ) procedure, the system seeks behaviours that meet the defined
constraints. For the actual level of exploration, the system does not find any available
behaviour set, and hence the decomposition process of functions is called. As a result,
a sub-function set is found and composed into successors. The expansion procedure
returns the A1 successor with the functions shown in Figure 7.
Functions: F2 : Stabilise plan for drawing
F3 : Position plan (at a height)
F4 : Regulate length of tilt
F5 : Change volume (occupied volume)
5. As there is only one alternative, the system calls the RBFS( A1 ) procedure.
6. For the RBFS procedure, the A1 alternative is considered as being incomplete. Hence,
casual reasoning is activated and new behaviours are explored and combined into five
possible alternatives and stored in the successors list.
B1 : Establish a plan, (it meets F2 ).
B2 : Regulate length twisting, (it meets F3 , F5 ).
10
Figure 8. Successor of the original alternative
11
A1.1 : {FUNC:[ B1 , B2 , B4 ], PHY:[None]}
A1.2 : {FUNC:[ B1 , B2 , B4 ], PHY:[None]}
A1.3 : {FUNC:[ B1 , B2 , B3 , B4 ], PHY:[None]}
A1.4 : {FUNC:[ B1 , B2 , B4 ], PHY:[None]}
A1.5 : {FUNC:[ B1 , B2 , B4 ], PHY:[None]}
7. The successors list is returned and the system combines the alternatives thus generated
with the environmental inputs and then calculates their estimations. Table 2 illustrates
an example of the estimation for the A1.2 alternative.
After this process, all successors changed and assumed the following configuration:
A1.1 : {FUNC:[None], PHY:[ B1 E2 , B2 E1 , B4 E1 ]}
A1.2 : {FUNC:[None], PHY:[ B1 E 2 , B2 E1 , B4 E1 ]}
A1.3 : {FUNC:[None], PHY:[ B1 E2 , B2 E1 , B3 E1 , B4 E1 ]}
A1.4 : {FUNC:[ F3 ], PHY:[ B1 E2 , B4 E1 , B2 E1 ]}
A1.5 : {FUNC:[ F4 ], PHY:[ B1 E 2 , B2 E1 , B4 E1 ]}
And the calculation of each alternative resulted in the following values:
hˆ1.1 12.12 , hˆ1.2 11.82 , hˆ1.3 13.23 , hˆ1.4 12.82 e hˆ1.5 12.82 .
8. After sorting the successors list, A1.2 presented the lowest value and was selected.
Subsequently, this alternative was submitted to the RBFS( A1.2 ) procedure. As the
algorithm considers A1.2 as being complete for the problem (Figure 9), the system
returns it.
A1.2 : {FUNC:[None], PHY:[ B1 E2 , B2 E1 , B4 E1 ]}.
12
Figure 9. Alternative A1.2
4. Conclusions
This work presents a computable framework of functional synthesis which generates solutions
to a problem at the conceptual phase of design by exploring the solution space with a
divergence-convergence approach. This framework was implemented and applied to an
example using data from a design experiment.
The model uses the Behavioural driven-Function-Environment-Structure (B-FES) framework
to represent knowledge, which allows the exploration and generation of alternatives at a high
level of abstraction. Additionally, an optimal exploration was also implemented through
delimiters, called constraints. The framework implements an adapted reasoning process based
on the Recursive Best-First Search algorithm. At the end of each reasoning cycle, several
alternatives are generated and evaluated by heuristic estimations in order to select the most
promising one. The objectives fulfilled with the proposed model are:
- It finds the best path to reach the goal in the shortest time using a divergence-convergence
reasoning process that restricts the number of alternatives from the outset, thus avoiding the
need to explore all the possible alternatives for a design problem.
- It reduces memory usage and time spent on solving a design problem.
- It facilitates access to previously generated alternatives.
All this contributes to increase the exploration potential in a knowledge space at a high level
of abstraction and positions functional design reasoning closer to computational models of
creative design.
13
References
[1] J. J. Shah, S. Rangaswamy, S. Qureshi and S. D. Urban, "Design History System: Data
Models & Prototype Implementation" in Knowledge Intensive Computer Aided Design.
p. 89-114, 1998.
[4] J. C. Borg, X. T. Yan and N. P. Juster, "A KICAD Tool For Pro-Active Exploration
Support To "Design Synthesis For Multi-X"" in Proceedings of Knowledge Intensive
Computer Aided Design, S. Finger, T. Tomiyama and M. Mantyla, Editors, Kluwer
Academic Publishsers. p. 296-323, 1998.
[5] R. Bracewell and J. Sharpe, "Functional Descriptions used in Computer Support for
Qualitative Scheme Generation-"Schemebuilder"" in AIEDAM. 10(4): p. 333-346, 1996.
[7] J. Penoyer, G. Burnett, D. Fawcett and S. Liou, "Knowledge Based Product Life Cycle
Systems: Principles of Integration of KBE and C3P" in Computer-Aided Design. 32: p.
311-320, 2000.
[9] Y. Liu, A. Chakrabarty and T. Bligh, "A computational framework for concept generation
and exploration in mechanical design further developments of function" in Artificial
Intelligence in Design '00. p. 499 - 519, 2000.
[10] L. Ying-Chieh, A. Chakrabarti and T. Bligh, "A computational framework for concept
generation and exploration in mechanical design" in Artificial Intelligence in Design'00,
2000.
14
[12] R. Lossack, "Design Process and Context for the Support of Design Synthesis" in
Engineering Design Synthesis. Understanding, approaches and tools, A. Chakrabarti,
Editor, Springer-Verlag: London. p. 213 - 227, 2002.
[13] S. J. Russell and P. Norvig, "Artificial intelligence: a modern approach", Upper Saddle
River, N.J. Prentice Hall cop., 2003.
[14] W. Y. Zhang, S. B. Tor and G. A. Britton, "A Heuristic State-Space Approach to the
Functional Design of Mechanical Systems" in The International Journal of Advanced
Manufacturing Technology. 19(4): p. 235-244, 2002.
[17] J. Hirtz, R. Stone, D. McAdams, S. Szykman and K. Wood, "A functional basis for
engineering design: Reconciling and evolving previous efforts" in Research in
Engineering Design. 13: p. 65 - 82, 2002.
15
Artículo C
X CONGRESO INTERNACIONAL DE INGENIERIA DE PROYECTOS
VALENCIA, 13-15 Septiembre, 2006
Abstract
While CAD systems are focused to aid the design in more detailed phases of design, the
functional synthesis models allow synthesis of solutions in conceptual phases of design,
where requirements lack clarity and remain abstracted.
Although a number of computational methods have been proposed to synthesize solutions in
conceptual design phases, most of them can only be applied to a reduced number of
solutions on routine design activities. Moreover, the syntheses process is restricted by the
implemented relations that limit the mapping sets available for the reasoning. One alternative
to solve these limitations is by the improvement of the knowledge representation and by the
implementation of new mappings between elements of different abstraction levels.
Resumen
Mientras que los sistemas CAD están dirigidos al soporte del diseño en las fases de mayor
detalle, los modelos de síntesis funcional permiten la síntesis de soluciones en la fase
conceptual, donde los requerimientos presentan menor claridad y mayor abstracción.
Aunque en los últimos años se han propuesto numerosos métodos computacionales para la
síntesis de soluciones en la fase conceptual, la mayoría de métodos es aplicable a un
número muy restringido de soluciones para diseños rutinarios. Además el proceso de
obtención de soluciones también está restringido por las relaciones implementadas en estos
modelos, que permiten sintetizar soluciones a través de un conjunto muy delimitado de
conexiones entre conceptos. Una de las vías para ampliar las posibilidades de síntesis de
estos modelos es mejorando la representación del conocimiento para soportar el proceso de
síntesis de soluciones e implementando nuevas relaciones entre elementos de distinto nivel
de abstracción.
El presente artículo presenta una breve comparación entre los modelos de representación
del conocimiento en diseño y posteriormente se concluye con algunas posibles mejoras con
el fin de facilitar y enriquecer el proceso de síntesis.
Palabras clave: Representación del conocimiento, modelo de síntesis
1. Introducción
Durante el proceso de diseño, se explora y combina una gran cantidad de conocimiento
implica capturar esta información y transformarla en datos que puedan ser almacenados y
manipulados computacionalmente.
Para analizar la representación del conocimiento en los modelos de diseño, es necesario
remontarse a los primeros modelos, que describen el diseño como el Dado que los modelos
de síntesis permiten llegar a una solución partiendo de un problema, la representación del
1
conocimiento debe abarcar tanto como ellas soluciones [1]. Uno de los marcos comunes de
representación es el function-behaviour-structure (FBS).
Si bien, los conceptos de function, behaviour y structure venían utilizándose desde antes,
fue en el año 1990 cuando se definieron de forma clara y cuando se propusieron como
marco para modelar y representar un sistema considerando su funcionalidad [2-5]. En el
marco FBS (Function-Behaviour-Structure), function representa las funciones que el diseño
desempeña; structure representa los elementos físicos de la solución y behaviour actúa
como enlace entre F y S. Para representar la estructura, algunos autores reflejan los
estados internos y externos de un elemento físico [2], mientras que otros reflejan elementos
de un artefacto y sus relaciones [5].
En la síntesis de soluciones el behaviour se deriva a partir de una funcionalidad
intencionada para, a partir del mismo llegar a una solución. Y cuando se ha definido una
solución, se deduce el behaviour de ésta para evaluar si la solución alcanza la funcionalidad
esperada. El behaviour por tanto, se relaciona con el estado físico de un diseño, tanto si
este estado varía con el tiempo como si permanece estático.
Los conceptos de función, comportamiento y estructura ofrecen un lenguaje común con que
es posible analizar la representación del conocimiento en los modelos computacionales de
soporte de diseño en la fase conceptual, de modo que el problema es representado por las
funciones, la solución es representada por las estructuras y el comportamiento enlaza
ambos.
Este marco es uno de los más aceptados por la comunidad científica, ya que la mayoría de
los modelos de síntesis representan el conocimiento basándose en la referencia de los
conceptos de función, comportamiento y estructura [2, 5-8].
Durante la síntesis, las funciones de un diseño admiten diferentes enfoques en su
representación. Cada enfoque tiene como objetivo describir las necesidades del diseñador o
las funcionalidades realizadas por un producto. En la bibliografía científica se identifican tres
enfoques: el enfoque orientado al componente o a la estructura, el enfoque orientado a las
intenciones del diseñador y el enfoque orientado al proceso.
En el enfoque orientado al componente o la estructura, Dorst, Far, Kitamura, Chakrabarti y
Deng representan las funciones con una orientación hacia la solución o a los componentes
de esta solución [7-11], también manifiesta la interacción físicas entre dos objetos o entre un
objeto y su entorno. Para ese tipo de enfoque se puede terner funciones como “suministrar
energía mecánica” o “convertir energía eléctrica en energía mecánica”.
En el enfoque orientado a las intenciones del diseñador, Dorst, Far, Chakrabarti y Deng
coinciden en que las funciones deben describir los deseos, intenciones y necesidades desde
el punto de vista del diseñador (humano). Su objetivo es describir una observación humana
o una representación mental de una funcionalidad en mundo real [7, 8, 10, 11]. Un ejemplo
de función orientada a las intenciones sería “lavar ropa”.
El enfoque orientado al proceso es descrito en los artículos de Kitamura y Mizoguchi [9, 12],
en el que la función se define como los fenómenos que pueden ocurrir en cada artefacto
pero de formar que sea independiente de los componentes reales, como por ejemplo la
función “definir una acción bajo determinado efecto” o “parar el sistema caso ocurra un
efecto no deseado”. La Figura 1 muestra una breve comparación entre los diferentes
enfoques encontrados en la bibliografía científica.
2
Figura 1- Comparación entre enfoques de la representación funcional de los modelos.
El enfoque operacional y el enfoque centrado en el proceso son muy similares, de modo que
los modelos recientes de soporte de la síntesis utilizan dos enfoques para la función: uno
intencional y otro que en algunos modelos es de tipo operacional y en otros orientado al
proceso.
En el siguiente apartado se muestra un breve estado del arte sobre la forma en que los
modelos representan el conocimiento.
3
componentes físicos capaces de ejecutar el comportamiento requerido para obtener la
salida a partir de la entrada.
Desde el punto de vista semántico, las tres entidades (función, comportamiento y estructura)
utilizan atributos relacionados con el dominio de aplicación (mecánico, eléctrico, etc). Las
funciones consideran atributos sobre los tipos de entrada, la cantidad de esfuerzo y la
cantidad de flujo. Los comportamientos exhiben atributos de relación entre esfuerzos y flujos
para describir las ecuaciones que describen el comportamiento y que reflejan leyes de la
teoría de sistemas, como las leyes de Kirchoff, etc. Y las estructuras utilizan atributos tale
como la inercia, capacidad y resistencia de los elementos físicos.
En la sintaxis, el autor utiliza la forma matemática para las tres entidades, estableciendo
valores fijos para las variables de fuerza, velocidad, momento, etc. Los comportamientos
utilizan valores matemáticos bajo la forma de ecuaciones paramétricas, que describen la
relación existente entre las entradas y salidas de cada posible elemento físico. Y las
estructuras abstraen la geométrica de los posibles componentes físicos, aunque evite
describir informaciones espaciales (como por ejemplo: espacio ocupado, la posición
geométrica, etc.)
En lo referente a las relaciones, el modelo SS conduce la síntesis por medio de conexiones
F → B → S . La función se relaciona con el comportamiento a través de un atributo que
permite al modelo compartir información sobre energías y movimientos (entrada/salida)
involucrados en el funcionamiento del sistema. Este atributo recibe el nombre de power-
spine. El nivel de estructura se enlaza con el comportamiento por una relación directa,
donde para cada comportamiento explorado siempre habrá una estructura disponible.
La Figura 2 expone la semántica, la sintaxis y los atributos de relación existentes en la
representación del modelo SS.
4
de ecuaciones paramétricas, que sirven de referencia para que un método de evaluación
pueda simular los movimientos exhibidos por cada componente. En este modelo, los autores
no describen el nivel de estructura.
Desde el punto de vista semántico los autores describen la función por medio de dos
conjuntos de matrices: una que hace referencia a la transformación de movimiento (motion
transformation matriz – MTM) y otra que hace referencia a las restricciones de movimiento.
Para la sintaxis de los atributos, el modelo utiliza la forma matemática, utilizando símbolos
para representar las funciones (Figura 3a) y el comportamiento utiliza ecuaciones
paramétricas de movimiento (Figura 3b) que reemplazan la información simbólica de
movimiento (MTM) contenida en las funciones, en una matriz de parámetros cualitativos
sobre los movimientos.
(a) (b)
Figura 3 - Función y comportamiento según el modelo KBB [15].
5
Para relacionar los niveles, el modelo KBB utiliza la conexión F → B , donde la
representación matricial de las funciones sirve de base para que los símbolos existentes
sean sustituidos por ecuaciones paramétricas. Esta sustitución transforma la matriz
funcional en una Matriz Paramétrica de Movimiento y permite al diseñador simular los
movimientos mecánicos al final de la síntesis.
La Figura 4 exhibe una simplificación de la semántica, sintaxis y relaciones existentes en el
modelo de representación KBB.
6
Figura 5 – Representación semántica y sintáctica y resumen de relaciones del modelo FuncSION
7
Datos de Entrada( );
Datos de Salida( );
Anti Ciclos infinitos( );
Buscar Final del Árbol( );
Prevenir Efectos no deseados( );
......
(a) (b)
Figura 6 - Ejemplo de comportamiento y estructura en el modelo HSA [17].
Para conectar los tres niveles de abstracción durante la síntesis, el modelo permite
relaciones de tipo F → B → S . En la relación entre función y comportamiento se utiliza el
atributo lingüístico de nombre de función. Como el nivel de comportamiento encapsula la
estructura, la relación entre estos es directa. El modelo incorpora una entidad adicional que
considera los flujos externos del entorno para ayudar a controlar la formación de cadenas de
comportamientos.
La Figura 7 muestra la semántica, la sintaxis y los atributos de relación existentes en el
modelo de representación HSA.
8
funcional) esperadas, y los estados inicial y final. La sintaxis de los atributos de la función de
acción puede asumir ambas formas de codificación (lenguaje natural y forma matemática).
La semántica del comportamiento (Figura 8c) exhibe las mismas informaciones de una
función de acción pero incluye otros valores sobre las entradas y salidas no esperadas en el
sistema. Así, los atributos de comportamiento considerados son: las entradas/salidas
esperadas y no esperadas de flujo de objeto (intended/unintended input, intended/uninteded
output), entradas y salidas intencionadas y no intencionadas de flujo de acción (driving input,
unintended input, functional output, side effects), y los estados de transición. Para la sintaxis
de los atributos de comportamiento, el autor recomienda también el uso de ambos
lenguajes.
Para conectar los niveles, el modelo utiliza una relación de tipo F → B → S . Este modelo
difiere de los demás en la división del nivel funcional en dos tipos de abstracciones: la
intencional (función de propósito) y la operacional (función de acción). Para enlazar ambos
niveles de funciones se utiliza un atributo de función de propósito. Para enlazar una función
de acción con un comportamiento y el comportamiento con la estructura, el modelo utiliza
los atributos de estados y de entradas/salidas de acción o objeto.
La Figura 9 muestra una simplificación sobre la semántica, la sintaxis y atributos de relación
presentados en el modelo de representación TFMF.
9
Figura 9 - Simplificación semántica, sintaxis y relaciones en el modelo TFMF.
10
• Detalle de los niveles de abstracción – El modelo debe añadir información en algunos
niveles para ampliar el ámbito de aplicación a otros dominios
• Información sobre evaluación – Incluir en algunos niveles de abstracción información
para evaluar las funciones y alternativas durante la síntesis, con el fin de ayudar a
converger en el espacio explorado y evitar la acumulación de un gran número de
alternativas de solución.
• Aumentar las relaciones entre los niveles – Describir y representar las relaciones entre
los niveles, de forma que puedan aplicarse fácilmente al desarrollo de un modelo
computacional. Además, es conveniente añadir nuevas relaciones y explicitar los
atributos necesarios para implementarlas, con el fin de proporcionar más caminos a
través de los cuales encontrar soluciones, facilitando el proceso de síntesis de
soluciones.
• Considerar los Flujos del Entorno – Incluir en el modelo de representación un nivel que
describa los flujos externos y que interaccione no sólo con parte de los niveles de
conocimiento representado, sino con todos ellos (función, comportamiento y/o estructura
y las subdivisiones entre estos).
A partir de los aspectos descritos, se espera proponer un nuevo modelo de representación
de diseño que pueda incluir nuevos detalles, nuevas relaciones y nuevas informaciones para
facilitar la síntesis en otros modelos computacionales.
4. Referencias
[1] Chakrabarti A., (Phd) Designing by Functions, PhD, Department of Engineering,
University of Cambridge, Cambridge, 1991.
[2] Umeda Y., Takeda H., Tomiyama T. and Yoshikawa H., "Function, Behaviour, and
Structure", Gero J., ed., Applications of Artificial Intelligence in Engineering V, 1 Springer,
Berlin, 1990, 177-194.
[3] Takeda H., Veerkamp P., Tomiyama T. and Yoshikawa H., "Modeling Design Processes",
AI Magazine, Vol.11 (4), 1990, pp.37-48
[4] Gero J., "Design Prototypes: A Knowledge Representation Schema for Design", AI
magazine, Vol.11 (4), 1990, pp.26 - 36
[5] Gero J. and Kannengiesser U., "The Situated Function-Behaviour-Structure Framework",
Gero J., ed., Artificial Intelligence in Design 02, 2002,
[6] Takeda H., Yoshioka M., Tomiyama T. and Shimomura Y., Analysis of Design Processes
by Function, Behavior and Structure, The Delft Protocols Workshop, conference
proceedings., 1994.
[7] Deng Y., "Function and Behavior Representation in Conceptual Mechanical Design",
Artificial intelligence for engineering design,analysis and manufacturing - AIEDAM, Vol.16
2002, pp.343-362
[8] Dorst K. and Vermaas P.E., "John Gero’S Function-Behaviour-Structure Model of
Designing: A Critical Analysis", Research in Engineering Design, Vol.16 2005, pp.17-26
[9] Kitamura Y. and Mizoguchi R., "Ontology-Based Systematization of Functional
Knowledge", Journal of Engineering Design, Vol.15 (4), 2004, pp.327-351
[10] Chakrabarti A., Supporting Two Views of Function in Mechanical Designs, AAAI 1998,
Madison, 1998.
11
[11] Far B.H. and Elamy A.H., "Functional Reasoning Theories: Problems and Prespectives",
Artificial Intelligence for Engineering Design, Analysis and Manufacturing (AIEDAM), Vol.19
2005, pp.75-88
[12] Mizoguchi R., "Tutorial on Ontological Engineering - Part 1: Introduction to Ontological
Engineering", OhmSha&Springer, ed., New Generation Computing, 4 2003, 365-384.
[13] Chakrabarti A. and Bligh T.P., "A Scheme for Functional Reasoning in Conceptual
Design", Design Studies, Vol.22 2001, pp.493 - 517
[14] Ulrich K.T. and Seering W.P., "Synthesis of Schematic Descriptions in Mechanical
Design", Research in Engineering Design, Vol.1 (1), 1989, pp.3-18
[15] Kota S. and Chiou S.-J., "Conceptual Design of Mechanisms Based on Computational
Synthesis and Simulation of Kinematic Building Blocks", Research in Engineering Design,
Vol.4 1992, pp.75-87
[16] Liu Y., Chakrabarti A. and Bligh T., "A Computational Framework for Concept
Generation and Exploration in Mechanical Design Further Developments of Function",
Artificial Intelligence in Design '00, 2000, pp.499 - 519
[17] Zhang W.Y., Tor S.B. and Britton G.A., "A Heuristic State-Space Approach to the
Functional Design of Mechanical Systems", The International Journal of Advanced
Manufacturing Technology, Vol.19 (4), 2002, pp.235-244
Agradecimientos
This research has been supported by the Spanish Ministry of Science and Technology, DPI
2002-04357-C03 and by the Programme Alban, the European Union Programme of High
Level Scholarships for Latin America, scholarship no E04D030611BR.
12
Artículo D
X CONGRESO INTERNACIONAL DE INGENIERIA DE PROYECTOS
VALENCIA, 13-15 Septiembre, 2006
Abstract
As design problems become more complex and design lead time is more pressing, designers
need supporting tools to generate and evaluate new concepts. One of the major drawbacks
of traditional CAD technology is that it cannot perform functional design to automate concept
generation based on information provided in a set of specifications. Over the past years,
different models for functional design automation and for design evaluation have been
proposed to assist designers during conceptual phase.
Keywords: evaluation models, functional synthesis models, design automation
Resumen
A medida que los problemas de diseño se van volviendo más complejos y el tiempo de
especificación de diseño más apremiante, los diseñadores necesitan herramientas auxiliares
para generar y evaluar los nuevos conceptos. Uno de los principales inconvenientes de la
tecnología CAD tradicional es que no permite realizar un diseño funcional para automatizar
la generación de conceptos basados en información aportada como un conjunto de
especificaciones. En los últimos años, se han propuesto diferentes modelos para la
automatización del diseño funcional y la evaluación de conceptos, para ayudar a los
diseñadores durante la fase conceptual.
Palabras clave: modelos de evaluación, modelos de síntesis funcional, automatización del
diseño
1. Introduction
Companies need to produce innovative products in an increasingly competitive market place.
In the conceptual phase of the design process, a large number of design options have to be
generated and evaluated.
The major drawbacks of traditional CAD technology are that it cannot perform functional
design to automate concept generation based on the information provided in a set of
specifications, that it lacks the knowledge to make decisions, and that it is not able to draw
conclusions from the available, inadequate and approximate information.
During the last years, different models for functional design automation and for design
evaluation have been proposed to assist designers during the conceptual phase. There are
two major issues that must be addressed to achieve effective support for conceptual design.
First, the concept generation process of conceptual design is hardly known. Cognitive
models of conceptual design are being explored but it will still take time for this knowledge to
be applicable to computational design models. Another important issue is the lack of
quantitative information at the conceptual design stage [1]. This situation makes difficult
establishing evaluation criteria to support conceptual design.
1
The main focus of this paper is to present a new classification of the evaluation processes
within functional synthesis models to better understand how the evaluation of functions and
alternatives during the conceptual phase is done.
Traditionally, evaluation models have focused on the evaluation of alternatives. Classification
of these models is related with the selection, importance and measure of the criteria and
about how to evaluate several criteria [2].
A different classification is presented by Green [3] for computer-based evaluation models.
One of the issues considered is the evaluation basis: design models use four distinct
evaluation processes to analyse their solution spaces, and to explore knowledge from a
database. As presented by the author, evaluation models compare the following pairs:
concept-concept, concept-specification, specification-knowledge and concept-knowledge.
Current models of functional synthesis belong to the specification-knowledge basis. This
evaluation basis involves direct comparison between the target criteria values in the product
design specifications and the design cases held in the knowledge base. Thus, it reveals
potential designs already in the knowledge base, allowing for evaluation and creation of new
concepts.
The classification proposed in this paper includes concepts from evaluation models for
alternative solutions, concepts defined by Green [3], and new concepts derived from function
decomposition during the design process using functional synthesis models.
The following sections describe the classification proposed, the models used by each
functional synthesis model according to the type of object evaluated, the evaluation of
explored functions, the ways to extract criteria and their weights, the values used to define
the degree of proximity between the alternatives and the criterion, and which models are
used to evaluate and select the best alternatives in the solution space.
2
guided by this classification table. To evaluate the solution space, the model ranks
alternatives based on number of components.
• Li et al.’s [7, 8] Automatic Design by Configuration Space (ADCS) is similar to the
previous framework, although differing from it in the way it represents and evaluates
functions and alternatives. In this model, functions are expressed by their qualitative
efforts, motions, and motion constraints. Functions are selected by estimating the
kinematics motions using a mathematic approximation. The solution space is
evaluated considering the best alternative with minimum number of devices.
• Heuristic State-space Approach (HSA) of Zhang et al. [9] is a synthesis model that
uses a functional solution algorithm based on an adapted best-first search algorithm.
To solve a design problem, a heuristic estimation guides the designers’ intention to
an optimal solution. To represent this solution, a Behaviour Driven-Function-
Environment-Structure (B-FES) approximation is used. This representation takes into
account the functions, behaviours, structures, and flow from environments to abstract
components and intentions. This model uses a functional evaluation to guide the
exploration, meeting the functional requirements of the system. It estimates a degree
of proximity between alternatives and project specifications to evaluate the solution
space.
• Chakrabarti’s FuncSION [10, 11] is a design software based on a computational
model that solves mechanical design problems using three computable
environments, i.e. Topological synthesis, Spatial synthesis, and Physical synthesis
environments. For each design step, the software uses specific forms to reduce the
solution space. At the end of the problem-solving process, the user selects the best
alternative grouped by a heuristic approximation, represented in a 3D visualization of
the generic physical representation.
• Jin et al.’s [12] Hierarchical Co-evolutionary Design (HiCED) is a problem-solving
model based on genetic algorithms. The model uses a binary representation of
functions and means to solve a design problem, and evaluates the generated
solutions by means of a fitness function. The fitness function considers criteria related
to the abstraction of a design solution. E.g. structural connection of functions, flows,
and mapping of means with inputs and outputs.
3. Evaluation models
Each studied model uses methods to evaluate the functional elements explored and
alternatives developed during the reasoning process. To better understand the way these
models evaluate functions and alternatives, a classification was built. This classification
considers the evaluation purpose, the domain of the design, the criteria used, and the form
each model selects elements from the solution space. Table 1 shows this classification in
detail. The aspects analysed by the classification are defined below:
• Object of evaluation: Object evaluated by the method. E.g. alternative and/or function.
• Functional synthesis: Model by which functions are built or decomposed during the
functional reasoning process, e.g. function-mean trees, input/output relation,
characteristics search, best-first search, heuristics search, etc.
• Functional evaluation: Model used to evaluate functions from the explored space, e.g.
best specifications, heuristics, rules based, fuzzy based, etc.
• Alternative criteria: Model by which criteria are extracted to evaluate alternatives, e.g.
specifications, requirements, and/or restrictions.
3
• Criteria importance: Model used to identify the degree of importance of each criterion,
e.g. estimation, statistic processes, eigenvectors, etc.
• Criteria valuation: Model used to define performance of the alternative related to each
criterion, e.g. simulation, utility function, fuzzy based, estimations, etc.
• Alternative evaluation: Evaluation of alternative solutions is performed using methods
like highest rank, weighted sum, heuristics, evolutionary algorithms, etc.
Classification
Functions Alternatives
Object of Criteria
Synthesis models Synthesis Evaluation Criteria Valuation Evaluation
evaluation importance
Initial Design Functions Characteristics Best
Requirements Estimation Utility function Weighted sum
Selection (IDS) Alternatives search specifications
4
The KBB framework uses a functional building block which describes only primary functions
without considering constraints, physical descriptions, or manufacturing processes. These
functions can be decomposed into mechanisms and devices. The physical abstraction of
elements allows the mapping of abstract functions to alternate structures of physical
artefacts. During the functional decomposition process, the model discovers ways to
decompose a given function into subfunctions or components based on the input and output
relation. Then, an alternative in function-level is lead to a different design configuration. The
described decomposition process is represented by motion transformation matrices, which
are matched against a library of matrices (Motion Transformation Matrix and sequence of
Constraint Matrices). During the decomposition process, the synthesis model matches
desired MTM against building block MTMs. The output of the first element is treated as the
input to the second element and so on. If a suitable match is not found, the desired MTM is
then decomposed into a series of subfunction matrices. This decomposition process is
automated by performing matrix manipulations. Kota and Chiou [5] present three different
types of matrix manipulation techniques, e.g. column shifting, row shifting, and
decomposition matrix.
The HSA model uses pre-registered function-mean trees to divide a complex problem into
less complex subfunctions. Thus, a new design alternative is developed with the new
functional requirements. Subsequently, the model verifies whether some or all of the
functional requirements are satisfied in the environment or not, and match the corresponding
requirements to update this new alternative. After the evolution of the alternative, the model
ranks all the unexplored design alternatives, and selects the best for further causal
behavioural reasoning unless the selected alternative is already considered a solution. If the
previous functional requirement cannot be decomposed, this alternative is discarded and the
next from a list of alternatives is selected for the reasoning.
The QHA model uses the best-first search to guide the functional synthesis of the solution
space. The design process proceeds by comparing the differences in characteristics in the
input and output motion, and identifying the appropriate function-classification table. Devices
with the corresponding required functions are retrieved. These potential devices are then
ranked by counting the number of relevant functions they provide.
The ADCS model synthesizes a solution by retrieving kinematic pairs with appropriate
shapes. The solution is represented by a method called configuration space (Cspace). This
process starts with initial design specifications, and appropriate behaviours are sought from
the Cspace of all kinematic pairs in the library. If some requirements are not satisfied, a new
specification is built, and the process of searching from the Cspace is repeated. Then,
another kinematic pair is retrieved. The synthesis process is implemented by a heuristic
searching algorithm with backtracking. When backtracking to previous problems occurs, a
problem-handling routine is invoked to identify new Cfeatures that partially realize the
required elemental function. This leads to the formation of a new specification, and thus the
retrieval of an additional kinematic pair.
FuncSION uses synthesis assumptions divided into three levels: a kind synthesis which
generates ideas at the topological level, a spatial synthesis where the alternative spatial
configurations are synthesized, and the physical synthesis, which can generate alternative,
qualitative physical embodiments for each of these spatial configurations. These three
synthesis phases extract elements from a pre-existing solutions and classified library based
on an object-oriented paradigm. The synthesis process is guided by an exploration of the
knowledge base where the maximum usable number of elements is used; all possible
combinations of these elements are synthesized, following rules of input and output
connection.
5
The HiCED model begins the design process abstracting a solution by functions and means.
Functions are decomposed and more specific functions and means evolve to form complete
design concepts. A grammar-based approach is adopted for function decomposition, and a
co-evolution process of functions and means is introduced for automated function structuring
and function-means mapping at each layer of decomposition.
6
expansion rule, and termination rule. The action-based rules refer to the action performed by
functions, which are divided into action decomposition rules and action expansion rules.
In the IDS Model, the value goodness-of-match, taken from the returned model pair, gives
information to the evaluation about each iterative synthesis of function. For each
specification, the model returns a list of pairs (mi , gomi ) , where mi is an element and gomi
0 ≤ gomi ≤ 1 is a measure, called goodness-of-match. Generally, there is some threshold
where the pair is not included into the range. If the output list is empty, then the simple
specification has no solution. When more than one element is found, the element pairs are
selected into a rank, oriented by the gomi value. The highest value represents the best
element in this rank.
The QHA model calculates an aggregation of the relevant functions requirements met by
components. This calculation exposes best devices that provide the maximum number of
required functions that satisfy the design requirements.
7
is defined for certain means in a combination table. This preference rules indicates the
likelihood a means is selected during the design process.
8
use rank alternatives to compare their performance of motion. FuncSION evaluates this kind
of motions in a different manner; the model uses a graphical interface to support the
continuity and reciprocity evaluation of components.
4. Conclusions
As design problems become more complex and design lead time is more pressing, designers
need supporting tools to generate and evaluate new concepts. This paper presents a new
classification of issues related with the evaluation process of functional reasoning models
and a subset of functional models is described according with this classification.
The newest functional design models include evaluation of alternatives, but in all cases, the
evaluation process in the functional design models analysed is quite simple compared to the
evaluation models for just alternative evaluations presented in the literature. This remark may
be used as a recommendation for the improvement of future functional design models.
Future works involve a testing of a wider range of functional reasoning models and the
development of new evaluation processes for functions and alternatives selection.
References
[1] Thurston D.L., "A Formal Method for Subjective Design Evaluation with Multiple
Attributes", Research in Engineering Design, Vol.3 (2), 1991, pp.105 - 122
[2] Bouyssou D., Marchant T., Pirlot M., Perny P., Tsoukiàs A. and Vincke P., "Evaluation
and Decision Models: A Critical Perspective", Kluwer Academic, Massachusetts, 2000.
[3] Green G., "Towards Integrated Design Evaluation: Validation of Models", Journal
Engineering Design, Vol.Vol 11 (2), 2000, pp.121-132
[4] Esterline A. and Kota S., "A General Paradigm for Routine Design - Theory and
Implementation", Artificial Intelligence in Engineering Design, Analysis, and Manufacturing,
Vol.6 (2), 1992, pp.73-93
[5] Kota S. and Chiou S.-J., "Conceptual Design of Mechanisms Based on Computational
Synthesis and Simulation of Kinematic Building Blocks", Research in Engineering Design,
Vol.4 1992, pp.75-87
[6] Li C.L., Tan S.T. and Chan K.W., "A Qualitative and Heuristic Approach to the Conceptual
Design of Mechanisms", Engineering applications of artificial intelligence, Vol.9 (1), 1996,
pp.17-31
[7] Li C.L., Chan K.W. and Tan S.T., "Automatic Design by Configuration Space: An
Automatic Design System for Kinematic Devices", Engineering Applications of Artificial
Intelligence, Vol.12 1999, pp.613-628
[8] Li C.L., Chan K.W. and Tan S.T., "A Configuration Space Approach to the Automatic
Design of Multiple-State Mechanical Devices", Computer Aided Design, Vol.31 1999, pp.621-
653
[9] Zhang W.Y., Tor S.B. and Britton G.A., "A Heuristic State-Space Approach to the
Functional Design of Mechanical Systems", The International Journal of Advanced
Manufacturing Technology, Vol.19 (4), 2002, pp.235-244
[10] Liu Y., Chakrabarty A. and Bligh T., "A Computational Framework for Concept
Generation and Exploration in Mechanical Design Further Developments of Function",
Artificial Intelligence in Design '00, 2000, pp.499 - 519
9
[11] Chakrabarti A., Langdon P., Liu Y. and Bligh T., "An Approach to Compositional
Synthesis of Mechanical Design Concepts Using Computers", Chakrabarti A., ed.,
Engineering Design Synthesis. Understanding, Approaches and Tools, Springer-Verlag,
London, 2002, 179 - 194.
[12] Jin Y., Li W. and Lu S.C.Y., "A Hierarchical Co-Evolutionary Approach to Conceptual
Design", Cirp Annals-Manufacturing Technology, Vol.54 (1), 2005, pp.155-158
Aknowledgements
This research has been supported by the Spanish Ministry of Science and Technology, DPI
2002-04357-C03 and by the Programme Alban, the European Union Programme of High
Level Scholarships for Latin America, scholarship no E04D030611BR.
Correspondence
Dioclecio Camelo, Dr. Rosario Vidal and Dr. Elena Mulet.
University Jaume I, Department of Mechanical Engineening and Construction, Engineering Design
Group (GID). Campus Riu Sec, Castellón, Spain.
Tel. 34 964729252. Fax: 34 964 728106. e-mail: vidal@emc.uji.es. http://www.gid.uji.es
10
Artículo E
INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN, ICED’07
28 - 31 AUGUST 2007, CITÉ DES SCIENCES ET DE L'INDUSTRIE, PARIS, FRANCE
ABSTRACT
For years, CAD systems have assisted many design tasks. These systems help to capture and control
information in the final stages, when the product has a defined form and function. In spite of the
advances that have been made, knowledge in the preliminary stages is still an incipient issue for
engineering design researchers. For this reason, functional representation remains a challenge that has
still to be solved.
Many of the synthesis models that are currently available perform cycles of exploration, generation
and evaluation, but they do not allow for designer intervention [1]. Yet, the most recent models
consider that designer interaction during synthesis is essential to achieve better results [2-5].
From the point of view of knowledge representation, few models are capable of capturing/representing
such a wide range of information as that used during a real synthesis process. Most of the models that
have been studied restrict their representation to the mechanical design area and most of them
synthesize concepts by means of specific reasoning methods (e.g. input-output relation, cause-effect
relation, bond-graph, function-means tree, etc.).
In this work we took an analysis of function and behaviour representation of the most significant
synthesis models as the basis for some potential improvements. The aim of the present work is
therefore to define a representation scheme which considers these improvements and seeks to
accomplish the following goals: facilitate the intervention of designers during synthesis cycles and
return to higher levels of abstraction in the design process in order to generate alternatives.
This research work introduces a knowledge representation and reasoning scheme to support the design
process in the early stages of design; this will in turn facilitate the interaction of the designer during
synthesis and the representation of a wide range of knowledge within different knowledge domains.
Keywords: function and behaviour representation, support conceptual design, functional reasoning
1 INTRODUCTION
The design of engineering products is one of the most important contributions to wealth generation in
industrial nations and a strategic aspiration of many developing economies. It is therefore not
surprising that a great deal of scientific research is currently being conducted in order to understand,
optimise and support the processes and activities involved in the design and production of engineering
products [6].
It is accepted that the design activity can be divided into four phases: clarification of the task,
conceptual design, embodiment design and detail design. The aim of the conceptual design phase is to
devise the concept of the artefact. By the end of this phase, the designer should have a clear, but not
necessarily complete, conception of the basic structure, working principles and constituent elements,
and a layout for the artefact. This phase is thus crucial to define new, creative products.
CAD systems were introduced into the area of engineering design in order to automate some routine
tasks. Management of requirements, functional modelling or combination of working principles is
supported only by certain tools, which are designed mainly for individual use and to deal with specific
problems. Although a number of computer-based conceptual design systems have been proposed,
nearly all of them are focused on a specific type of design problem. Most of these tools use the
ICED’07/468 1
principles of artificial intelligence to automate the generation of design solutions, thus ruling out the
creative intervention of the user. The theoretical and practical challenges of specifying and creating
computer programs for generic conceptual design is therefore still a relatively unexplored issue [7].
The knowledge managed by these tools hardly takes the creative intervention of the user into account,
and for this reason this article contributes to knowledge representation for conceptual design activities.
With this idea in mind, we present a reasoning scheme and its knowledge representation framework
that enable us to obtain a more flexible model of synthesis.
ICED’07/468 2
a functional level with two focuses, i.e. intentions and operations. Both Kota’s and Deng’s models
adopt the relationships in the form F → B .
2 PROPOSED MODEL
The FBS scheme outlined above allows certain information to be represented for the synthesis.
Although it presents a wide approach, its scheme lacks precision and it cannot be adapted easily to
more flexible reasoning models. Nonetheless, we propose a knowledge representation model to
improve the flexibility of the exploration during the synthesis. The following sub-section describes the
levels of abstraction that go to make up our scheme. Next, the second sub-section shows how the
model uses relationships to connect the levels of abstraction in a more flexible manner.
ICED’07/468 3
Table 1 – Semantics of the purpose function level and an example of applying this
scheme
Semantics Example
Purpose function (natural language) “regulate occupied volume”
The action function ( a j ) abstracts the behaviour of the product and it is operation-oriented. Based on
this level, designers can guarantee the achievement of an intention. Its semantics consist of the
following attributes:
• Description: this attribute describes the objectives of the function.
• Driving input and functional output: flows of input and output that affect the performance of the
product, mechanisms or components. Unexpected flows are not yet considered at this level.
• Initial and ending states: effects expressed during the operation of the components.
• Purpose functions: List of functions that can be met by the action function.
In its syntax, this level considers both natural language and mathematical representation forms. When
natural language is used to indicate a flow, the attribute uses the verb + complement form. To avoid
ambiguity, as in the case of the purpose function, the driving input and functional output should use
verbs of the third class according to Hirtz’s classification [20]. This representation scheme proposes
two contributions: the integration of flows, i.e. object (material, energy or signal) and action
(movement), and the dependence relationship between an output flow and the final state. For this
reason, an output flow represents a consequence of an indicated final state. Table 2 describes the
semantics and an example of the current level of abstraction.
Table 2 – Semantics of the action function level and an example of the action function
with this scheme
Semantics Example
Description To regulate or reduce the volume of a component to its minimum
value
Purpose functions Regulate volume
Input-output flow: Driving input: Actuate after twisting movement or Stabilise weight
- Driving input Functional output: Change dimension of the component
- Functional output
ICED’07/468 4
• States: besides the normal initial and ending states, the current attribute can take into account
intermediate states and more than one final state. This attribute can be organised into networks
of chains of states.
• Action functions: list of action functions met by the behaviour element.
• Purpose functions: list of purpose functions attended to by the behaviour.
The syntax of the behavioural level generally uses both a mathematical form and natural language in
its attributes except for the description and purpose functions, which use only natural language. This
mathematical form considers constants, ranges or parametric functions as common formats with which
to express the precise numeric values.
During synthesis, behaviours can be organised in the form of chains or networks to generate variations
of a unique design alternative.
This level of abstraction represents behaviour by means of chains or networks of states. The result of
these states defines variations in the output of object flow and action flow. Table 3 describes the
semantics and an example of a behavioural element.
Table 3 – The semantics of the behavioural level and an example of behaviour with this
scheme
Semantics Example
Description To support a vertically distributed load or which acts on a
certain point on a smooth surface
Driving input (expected input) Weight: 100 kg *
Unit: kg
Range: 0-100
Functional output (expected output) Normal force perpendicular to the surface
Harmful input (unexpected input) Weight equal to or greater than 100 kg
Side effect (unexpected output) Break-up of structure
Initial and ending states (chain or
network)
ICED’07/468 5
ID: Identification code of the surface.
Surface type: Type of surface that allows the contact, e.g. plane, cylinder,
concave surface, convex surface, etc. [22].
Degree of freedom (DOF): degree of freedom between the two surfaces [23].
Compatible surfaces: Surfaces that participate in the composition of the
product.
In its syntax, the structure level allows for the use of three types of codification: natural language, a
mathematical form and direct reference between elements. Similar to the behavioural level, the
mathematical form is used in every sub-attribute of the geometric definition and direct reference is
used in the lists of action functions and behaviours.
2.2 Relationships
To represent a product bearing in mind its intentions, behaviours and physical abstraction, the model
stores the necessary data and relates them in a logical sequence. Without them, the result can be an
incomplete solution, misuse of the available computational resources or problems in the synthesis of
the solution. To better guide synthesis and make better use of the available resources, this
representation scheme has to consider relationships that link the stored information in a flexible
manner. This representation scheme extends Deng’s assumptions and allows the user to participate on
an intensive basis during the synthesis, as well as increasing the flexibility of the exploration process.
With these relationships, the user can abstract from complex problems and encounter no restrictions to
start the synthesis from any level of abstraction.
This section shows the relationships available at each level of abstraction. Each relationship presents
its attributes of connection and benefits. Figure 1 presents the logical sequence of exploration by
means of the connections that are available. The bold arrows indicate the contributions of the current
representation scheme.
ICED’07/468 6
subsequently has to be sub-divided into simple intentions. To connect two purpose functions, the
model uses natural language, based on the verb + complement format. This kind of relationship is
similar to the Behavioural and Functional decomposition proposed by Zhang [18]. According to this
author, combining both methods can prevent the design problem from being broken down too finely,
thus avoiding combinatorial explosion during the behavioural configuration. This usually results in a
more compact and less costly design.
ICED’07/468 7
If no available behaviour is found by the model, structures are combined. The connection between an
action function and a structure occurs only through a direct reference.
3 CASE STUDY
In this section, we will study one design case to prove the efficiency of the proposed representation
scheme. In this case study, the functional design process will be explained. This case will describe the
implementation of an initial intention and define the possible solution variations that can be generated
during a synthesis process.
The resolution was divided into phases of knowledge capture and problem reasoning. The knowledge
captures stage involved including the previous knowledge and information incorporated during the
synthesis. The database of past knowledge consisted of items of furniture taken from a catalogue. This
information was decoded and distributed over the four levels of abstraction. The knowledge captured
during the synthesis included the designer knowledge gained from interaction with the model. Both
knowledge capture processes make it possible to store the information needed to form the knowledge
database. Based on this information, the designer could use knowledge from past projects to solve
routine design problems or to adapt them to new intentions or principles.
The experiment started with the intention “Support writing activity” and two external flows {“Human
force”, “Vertical load”}. This initial intention supported the creation of 14 distinct solutions.
ICED’07/468 8
Figure 3 – Alternative generated for the design problem
After defining the intention and the external flows, the model did not present the knowledge needed to
implement the intention. Next, this complex function was sub-divided into two other sub-functions
{“Stabilise horizontal plan”, “Support structure”}. Subsequently, the model attends the sub-functions
with action function of input ports of “Vertical load”. Some of these action functions formed chains
with the set of action functions {“Distribute load”, “Stabilise horizontal plan”, “Transport load”,
“Secure structure”} to attend to their requested input with the available environmental inputs. Based
on the chains that were formed, some behavioural elements were explored and combined, and then
some structures were used to implement these behaviours.
Due to the flexibility of the model, an intention could be included and variations of the same
alternative could be generated. One variation incorporated the purpose sub-functions of “Regulate
height”. By means of this function, the solution could synthesize new mechanisms to raise or lower the
ICED’07/468 9
system. This new functionality thus adapted the product to a new user need. Figure 5 illustrates the
new alternative that was generated.
ICED’07/468 10
4. CONCLUSIONS
This research work proposes a procedure for exploring and synthesizing a model based on the FBS
framework and shows its application to a design case. The proposed model satisfies the following
objectives:
• The user can go back to higher levels of abstraction in order to abstract the design problem
and to create variations of the same design alternatives. With this method, the model adopts
either a top-down or a bottom-up exploration.
• The user can start the design problem from any level of abstraction. As suggested by the
model, the user can describe the problem by means of the intentions of the product and, if
necessary, the problem may be described by means of an action function, behaviour or
structure. With this method, the model has no restrictions to start reasoning and allows the
user to tackle the problem with predefined behaviours or structures.
• The user controls the granularity of the alternative by means of the environmental input level.
The proposed representation scheme takes into account the external flows in order to control
the divergence of the design space during synthesis.
REFERENCES
[1] Campbell M., Cagan J. and Kotovsky K. The a-Design Approach to Managing Automated
Design Synthesis. Research in Engineering Design, 2003, 14 12 - 24.
[2] Xu Q.L., Ong S.K. and Nee A.Y.C. Function-Based Design Synthesis Approach to Design
Reuse. Research in Engineering Design, 2006, 17 27-44.
[3] Chakrabarti A., Sarkar P., Leelavathamma B. and Nataraju B.S. A Functional Representation
for Aiding Biomimetic and Artificial Inspiration of New Ideas. Artificial intelligence for
engineering design,analysis and manufacturing(AIEDAM), 2005, 19 113-132.
[4] Zhang W.Y., Tor S.B. and Britton G.A. Funcdesigner a Functional Design Software System.
International Journal of Advanced Manufacture Technology, 2003, 22 295-305.
[5] Parmee I.C. Evolutionary and Adaptive Computing in Engineering Design, 2001
[6] Al-Salka M., Cartmell M. and Hardy S. A Framework for a Generalized Computer-Based
Support Environment for Conceptual Engineering Design. Journal of Engineering Design,
1998, 9 (1), 57 - 88.
[7] Horvath I. Conceptual Design - inside and Outside. In 2nd Seminar and Workshop EDIPro, Vol.
Poland, pp.10
[8] Gero J. Design Prototypes: A Knowledge Representation Schema for Design. AI magazine,
1990, 11 (4), 26 - 36.
[9] Umeda Y., Takeda H., Tomiyama T. and Yoshikawa H. Function, Behaviour, and Structure In
(Eds) J. Gero. Applications of Artificial Intelligence in Engineering V, 1990 (Springer)
[10] Dorst K. and Vermaas P.E. John Gero’S Function-Behaviour-Structure Model of Designing: A
Critical Analysis. Research in Engineering Design, 2005, 16 17-26.
[11] Far B.H. and Elamy A.H. Functional Reasoning Theories: Problems and Perspectives. Artificial
Intelligence for Engineering Design, Analysis and Manufacturing (AIEDAM), 2005, 19 75-88.
[12] Kitamura Y. and Mizoguchi R. Ontology-Based Systematization of Functional Knowledge.
Journal of Engineering Design, 2004, 15 (4), 327-351.
[13] Deng Y. Function and Behavior Representation in Conceptual Mechanical Design. Artificial
intelligence for engineering design,analysis and manufacturing(AIEDAM), 2002, 16 343-362.
[14] Chakrabarti A. Supporting Two Views of Function in Mechanical Designs. In The Fifteenth
National Conference on Artificial Intelligence - AAAI'98, Vol. Madison, Wisconsin, July 26–
30, 1998,
[15] Williams B.C. Interaction-Based Design: Constructing Novel Devices from First Principles. In
Intelligent Computer Aided Design, Vol. North-Holland, pp.255-282
[16] Chakrabarti A., Langdon P., Liu Y. and Bligh T. An Approach to Compositional Synthesis of
Mechanical Design Concepts Using Computers In (Eds) A. Chakrabarti. Engineering Design
Synthesis. Understanding, Approaches and Tools, 2002 (Springer-Verlag)
[17] Liu Y., Chakrabarty A. and Bligh T. A Computational Framework for Concept Generation and
Exploration in Mechanical Design Further Developments of Function. Artificial Intelligence
in Design '00, 2000, 499 - 519.
ICED’07/468 11
[18] Zhang W.Y., Tor S.B. and Britton G.A. A Heuristic State-Space Approach to the Functional
Design of Mechanical Systems. The International Journal of Advanced Manufacturing
Technology, 2002, 19 (4), 235-244.
[19] Kota S. and Chiou S.-J. Conceptual Design of Mechanisms Based on Computational Synthesis
and Simulation of Kinematic Building Blocks. Research in Engineering Design, 1992, 4 75-
87.
[20] Hirtz J., Stone R., McAdams D., Szykman S. and Wood K. A Functional Basis for Engineering
Design: Reconciling and Evolving Previous Efforts. Research in Engineering Design, 2002,
13 65 - 82.
[21] Martel A. Applications of Ergonomics and Consumer Feedback of Product Design at Whirlpool
In (Eds) Human Factors in Consumer Products, 1998 (Taylor & Francis)
[22] Mulet E. (Phd) Análisis Experimental Y Modelización Descriptiva Del Proceso De Diseño,
2003 (Politechnical of Valencia).
[23] Bruno F., Giampà F., Muzzupappa M. and Rizzuti S. A Methodology to Support Designer
Creativity During the Conceptual Design Phase of Industrial Products. In International
Conference on Engineering Design, ICED 03, Vol. Stockholm, Sweden,
Supported by the Programme Alban, the European Union Programme of High Level Scholarships for Latin
America, scholarship no. E04D030611BR
ICED’07/468 12
Artículo F
A multi-relational and interactive computational model
phase
Authors:
Dioclecio Moreira Camelo
Department of Mechanical Engineering and Construction
Universitat Jaume I
Elena Mulet
Department of Mechanical Engineering and Construction, Engineering Design Group
GID
Universitat Jaume I
Av. Sos Baynat, s/n, 12071 Castellón de la Plana, Spain
emulet@emc.uji.es
Tel: +34 964 72 81 17 / +34 964 72 81 17
Fax: +34 964 72 81 06
1
Abstract
The article presents a highly interactive computational model that considers the
creativity of the user during the design process. The model can be viewed as an
extended application of the function-behaviour model of Deng [1]. In this way, the
exploration and the possible ways of guiding the synthesis process, improvement on
the interaction with the designer during synthesis, improvement on the representation
of knowledge with a language closer to the user and at the same time avoids
ambiguities.
The proposed model intends to consider a more flexible representation that widens the
applies a wider and easier method for handling knowledge, includes a level of
abstraction to describe the external flows, and, consequently, reduces the time
required for the formation of new products in accordance with the creativity of the
designer.
A pilot software tool implements a graphic environment that reflects the reasoning
and knowledge representation models. With this pilot tool, the designer can explore
and converge the design space by means of rules that connect the abstraction levels.
The graphic environment achieves the following goals: it begins the synthesis from
any level of abstraction, it explores the knowledge by means of pop-up menus, these
pop-up menus adapt themselves to the knowledge being managed and the direction of
the user, it makes it possible to go back to higher levels of abstraction during the
solution with other application focuses, it allows more than one alternative to be
2
handled, it captures the knowledge before or during the generation of alternatives, it
processes.
software that is focused on the reality of the conceptual design task in industry.
The article starts with a brief survey of the most significant computational synthesis
models and the knowledge schemes used, next it describes the language, methods and
model to a design case and describes the results in relation to the research objectives.
3
1. Introduction
By means of using Computer Aided Design (CAD) tools the productivity of designers
has been greatly improved during the past twenty years. With these improvements,
computational models have evolved into new methods and models that support
routine design with automatic algorithms and a more creative design with semi-
automatic methods.
Most of these design tools attempt to reproduce the cognitive capabilities of humans
[2]. The majority of these tools use the principles of artificial intelligence to automate
the generation of design solutions, thus ruling out the creative intervention of the user.
The industry considers conceptual design to be naive and simply discards the use of
the conceptual design tools developed by the academia. This shortcoming reflects
how difficult it is to reproduce the design process by means of software tools [3]. For
Thus, several authors consider that a conceptual design support tool should implement
• Powerful search engine to allow quick access to the design information and to
database,
4
• Integration with other design tools,
• Routine design activities could be automated and creative design could offer
interactively is therefore still a relatively unexplored issue. For this reason, the article
functional synthesis models, designers can use a more flexible and interactive model
of synthesis to form alternatives. To reach this goal, the model should consider a
flexible scheme to represent and reuse knowledge from previous projects and to
The article proposes a computational model that supports the interaction of some
design tasks. The model can be viewed as an extended application of the function-
behaviour model of Deng [1]. In this way, the model should be capable of:
synthesis process. Both improvements should broaden the search for solutions.
that is closer to the user and at the same time avoids ambiguities.
This model might also execute other processes that are similar to those of already-
5
By means of a flexible exploration method of knowledge, the current model should
improve the easy of use of the synthesis models, and consequently, it should reduce
the description time of non-detailed products, in accordance with the creativity of the
designer. With the help of this model, we expect to offer a computational method that
The model has been implemented and applied to a design case, and a preliminary
evaluation describes how the research goals were dealt with by the pilot software.
The following section offers a brief survey of the most significant computational
synthesis models. The third section elucidates the knowledge representation model of
Deng [1]. The fourth section describes the proposed model and its implementation.
The fifth section shows an application of the model to a design case and describes the
2. Related works
Computational models establish guidelines to define, guide and automat certain tasks
of the design process. The concept of computational models evolved from the
cognitive, epistemology and methodology fields [3]. With the advance of information
storing and handling the knowledge used during the development of a product. With
describe, rationalise, store and manipulate the knowledge used during the
(TFMF) [1, 13], Functional Design Software System (FuncDesigner) [14] and
6
use the function-means tree method. This method uses a representation of trees to
break down the functional requirements of a design. This tree representation reflects a
process [16]. HSA, TFMF and FuncDesigner apply the behavioural reasoning and
functional decomposition method to prevent the design problem from being broken
down too finely, thus avoiding combinatorial explosion during the behavioural
configuration. This usually results in a more compact and less costly design.
The Schematic Synthesis (SS) [17], Interaction-based Design (Ibis) [18], Kota's
Networks (FuncSION) [20, 21], Qualitative and Heuristic Approach (QHA) [22],
Automatic Design by Configuration Space (ADCS) [23, 24] models, together with the
model by Bruno, Giampà, Muzzupappa and Rizziti [25], all use the relationship
between inputs and outputs. This method considers the relationships that link the
required inputs with the available outputs (of flows or movements) to explore sub-
product and allows the designer to assembly components from these functions in a 3D
functional surfaces that consider characteristics of the geometry, contact surfaces and
The models Schemebuilder [26, 27] and the Dialog-oriented Intelligent CAD
(DIICAD) [28, 29] use the relationship between cause and effect. This method
7
The Initial Design Selection (IDS) [30] model applies the method of characteristics
search. This method considers the minimum characteristics for the products, which
The Knowledge Intensive Engineering Framework (KIEF) [31, 32] model applies the
method of abduction. This method is based on the logic area and defines a design
solution (facts) by means of the design knowledge (axioms) and the properties of
The model by A-Design [34-36] applies agents in its reasoning method. This method
System (IEDS) [4] and Autogenetic Design Theory (ADT) [38, 39] models apply
The Function-based design synthesis (FBDS) [40] model applies the neural
networks method. This method is a paradigm inspired in the biological neural system
represents the states or physical elements, and behaviour connects both levels. Gero
defends that structure defines components and their relationships and Umeda holds
that this level represents the elements of an artefact and relationships among them
[41].
8
There are two focuses to represent functions: one centred on the operations
(operational focus) and another centred on the intentions (intentional focus) [1, 42-
46]. In the operational focus, functions are oriented towards or depend on the
solution, and constitute the components of this solution or the physical interaction
between objects and their surroundings, e.g. “to rotate the hour, minute and second
hands around the same pivot, each with a specific rotary velocity”. In the intentional
focus, functions are independent of the solution and represent the desires, intentions
and necessities from the viewpoint of a human user (designer), e.g. “to indicate time”.
article [47]. This analysis indicates that a new flexible model of knowledge
• Increasing the number of relations that link the levels of abstraction. With
these new links the model will provide a more flexible, wider and easier
• Including a level of abstraction that describes the external flows and acts on
Before defining the improvements of the synthesis model, first we elucidate the
synthesis model [1]. In his model, the author clarifies some confusions relating to the
9
two views of functions (purpose function, action function), a behavioural level, a
The first view of function, the level of purpose function ( f i ), represents the
intentions that are expected in a design product. This level is user-oriented. The
purpose function is the most abstract level of the model. Its semantic considers only
one attribute with the same name (purpose function). Its syntax uses natural language
The second level of function, the level of action function ( a j ), abstracts the intended
and useful behaviour of the product. This level is operation-oriented. Its semantics
(material, energy and signal) that affect the performance of the product,
mechanisms or components.
components.
• Initial and ending states: effects expressed during the operation of the
components.
The reader should note that this level does not treat the unexpected flows. In its
syntax, this level considers both natural language and mathematical representation
forms. When natural language is used to indicate a flow, the attribute uses the
component or physical mechanisms by means of the input and output flows. In this
approach, the states can be the internal states of a component, the internal interaction
10
between two or more components, or the interaction between a component and its
environment. The representation scheme uses the following attributes to define the
Harmful input is an unexpected input of flow for the system; and side-
system.
flows of object that also hinder the correct operation of the product.
The syntax of the behavioural level considers either the natural language or the
Structure ( s l ) is the least abstract level and describes the geometry of a physical
component or mechanism. This level defines the formal idea of the solution or sub-
solution.
And the Environmental inputs ( e p ) are the external elements from the environment
11
4. Proposed model of functional synthesis
following aspects:
1. It allows the designer to start the description of a design problem from any
level of abstraction. With this resource, the model increases the flexibility of
increases the number of relations and specifies the attributes that implement
these relationships.
3. It considers the influence of the external flows from the environment on two
levels of abstraction.
The following subsections describe the improvements of the proposed model divided
into the levels of abstraction, e.g. purpose functions, action functions, behaviours,
For the proposed model, this level reproduces the same semantics and syntax of the
second class of verbs from the standard of Hirtz et al [48]. This set of verbs allows the
user to define the intention of the product and to avoid ambiguity at the same time.
Table 1 shows the semantics, syntax and an example of this kind of function.
12
Semantics Syntax Example
Purpose function Natural language regulate occupied volume
(verb + complement)
Verbs from Hirtz’s 2nd class
Table 1
In this abstraction level, we include another field to link an action function with a
number of purpose functions. This attribute is called List of Purpose Functions and its
functions.
Two contributions are included in this level: The first contribution considers one
expected input and one expected output of flow that integrates the expected input of
object and action and the expected output of object and action, respectively. And the
second contribution establishes a dependence relationship between the input flow with
the initial state and the output flow with the final state. For this reason, an output flow
Table 2 describes the semantics and an example of the current level of abstraction.
Final and ending Natural language or To change height from a maximum to a minimum
states mathematical form.
Verbs from Hirtz’s 3rd class
Table 2
13
This level considers both natural language and mathematical representation forms.
When natural language is used to indicate a flow, the attribute uses the
verb + complement form. To avoid ambiguity, the driving input and functional output
should use verbs of the third class according to Hirtz’s classification [48], i.e. driving
input: “to import rotary force” and functional output: “to increase height of the
support”. In its mathematical language, these attribute use numeric values (fixed or
The behavioural level presents more precise information than the level of action
readable by the user, the level includes fields to describe the behaviour in a language
From the computational point of view, the level of behaviour includes the inputs and
outputs of the proposed level of action function. But there are differences in some
describes the intermediate states of a physical component and describes precise values
for the flows and states. Due to the specific character of the states, the user can
identify all the intermediate states and organise them in chains or networks. This
In the level of behaviour, we include two link attributes to connect the current level
with a number of purpose functions and action functions. These link attributes define
which action functions and purpose functions are met by the behavioural level.
14
The representation of states on the behavioural level extends the states of the action
functions and allows designers to consider the intermediate states. In the chain of
states (Figure 1a), the representation model considers not only the initial state and the
final states, but also linear sequences of states executed between the initial and the
final states. In networks of states (Figure 1b), the intermediate states are considered by
variation in behaviour. In the proposed model, each final state of the behavioural level
Figure 1 – Chain (a) and network (b) of states considered on the behavioural level
15
Purpose functions Natural language Stabilise point or distributed weight
(list)
* These natural language values are just for demonstration purposes.
Table 3
This representation extends the behavioural representation of the FBS in the following
aspects:
parametric model to represent the component used to meet the designer’s needs. This
during the synthesis. From the semantic and syntax viewpoint, structure considers the
16
- Degree of Freedom
- List of compatible contact surfaces
Contact surfaces1
Identification of the surface: 01
Type of surface: Plane
Degree of Freedom: 1
Compatible surfaces: Plane
Table 4
The level of structure proposed applies the contact surface principle of Bruno’s [25].
With this principle, the user can assembly the components of a design system at the
The level of environmental inputs not only describes the external flows of the design
system, but is also controls the formation of chains and networks of action functions
and behaviours. When the alternative presents an action function or behaviour that
requires a driving input to be met by an external flow or output, the model firstly
search for the available environmental input in the alternative that could match this
required input. If the alternative presents an environmental input that match the
required input, the synthesis model combines this required input of the action function
or behaviour with the environmental input, and then the model interrupts the
formation of the network or chain. Otherwise, the synthesis model keeps exploring
alternative that meet the new requirements. From the computational viewpoint, the
• Description of flow: this describes the objective of the flow in terms of natural
17
• Type of flow: this describes the type of flow considered in the function of the
• Unit of flow: this defines the unit used to quantify the flow, such as:
• Magnitude: this describes the value or range used to quantify the flow.
Table 5
and behaviour levels. Attributes of type and unit of flow are used to implement this
link.
For this level of environmental input, the proposed model presents two contributions:
(i) the model shows a detailed representation of the environmental input, (ii) with the
detailed attributes, the model maintains relationships that connect the environmental
input with the levels of action function and behaviour. These relationships control the
abstraction, the model stores the necessary data and relates them in a logical sequence.
Without them, the result can be an incomplete solution, misuse of the available
18
synthesis and make better use of the available resources, this representation scheme
has to consider relationships that link the stored information in a flexible manner. This
representation scheme extends Deng’s relations and allows the intensive participation
of the user during the synthesis and increases the flexibility of the exploration process.
With these relationships, the user can abstract from complex problems and start the
This section shows the relationships available at each level of abstraction. Each
relationship presents its attributes of connection and benefits. Figure 2 presents the
logical sequence of exploration by means of the connections that are available. The
solution, the designer can explore knowledge by means of the following relationships
19
• Purpose function – action function (1): this relationship allows the designer to
purpose function.
After the initial definition, the user can explore the knowledge of the three subsequent
levels. This search can be carried out based on two methods: one automatic, without
the intervention of the user, and the other guided by the user. In the automatic process,
the model looks for action functions that attend to the purpose function. If no action
function is found, the model extends this search to the behavioural level and then to
the structure level. If the search process cannot match this purpose function, this is
purpose function. To connect two purpose functions, the model uses natural language,
based on the verb + complement format, and organises them using graphs or matrices.
Once a number of action functions have been defined, the synthesis model looks for
elements that satisfy the inputs and outputs of these action functions. The model
20
• Action function – environmental input (5): this relationship guides the
synthesis to search for environmental inputs that attend to the required input of
an action function. This relationship also stops the formation of one chain or
• Action function – action function (6): this reflexive relationship allows the
the model explores for action functions that match their outputs with the input
input with the input of an explored behaviour and matches the output of the
same action function with the output of the same or another explored
behaviour.
• Action function – structure (8): this relationship allows the designer to find a
consider the needed external flows that should make the system work. This
formed.
design to go back one level in the abstraction. From this abstracted action
21
function, the designer can explore other possible behaviours for the initial
behaviour.
• Behaviour – structure (12): this relationship explores structures that carry out
the behaviour.
The two initial explorations are similar to the relationships existing on the action
function level. The initial behaviour may form chains or networks of behaviours to
During the exploration, the model may find redundant searches of behaviour. To
avoid this problem, we propose a relationship that allows a return to more abstract
As a contribution, this representation scheme allows the user to return to this level of
relationship.
One of the processes that end the implementation of an intention is the relationship
between behaviour and structure. By means of this combination, the user may find the
structures that present the expected behaviours. These structures may be a unique
some kinds of behaviour consider the interaction between two or more components,
The structural level presents a reflexive relationship (13) that allows the designer to
22
From the chain or network of structure, the designer obtains a visual configuration of
the product which is oriented by the contact surface in each component or mechanism
The model proposed here integrates a flexible user-oriented algorithm. The initial
standard procedure recommends starting the synthesis at the most abstract level. After
this initial definition of the problem, a semi-automatic method guides the formation of
alternatives. The synthesis process proposed here allows the designer to start the
design from any level of abstraction, such as purpose function, action function,
behaviour or structure.
Figure 4 illustrates the synthesis process in the proposed model. The synthesis starts
After defining the initial design information, the model guides the exploration to
generate solutions that meet the requirements. The first operation executed is the
knowledge database, the model uses the next relationship that changes the focus of the
If the model finds no action function, behaviour or structure that implement the
purpose functions, the model marks these functions as complex and starts a procedure
simpler sub-functions (III). With other new sub-functions the problem is simplified
23
and the model again explores for knowledge (action functions, behaviours or
In this synthesis model, this decomposition process applies rules but also allows the
user to intervene. With these rules, the designer can decompose functions based on
his/her experience or he/she can break them down bearing in mind knowledge from
previous projects.
After defining and combining the knowledge that matches the purpose functions, the
synthesis model takes the first action function as a reference to continue with the
reasoning process. Thus, the model searches for environmental inputs to fulfil the
required driving input of this action function (IV). If there is an environmental input
available to address the required input of the action function, then the model matches
both inputs and updates the alternative. Otherwise, the synthesis explores for action
functions whose outputs match the required input of the original action function (V).
Next, the functional output of an action function meets the required driving input of
another action function. This process forms chains or networks of action functions in
the alternative. If there is no action function available in the knowledge database, the
model searches for more specific elements, such as behaviours (VI), and
subsequently, structures.
If the alternative presents only behaviours on the extreme leaf of the tree, the model
should execute the following explorations to meet these behaviours: (i) the model
explores for environmental inputs that match with the driving input or harmful input
of the each behaviour and (ii) the model explores for another behaviours whose
outputs match with the driving inputs or harmful inputs of each behaviour. This later
search process (VII) generates chains or networks of behaviours. The extreme inputs
and outputs of these chains or networks of behaviours have to match with the extreme
24
inputs and outputs of action functions that maintain a relationship. While these chains
are formed (Figure 3a), another parallel process finds environmental flows to address
the inputs of the most extreme behaviours (VIII). With this parallel process, the
synthesis model controls the granularity of the behavioural chain or network (Figure
3b). The combination of both processes contributes by decreasing the search time and
Figure 3 – (a) Process that forms a chain of behaviours, and (b) process that combines
abstract the extreme behaviour to an action function; and subsequently he/she can
knowledge domains (IX). This procedure offers two contributions: it allows designers
to go back one level of abstraction, and it allows designers to explore other possible
To conclude the behavioural exploration, the model verifies if the inputs of the
extremities and outputs of these chains match the inputs and outputs of the action
functions taken as a reference. If this combination is verified, then the model executes
25
a process to implement the behaviour with physical elements, exploring structures for
During the combination of structures, the designer can combine distinct structures to
form a single behaviour. This combination allows the designer to generate chains or
networks of structures in the alternative (XI). The process finishes when the model
has addressed all the functions and behaviours, or when the user interrupts the
reasoning.
26
Figure 4 – Reasoning process of the proposed model
Once the theoretical model has been defined, a pilot software tool has been
implemented within a symbolic environment that interacts with the user. This pilot
tool reproduces a flexible environment, and shows the explored knowledge with
27
symbols and graphics so that the process of generating alternatives can be guided
easily. At the end of the reasoning process, this pilot tool shows the components of
Python 2.4 was used to implement the pilot software. This implementation uses the
Three-tier architecture, which comprises three implementation layers with classes, and
a fourth layer that manages the knowledge explored. These classes abstract a set of
objects with similar characteristics and are defined by means of methods and
The first layer implements the graphic user interface (GUI), which allows the user
to access the knowledge in the database. This layer collaborates with the exploration,
capture and navigation inside the database. And most of its classes inherit the
of the Windows interface. By means of this resource, this software tool displays a
friendly interface with windows and symbols that are familiar to the user.
The application layer (AL) is the second implementation layer that communicates
the graphic interface (GUI) with the database communication layer. This AL
implements the classes of the levels of abstraction of the theoretical model and
translates all the information explored into objects. With this AL, the software reuses
the code and allows for the portability of the GUI into other media such as web, thin-
The database communication layer (DCL) is the third layer that links the
instantiated objects with the database manager. This DCL controls the Structured
28
Query Language (SQL) commands, the server configuration and the structure of the
The database manager (DBM) constitutes the last layer in this software tool. This
layer handles and relates the knowledge in tables that can store and reuse information
This section describes the application of the software tool to a design case. For this
The design case begins with an initial requirement: “to provide a support the for the
writing activity” or “to support a surface that the user can write on”. With this
requirement, a purpose function can be defined. The designer selects a verb of a list,
i.e. “support” and then he/she defines the complement, i.e. “writing activity”. In this
process, the user defines the purpose function “support writing activity”. Next, the
user translates his/her inputs from the environment to the system, such as “position a
vertical load”.
From the purpose function and the environmental input, the software tool assists the
designer by converging the solution space that is explored. Based on the previously
defined purpose functions, the software tool explores and combines action functions,
At the end of the synthesis, the structural level is used to combine components and
parts of the product. In this case, contact surfaces are used to assemble the
alternatives. By means of this information, the designer can define the union between
This section briefly illustrates the results of the design problem. To generate the
alternatives, the software tool guides the resolution, taking into account knowledge
that has previously been registered in the database. The reasoning begins with the
exploration of the action functions, behaviours and structures. As the initial purpose
abstraction, the user is then asked to break down this initial function into simpler sub-
With these new purpose functions, the software explores action functions, behaviours
and structures again. After combining the action function elements, the software
matches them with the environmental inputs that are available. After this process, the
Figure 5 – (a) Decomposition of purpose function, and (b) improvement of the design
alternative
With the action functions in the alternative, the system guides the exploration of
behaviours and structures that meet the driving input/functional output of the action
30
Figure 6 and Figure 7 illustrate two alternatives generated with the support of the
software tool.
31
Figure 7 – Another alternative generated with the software support
32
Figure 8 – Concept of the alternatives defined after the synthesis process
The functional synthesis model fulfils the intended research goals, e.g.: the model
improves the interaction with the designer during the synthesis and represents the
representation model extends the approach of Deng, applies the set of verbs of Hirtz
to represent the user’s intentions and applies the scheme to represent the structure of
Bruno.
scheme. This proposition is innovative because most of the synthesis models present a
linear and restricted number of relations between their levels of abstraction. By means
abstracts a difficult problem and goes back to explore higher levels of abstraction.
With those resources, the model widens the exploration paths and the formation of
33
alternatives. With this model, the designer explores the design space and reduces it by
means of rules and connections between levels of abstraction. This model achieves the
following goals:
alternatives.
designer can generate new alternatives and reuse the experience gained from
previous projects.
• It proposes assembly links between components and the user. With this
resource, the designer can define the best assembly of the physical elements
7. Conclusions
The research outlined here proposes a synthesis model that supports design activity
and allows the designer to solve a design problem from its functionalities to the
34
The contributions of this synthesis model are defined as follows:
• The model applies a standard language that avoids the ambiguity in the
him/herself to the support design tool because the tool uses a standard based
on natural language.
• The model extends the information represented and widens the relationships
development time, it reuses resources during the design and it allows the designer to
Acknowledgments
This research was supported by the Alban Programme, the European Union
E04D030611BR.
35
References
12. Zhang, W.Y., S.B. Tor, and G.A. Britton, A Heuristic State-Space Approach to
the Functional Design of Mechanical Systems. The International Journal of
Advanced Manufacturing Technology, 2002. 19(4): p. 235-244.
36
13. Deng, Y.M., G.A. Briton, and S.B. Tor, A Design Perspective of Mechanical
Function and its Object-Oriented Representation Scheme. Engineering with
Computers, 1998. 14: p. 309-320.
14. Zhang, W.Y., S.B. Tor, and G.A. Britton, FuncDesigner a functional design
software system. International Journal of Advanced Manufacture Technology,
2003. 22: p. 295-305.
15. Jin, Y., W. Li, and S.C.Y. Lu, A hierarchical co-evolutionary approach to
conceptual design. Cirp Annals-Manufacturing Technology, 2005. 54(1): p.
155-158.
21. Liu, Y., A. Chakrabarti, and T. Bligh, A computational framework for concept
generation and exploration in mechanical design further developments of
function. Artificial Intelligence in Design '00, 2000: p. 499 - 519.
22. Li, C.L., S.T. Tan, and K.W. Chan, A qualitative and heuristic approach to the
conceptual design of mechanisms. Engineering applications of artificial
intelligence, 1996. 9(1): p. 17-31.
23. Li, C.L., K.W. Chan, and S.T. Tan, Automatic design by configuration space:
an automatic design system for kinematic devices. Engineering Applications of
Artificial Intelligence, 1999. 12: p. 613-628.
24. Li, C.-l., Conceptual design of single and multiple state mechanical devices :
an intelligent CAD approach, in Mechanical Engineering. 1998, University of
Hong Kong: Hong Kong. p. 347.
37
25. Bruno, F., et al. A Methodology to support designer creativity during the
conceptual design phase of industrial products. in International Conference
on Engineering Design, ICED 03. 2003. Stockholm, Sweden: Design Society.
28. Lossack, R., Design process and context for the support of design synthesis, in
Engineering Design Synthesis. Understanding, Approaches and Tools, A.
Chakrabarti, Editor. 2002, Springer-Verlag: Londres. p. 213 - 227.
30. Esterline, A. and S. Kota, A General paradigm for routine design - theory and
implementation. Artificial Intelligence in Engineering Design, Analysis, and
Manufacturing, 1992. 6(2): p. 73-93.
31. Takeda, H., Towards multi-aspect design support systems, in Technical Report
NAIST-IS-TR94006. 1994, Nara Institute of Science and Technology: Nara -
Japón.
33. Tomiyama, T., et al. Adbuction for creative design. in ASME 2003 - Design
Engineering Technical Conference and Computers and Information in
Engineering Conference. 2003. Chicago, EEUU.
38
36. Campbell, M., J. Cagan, and K. Kotovsky, The A-Design approach to
managing automated design synthesis. Research in Engineering Design, 2003.
14: p. 12 - 24.
37. Bentley, P.J., From coffee tables to hospitals: generic evolutionary design, in
Evolutionary Design by Computers, P.J. Bentley, Editor. 1999, Elsevier:
Londres. p. 405-423.
38. Vajna, S., et al., The Autogenetic Design Theory: An evolutionary view of the
design process. Journal of Engineering Design, 2005. 16(4): p. 423-440.
39. Clement, S., et al. The use of evolutionary algorithms in prototypes in engine
development at Volkswagen AG. in MTZ. 2004.
40. Xu, Q.L., S.K. Ong, and A.Y.C. Nee, Function-based design synthesis
approach to design reuse. Research in Engineering Design, 2006. 17: p. 27-
44.
46. Far, B.H. and A.H. Elamy, Functional reasoning theories: problems and
perspectives. Artificial Intelligence for Engineering Design, Analysis and
Manufacturing (AIEDAM), 2005. 19: p. 75-88.
47. Camelo, D., E. Mulet, and R. Vidal. Análisis y discussión de la aplicación del
marco FBS en modelos funcionales de síntesis. in X Congreso internacional
de Ingeniería de proyectos. 2006. Valencia, Spain.
39
48. Hirtz, J., et al., A functional basis for engineering design: Reconciling and
evolving previous efforts. Research in Engineering Design, 2002. 13: p. 65 -
82.
40
Summary of the thesis
Summary
1 Introduction
functions are focused or dependent on the solution, and constitute the components of this
solution or the physical interaction between objects and their environment. To exemplify
this focus, we consider the functions of a clock “to rotate the hour, minute and second hands
around the same pivot, each with a specific rotary velocity”. In the intentional focus,
functions are independent of the solution and represent the desires, intentions and
necessities from the viewpoint of a human user (designer). These kinds of functions
represent a human standpoint, a mental representation of the functionalities within the real
world or the execution of a phenomenon regardless of its physical components. To exemplify
these functions, we use the same clock example “to show or indicate hours, minutes and
seconds”.
Figure 1 synthesises the analysis of the models studied here and describes the levels
of abstraction and the syntax considered on each level. The syntax indicates how information
can be represented by a computer program so that it can be defined, retrieved, edited and
manipulated in a specific design situation. The syntax considers two types of codifications:
natural and mathematical languages.
Natural language is simple and promotes interaction with the user. In contrast,
however, it is ambiguous and lacks precision in its interpretation. The verb + complement
scheme is the commonest form presented by most functional approaches. The mathematical
form solves part of the language problems. Its format is precise but complex for the user to
understand. It always presents the common form of numeric values of constants, variables,
ranges or parametric equations.
This analysis indicates that most of the computational models studied consider the
operation focus in their functional representation. Since 2002, this situation has begun to
change and the latest models consider intentions in their functional representation.
Based on this analysis, we propose a new model with a more flexible representation
that takes the following aspects into account:
• Widening the levels of abstraction,
• Increasing the number of relations that link the levels of abstraction. With these
new links the model will provide a more flexible, wider and easier method for
handling knowledge, and
• Including a level of abstraction that describes the external flows and acts on the
design functionality.
This chapter proposes a knowledge model based on the FBS approach. The current
model not only represents the knowledge of a design, but also extends the FBS
representation on the following aspects:
1. It allows the designer to start the description of a design problem from any level of
abstraction. With this resource, the model increases the flexibility of the synthesis
of alternatives.
2. It expands the relationships in knowledge representation. The model therefore
increases the number of relations and specifies the attributes that implement these
relationships.
3. It considers the influence of the external flows from the environment (material,
energy, signal or movement) on distinct levels of abstraction.
4. It implements a flexible process of synthesis to improve knowledge exploration and
widen the exploration paths during synthesis.
5. It improves the representation of intentions in the synthesis model by means of
natural language, thus preventing ambiguity.
The following subsections describe the levels of abstraction considered in the
proposed model, i.e. purpose functions, action functions, behaviours, structures and
environmental inputs.
In its syntax, this level considers both natural language and mathematical
representation forms. When natural language is used to indicate a flow, the attribute uses the
verb + complement form. To avoid ambiguity, as in the case of the purpose function, the
driving input and functional output should use verbs of the third class according to Hirtz’s
classification (Hirtz, Stone et al. 2002). In its mathematical language, these attribute use
numeric values (fixed or range) or parametric equations.
This representation scheme proposes two contributions: the integration of flows,
i.e. object (material, energy or signal) and action (movement), and the dependence
relationship between an output flow and the final state. For this reason, an output flow
represents a consequence of an indicated final state.
This level uses the Bruno’s (Bruno, Giampà et al. 2003) contact surfaces principles.
With these assumptions, the designer can execute a symbolic assembly of the physical
components.
The environmental input maintains relationships with levels of action function and
behaviour. Attributes of type and unit of flow are used to implement this link.
The two initial explorations are similar to the relationships existing on the action
function level. The initial behaviour may form chains or networks of behaviours to match its
required input with a flow of the environmental input.
During the exploration, the model may find redundant searches of behaviour. To
avoid this problem, we propose a relationship that allows a return to more abstract levels,
which thus enables an abstract re-definition of a design problem to be obtained. As a
contribution, this representation scheme allows the user to return to this level of
abstraction. This is achieved by means of the behaviour–action function–behaviour
relationship.
One of the processes that end the implementation of an intention is the
relationship between behaviour and structure. By means of this combination, the user may
find the structures that present the expected behaviours. These structures may be a unique
component or a group of components that form a mechanism. In this latter situation we have
to consider that some kinds of behaviour exist due to the interaction between two or more
components, which are called mechanisms here.
3.6.4 Relationships with structures
The structural level presents a reflexive relationship (13) that allows the designer to
form chains or networks of physical components. The relation between structures is
performed by means of the contact surfaces attribute.
From the chain or network of structure, the designer obtains a visual configuration
of the product which is oriented by the contact surface in each component or mechanism
represented in the alternative.
Figure 3 – Overview of the representation scheme and relationships available to connect the levels of
abstraction
After defining the initial design information, the model guides the exploration to
generate solutions that meet the requirements. The first operation executed is the
exploration of action functions (I). If there is no action function available in the knowledge
database, the model uses the next relationship that changes the focus of the exploration to
behaviours (II), and afterwards, structures.
If the model finds no action function, behaviour or structure that implement the
purpose functions, the model marks these functions as complex and starts a procedure to
decompose these functions. This procedure subdivides complex functions into simpler sub-
functions (III). With other new sub-functions the problem is simplified and the model again
explores for knowledge (action functions, behaviours or structures) that can implement
these new requirements.
In this synthesis model, this decomposition process applies rules but also allows
the user to intervene. With these rules, the designer can decompose functions based on
his/her experience or he/she can break them down bearing in mind knowledge from
previous projects.
After defining and combining the knowledge that matches the purpose functions,
the synthesis model takes the first action function as a reference to continue with the
reasoning process. Thus, the model searches for environmental inputs to fulfil the required
driving input of this action function (IV). A driving input of an action function indicates the
input required to get the product underway. If there is no environmental input available to
attend the required input, then the model matches both inputs and updates the alternative.
Otherwise, the synthesis changes the focus of the exploration to the action function space
whose outputs match the required input of the original action function (V).
Next, the input of the action function is addressed by the outputs of other action
functions. This process forms chains or networks of action functions in the alternative. If
there is no action function available in the knowledge database, the model searches for more
specific elements, such as behaviours (VI), and subsequently, structures.
When the alternative presents only behaviours on the extreme leaf of the tree, the
model take these behaviours to execute the following explorations: first, the environmental
inputs that match their driving input/harmful input, and, second, other behaviours whose
outputs match these required inputs. Thus, the second search process (VII) allows the
synthesis to generate chains or networks of behaviours. The extreme inputs and outputs of
these chains or networks of behaviours have to combine with the extreme inputs and outputs
of action functions that maintain a relationship. While these chains are formed (Figure 4a),
another parallel process finds external flows to address the inputs of the most extreme
behaviours (VIII). With this parallel process, the synthesis model controls the granularity of
the behavioural chain or network (Figure 4b). The combination of both processes
contributes by decreasing the search time and including new inputs to make the design
system work properly.
Figure 4 – (a) Process that forms a chain of behaviours, and (b) process that combines an
environmental input at the end of this chain
If there is no behaviour available to address this chain, the designer is guided to
abstract the extreme behaviour with an action function; and subsequently he/she can execute
a wide exploration of other behaviours in other knowledge domains (IX). This procedure
offers two contributions: it allows designers to go back one level of abstraction, and it allows
designers to explore other possible behaviours in other application domains. After this
method has been applied, the design can continue these new behaviours at the end of the
tree.
To conclude the behavioural exploration, the model certifies if the inputs of the
extremities and outputs of these chains match the inputs and outputs of the action functions
taken as a reference. If this combination is verified, then the model executes a process to
implement the behaviour with physical elements, exploring structures for the solution (X).
During the combination of structures, the designer can combine distinct structures
to form a single behaviour. This combination allows the designer to generate chains or
networks of structures in the alternative (XI). The process finishes when the model has
addressed all the functions and behaviours, or when the user interrupts the reasoning.
Once the theoretical model had been defined, a pilot software tool was
implemented within a symbolic environment that interacts with the user. This pilot tool
reproduces a flexible environment, and shows the explored knowledge with symbols and
graphics so that the process of generating alternatives can be guided easily. At the end of the
reasoning process, this pilot tool shows the solutions that have been generated and the
components of each solution.
This section describes the application of the software tool to a design case. For this
case, a design involving furniture for offices is considered. At the end of this section, the
results of the design case are reported and the research objectives are analysed against these
results.
designer explores the design space and reduces it by means of rules and connections
between levels of abstraction. The graphic environment thus implemented achieves the
following goals:
• It begins the synthesis from any level of abstraction,
• It explores the knowledge by means of pop-up menus. These pop-up menus adapt
themselves to the knowledge being managed and the direction of the user.
• It makes it possible to go back to higher levels of abstraction during the synthesis.
This resource allows a design problem to be abstracted in order to find a solution
with other application focuses.
• It allows more than one alternative to be handled. By means of this resource, the
designer can handle different alternatives or create variations of alternatives in the
same graphic interface.
• It captures the knowledge before or during the generation of alternatives with the
support of the top-down and bottom-up capture techniques.
• It stores experience from previous projects. By means of this resource, the designer
can generate new alternatives and reuse the experience gained from previous
projects.
• It proposes assembly links between components and the user. With this resource,
the designer can define the best assembly of the physical elements and define the
physical form of the product.
• It forms alternatives by means of multi-reasoning processes.
6 Conclusions
The research outlined here proposes a synthesis model that supports design activity
and allows the designer to solve a design problem from its functionalities to the physical
abstraction of the solution.
The contributions of this synthesis model are defined as follows:
• The knowledge representation proposed here allows the designer to consider the
external elements (inputs and flows of the environment) that affect system
functionality at certain levels of abstraction. This representation extends the
proposition of other models and controls the exploration of the levels of
abstraction and the generation of a number of alternatives. This control of the
alternatives improves the assumptions of other models, since the model considers
more attributes in order to define the inputs from the environment. For this reason
the contribution of this model improves the benefits from the use of the
environmental flows to more than one knowledge level.
• The model uses a standard language that prevents the ambiguity of the functional
representation. Therefore, the designer does not need to adapt him/herself to the
support design tool because the tool uses a standard based on natural language.
• The model extends the information represented by current models and widens the
relationships between the levels of abstraction. These improvements make it
possible to:
o Increase interaction with the designer;
o Control the exploration of the knowledge space;
o Generate networks of design elements (action functions, behaviours and
structures). These networks increase the number of proposed solutions;
o Reach lower levels of abstraction through a number of more or less
intermediate levels for each design case;
o Facilitate the exploration of other knowledge domains, starting out from a
highly abstract level of representation.
With these contributions, the model improves the following factors: it allows
different application domains to be explored, it reduces the development time, it reuses
resources during the design, and it allows the designer to form alternatives by means of
multi-reasoning processes.
References
Bruno, F., Giampà, F., et al. (2003). A Methodology to support designer creativity during the
conceptual design phase of industrial products. International Conference on
Engineering Design, ICED 03, Stockholm, Sweden, Design Society.
Campbell, M., Cagan, J., et al. (2003). "The A-Design approach to managing automated
design synthesis." Research in Engineering Design 14: 12 - 24.
Campbell, M. I., Cagan, J., et al. (1998). A-Design: theory and implementation of an
adaptive, agent-based method of conceptual design. Artificial Intelligence in
design, Lisbon, Portugal.
Campbell, M. I., Cagan, J., et al. (1999). "A-Design: an agent-based approach to conceptual
design in a dynamic environment." Research in engineering design 11: 172-192.
Chakrabarti, A. (1998). Supporting two views of function in mechanical designs. AAAI 1998.
Madison.
Chakrabarti, A., Sarkar, P., et al. (2005). "A functional representation for aiding biomimetic
and artificial inspiration of new ideas." Artificial intelligence for engineering
design,analysis and manufacturing(AIEDAM) 19: 113-132.
Chandrasekaran, B., Goel, A., et al. (1993). Functional representation as design rationale.
Clement, S., Jordan, A., et al. (2004). The use of evolutionary algorithms in prototypes in
engine development at Volkswagen AG. MTZ.
Deng, Y. M., Briton, G. A., et al. (1998). "A Design Perspective of Mechanical Function and
its Object-Oriented Representation Scheme." Engineering with Computers 14:
309-320.
Esterline, A. y Kota, S. (1992). "A General paradigm for routine design - theory and
implementation." Artificial Intelligence in Engineering Design, Analysis, and
Manufacturing 6(2): 73-93.
Hatchuel, A., Masson, P. L., et al. (2004). C-K theory in practice: lessons from industrial
applications. International Design Conference - Design 2004, Dubrovnik.
Hirtz, J., Stone, R., et al. (2002). "A functional basis for engineering design: reconciling and
evolving previous efforts." Research in Engineering Design 13: 65 - 82.
Horvath, I. (2000). Conceptual design - inside and outside. 2nd Seminar and Workshop
EDIPro, Poland.
Jin, Y., Li, W., et al. (2005). "A hierarchical co-evolutionary approach to conceptual design."
Cirp Annals-Manufacturing Technology 54(1): 155-158.
Li, C.-l. (1998). Conceptual design of single and multiple state mechanical devices : an
intelligent CAD approach. Mechanical Engineering. Hong Kong, University of
Hong Kong: 347.
Li, C. L., Chan, K. W., et al. (1999). "Automatic design by configuration space: an automatic
design system for kinematic devices." Engineering Applications of Artificial
Intelligence 12: 613-628.
Li, C. L., Tan, S. T., et al. (1996). "A qualitative and heuristic approach to the conceptual
design of mechanisms." Engineering applications of artificial intelligence 9(1): 17-
31.
Li, G., Bracewell, R., et al. (2001). A knowledge framework to support engineering design.
Eighth ISPE International Conference on Concurrent Engineering.
Lossack, R. (2002). Design process and context for the support of design synthesis.
Engineering Design Synthesis. Understanding, Approaches and Tools.
Chakrabarti, A. Londres, Springer-Verlag: 213 - 227.
Lossack, R. S., Umeda, Y., et al. (1998). Requirement, function and physical principle
modelling as the basis for a model of synthesis. Computer Aided Conceptual
Design'98.
Smart, J., Roebling, R., et al. (2006). wxWidgets 2.6.3: A portable C++ and Python GUI
toolkit. 2007.
Takeda, H. (1994). Towards multi-aspect design support systems. Technical Report NAIST-
IS-TR94006. Nara - Japón, Nara Institute of Science and Technology.
Takeda, H., Yoshioka, M., et al. (2001). A general framework for modelling of synthesis-
Integration of theories of synthesis. International Conference on Engineering
Design - ICED'01, Glasgow, Elsevier Science.
Tomiyama, T., Takeda, H., et al. (2003). Adbuction for creative design. ASME 2003 - Design
Engineering Technical Conference and Computers and Information in
Engineering Conference, Chicago, EEUU.
Umeda, Y., Takeda, H., et al. (1990). Function, behaviour, and structure. Applications of
Artificial Intelligence in Engineering V. Gero, J. Berlin, Springer. 1: 177-194.
Vajna, S., Clement, S., et al. (2005). "The Autogenetic Design Theory: An evolutionary view
of the design process." Journal of Engineering Design 16(4): 423-440.
Van Wie, M., Bryant, C. R., et al. (2005). "A model of function-based representations."
Artificial Intelligence for Engineering Design, Analysis and Manufacturing
(AIEDAM) 19: 89-111.
Vidal, R., Bermell, P., et al. (2002). Definicion de una arquitectura para la asistencia en el
diseño de productos. VI International Congress on Project Engineering, Barcelona.
Xu, Q. L., Ong, S. K., et al. (2006). "Function-based design synthesis approach to design
reuse." Research in Engineering Design 17: 27-44.
Zavbi, R. y Duhovnik, J. (2001). "Conceptual design chains with basic schematics based on an
algorithm of conceptual design." Journal of Engineering Design 12(2): 131-145.
Zhang, W. Y., Tor, S. B., et al. (2003). "FuncDesigner a functional design software system."
International Journal of Advanced Manufacture Technology 22: 295-305.
Departamento de Ingeniería de
Sistemas Industriales y Diseño
Presentada por:
Dioclécio Moreira Camelo
Dirigida por:
Dra. Mª Rosario Vidal Nadal
Dra. Elena Mulet Escrig
DOCTORAL
T E S I S
Castellón, 2007