CORDIS - Wyniki badań wspieranych przez UE
CORDIS

Welding process planning and parametric pricing software solution for SMEs

Final Report Summary - WELD-IT (Welding process planning and parametric pricing software solution for SMEs)

Executive summary:

In the frame of the WELD-IT project (Grant agreement no.: 262580) the members of the Consortium aimed to develop a software for welding process planning and parametric pricing. The main objective of was to develop a costing tool that helps welding experts and engineers in calculating the overall costs of complex welding projects and preparing quotes.

The scientific and technological development carried out can be divided into the following work packages:
- Market research and system specifications (WP1) aimed to collect information on the demand for the szstem from consortium partners and potential customers as well as to specify functional requirements on the product.
- Modelling and system design (WP2) within which software architecture and database was designed.
- Database development (WP3) - during this WP the database was implemented and collected data uploaded.
- The core algorithms were implemented under Development of decision supporting system (WP4).
- During the implementation of WP5, CAD file processing, a module interpreting the most often CAD files and extracting important information out of them was developed.
- Pricing module and Graphical User Interface were developed under the work package Report Generation (WP6).
- The whole system was tested and validated during the implementation of WP7 Testing and validation.
The dissemination and the exploitation of the results and the consortium management were executed in the frame of work packages 8 and 9.

The main achievements can be summarized as follows:
The accuracy of the Decision Support System (DSS) in selection of the best matching WPS reached 70-80% by means of the position of the tested WPS within the 22dimensional space of the set of 170 WPSs. The DSS based on ANFIS (Adaptive-Network-Based Fuzzy Inference System) was also successfully tested for the ability of self-teaching in the case new WPSs are added to the system. This feature of DSS ensures that the accuracy increases with an increasing number and homogeneity of WPSs saved in the system.

Pricing module is capable of calculating costs of welding jobs using as input data either automatically prepared data by DSS and CAD module, manually filled by the welding expert or their combination. It takes into account equipment cost, labour cost, material cost, and energy cost.

Project Context and Objectives:

Welding is a major route of fabricating steel and thermoplastic structures and therefore approaches a reasonable portion of industrial and other sectors. When designing a joint, from an engineering point of view, many aspects have to be taken into account such as amount of load, nature of load, sheet thickness, material, welding technology, etc. But on the other hand, as an industrial process, the cost of welding plays a more crucial role in manufacturing decisions. Many different variables affect the total cost, including equipment cost, labour cost, material cost, and energy cost.

Despite high level automation and developed information technologies applied in engineering, cost/price calculation of welding projects are still performed manually by welding experts with a basic software support. Companies commonly employ or hire welding engineers exclusively for performing this task. Depending on the volume and complexity of the project, pricing process can last from hours to weeks, costing from few hundreds to tens of thousands Euros. Due to its inflexibility, it was clear that this method would become inappropriate in a short time and a highly computed method will be required in order to catch up with the even shorter product development cycles, the increasing demands and the tough competition. It was found highly important for small and medium-sized entreprises (SME)s in the welding industry to be able to have access to such type of innovation in order to keep on being competitive in front of large companies and big players in the sector.

Furthermore, maintaining the competitiveness of European welding companies is getting even more challenging due to pressure and constraints that players of welding industry have to face:

Keeping up with the rapid change in technology
Although welding is considered as a conservative technology, many of the facts and figures show very gradual changes (over 10-20 year spans). The speed of change is increasing though and in response to this dynamic environment, developments in welding technology are keeping pace.
Increasing international competition
For reasons of cost efficiency, less-developed countries have been explored to provide materials and labour for developed regions. Consequently the outsourcing to Eastern countries is rapidly increasing. (2) To give an answer to this trend, these countries are putting great emphasis on developing the necessary skills and infrastructures.
Higher demands, lower costs

Shortage of welding experts

There is a recognised world-wide short supply of welding engineers, which makes the access to their knowledge very difficult and expensive.

Increasing and comprehensive legislation

Rising awareness of environmental, social and economic concerns, EU is urging putting in force directives aimed at products and associated manufacturing implications. These efforts are realized in standards, the international recognition of which is really needed with the increasing pace of globalisation.

WELD-IT aims to address above mentioned constraints and the complex nature of welding by providing the welding companies with hardly accessible expertise regarding welding within a tool that enables to price, plan and manage welding projects in a fast, cost-effective, flexible and sophisticated way.

Being a knowledge-based, "assistive" tool, it supports welding engineers and technicians in pricing and defining the optimal welding processes for a fabrication by taking into account the most relevant parameters/information: project requirements and specifications, customer preferences, manufacturing capabilities, resource allocation, standards and best practices.

To support and speed up this process, a software tool that can interpret Computer Aided Design (CAD) models had to be developed to assist welding engineers while also contributing to the elimination of the above mentioned threats.

With the developments in the information technology sector the WELD-IT consortium had realized that this existing need could had been solved by targeting the following objectives:

General objectives:
- To develop a costing tool that helps welding experts and engineers in calculating the overall costs of complex welding projects and preparing quotes
- To develop a decision tool that helps companies realize their limitations in manufacturing capabilities in terms of technology and capacity, thus supporting investment decisions
- To develop a tool that manages the planning and execution of welding projects from a technological point of view taking into account major parameters like facilities, capabilities, resources and expertise of a company

Scientific objectives:
- To explore the relations and interdependencies between technological steps in welding
- To explore the relations and interdependencies between welding processes and the related technologies

Technological objectives:
- To design the structure of WELD-IT software and database
- To develop a decision supporting system which is based on neural networks and contains all the relations regarding welding processes
- To develop a CAD model handling module in which specifications of a welded product can be graphically inserted
- To develop a software which calculates the costs of a welding project with the help of the decision supporting system
- To develop a GUI for WELD-IT system
- To perform tests with WELD-IT system and validate its functionality

Project Results:

WELD-IT
The main result of the whole project is the WELD-IT software itself, a costing tool that helps welding experts and engineers in calculating the overall costs of welding projects and preparing price quotations. The system results can be divided into 4 sub-result areas: Database, Decision Support System, CAD file handling module, Graphical User Interface. These results will be described in depth in this part of the report.

WELD-IT as a whole
The development of the system started with the system specification. The main objective of the system specification was to define the functionalities of the product by taking into account the main problem. The different problems were classified and separated into groups and the outcome became the description of the software modules. During the development of the system specification the most commonly used methodology was implemented.

Methodology
The methodology used during the system specification was mainly based on background research and user comments but the actual process was broken down into a number of steps: 1. Literature review was carried out, 2. Market survey results were reviewed and analysed as it was detailed previously, 3. Most important factors and functions were defined based on the first two steps, 4. Initial structure was defined including the important factors and functions by the RTD partners to be used as a guide line by the end users, 5. Partners reviewed the initial structure and their comments were collected and evaluated, 6. Based on the comments, in-depth discussions between the key partners, 7. Presentation of the final System specification.

Structure of WELD-IT
The WELD-IT's structure can be broken down into 5 main component types by means of different function and containing different information or algorithms. These main component types are defined as the task related components, the hidden software components, the visible software components, the editable background components and finally the Welding Documentation Pack. All the components were designed so each component can be treated and developed separately but when joined up with the rest can be fully functional. The specification of the system was based on this structure. The structure can be seen in the file (weldit_structure.png).

Resource planning module
By taking into account the company's available resources (from the database and previous welding tasks) the Resource planning module is able to plan the most appropriate human and material resource allocation for one specific welding task.

Pricing module
The pricing module is responsible for the calculation of the overall costs of the work to be done, including the personnel and material costs, working hours and etc.

WELD-IT software containing all the components described above is designed to be operated by a welding expert on a personal computer (PC) with: 1 gigahertz (GHz) or faster 32-bit (x86) or 64-bit (x64) processor, 1 gigabyte (GB) RAM (32-bit) or 2 GB RAM (64-bit), DirectX 9 graphics device with WDDM 1.0 or higher driver, Windows XP operating system with Service Pack 3 or above and Broadband internet connection (xDSL).

System design methodology
The objectives for the system design phase were:
1. To create a software design that consists of the overall interaction of all the WELD-IT modules and the basic architecture of the Decision Support Systems (DSSs).
2. To provide a database structure which is the central information storage and contains the classification and the management system of all the different types of data needed for the operation of the software.

Add 1} Software design methodology
The complete WELD-IT system architecture was created based on the system specification reported and approved by the consortium members and experts. The system specification contained all the different components and modules that are needed for the operation of the WELD-IT system including their communication flow. Within the system specification the task related components were also specified, which also corresponds to the inputs of a specific task. Starting from this input information and the structure the methodology of the architecture design ran on two parallel threads. 1. The output data was specified through determining the information required in the Welding Documentation Pack (WDP) according to the needs of the end user partners. The information gathered in the WDP was divided into three main parts covering all necessary areas needed for an accurate price quotation. These were welding technology related information, manipulation details and required resources. 2. The necessary modules and their functions were identified and the corresponding algorithms were specified. In addition the communication flow between the modules were finalised based on the input and output information of each. By completing these two tasks described above it was possible to determine all the inputs and the outputs required together with the main functions of the software.

WDP
The aim of the WDP was to determine the main outputs of the WELDIT software from the point of view of the costumer and from an internal user point of view. From a costumer point of view a WDP overview includes a summary that may interest the costumer. This will be the "visible" output of the software that can be sent to the costumer and should be laid out like a price offer including the main categories of costs. The user information is a lot more detailed. This is only for internal use (confidential) so the user knows the costs broken down to each joint giving him or her chance to modify them or give discounts. This will be the "complete" output of the software. The welding variables are estimated either by the user or generated by the Fuzzy Neural Networks in the SWQ Decision Support System (DSS). The DSS works through gaining information from template WPSs already included in the software, other user checked and accepted SWQs and information from the CAD file as well as from the user. It consists of the following parts: Basic information (this information is most likely to be user input.), Welding preparation details (The graphical representation and the joint design might be available from the CAD model or can be added manually, Welding details (these are the parts that will be generated by the Fuzzy Neural Networks. The generated output will be revised by the user and can be modified at any time.), Other information (Manual input if needed.

Manipulation DSS
Manipulation DSS was intended to be responsible for identifying the amount of effort (resources, time, and equipment) it will take to position, place and clamp a given structure. It was planned to use the genetic algorithm for this and the output would be a Manipulation Data Structure.

Resource DSS
Resources DSS is responsible for making sure the most suitable resources are available for the given task using analytic hierarchy process algorithm (decision tree). The output will be the resource DS. The outcome of these algorithms can be summed using discrete integration to achieve the WDP data, which is the output of the software.

SWQ DSS
SWQ DSS is responsible for identifying the most applicable process for the specific job and modifying it accordingly to create an SWQ Data Structure (DS) using the fuzzy neural network algorithm.

Add 2} Database design methodology
Based on the WDP the fields were identified and grouped into tables in order to determine the data structure. This was done using SQL (structured query language). The key fields were selected to identify records, relations between tables were determined and normalised (1NF, 2NF, 3NF, BCNF). The aim of the steps above was to create a stable and reliable database structure with controlled redundancies in order to avoid data loss and to maximise the efficiency of the available software and hardware components. The database structure was designed in MySQL WorkBench which allows the SQL code generation from design views simplifying the database development process.

Software design
The architecture which can be found in weldit_architecture.png can be best described by explaining how the information flows and manipulated throughout the software. The CAD file and the filled out forms are uploaded into the dialogue layer and the "CAD-translator" translates the information into a descriptor language. This information is acknowledged and fed into the different decision support systems (DSS) in the knowledge layer. The outcome of the DSS goes into the data structure that communicates through the data engine. The layers are supported by the administration layer. The above presented architecture is explained in more detail below broken down to individual parts. Dialogue layer and CAD translator is responsible mainly to interact with the user of the system for example for handling the login authorisation, displaying the GUI and data, loading CAD files or specifying welding details. In order to generate the required output data (WDP) from the input data given in the system specification a Knowledge Layer was introduced that is the "heart" of the WELD-IT system. The Knowledge Layer (KL) consists of an acquisition module that collects the information from the Data Layer (input data) and compares it with the information stored in the database to find correlation. It is linked to the 3 main Decision Support Systems (DSS) each with specific inputs and outputs through a core algorithm: SWQ DSS is responsible for identifying the most applicable process for the specific job and modifying it accordingly to create an SWQ Data Structure (DS) using the fuzzy neural network (FNN) algorithm. The FNN works the following way: Several inputs are given, each input is transformed into the defined language descriptor, filtered by rules, partial truth applied, and best result is selected. With respect to WELD-IT the FNN can be applied as follows: Based on the template WPSs and previously generated SWQs stored in the database the algorithm selects one which fits the bests for the given problem, the parameters and variables of the template WPS will be adjusted, the new SWQ can be stored for further use. Manipulation DSS: The DSS for determining the manipulation data was intended to be based on the genetic algorithm (GA) and a training set consisting of manipulation examples.

Database
As a result of the database development a storage system was created where amount of welding related information can be found in a structured way which helped the decision supporting system. The objective of this development was to implement the designed database structure including tables and relations. This process can be divided into several steps which are the following: 1. Database server set up and configuration of user rights - A Linux based server was set up and configured and a MySQL server was configured which stored the required data during the development of WELD-IT. 2. Database SQL code generation and WELD-IT database creation: SQL codes had to be prepared for the database creation. These source codes were written by using Data Description Language (DDL) elements. 3. Database integrity checking, fine-tuning: Several tests were performed by uploading, modifying and querying sample data from the database. After the tests based on experience necessary modification on the database design has been performed. 4. Database tools development, testing and fine-tuning: A specific application was developed in .NET framework 3.5 in order to make connection between the user and the database friendlier. This software was used by software experts to easily access the WELD-IT database, to upload new elements or even to modify or delete them. The implementation of the database structure and the corresponding database tool were totally in-line with the determined design. As a first step in the database building it was necessary to set up a server which runs 24/7 and is able to store the collected data in a structured way. The best solution was to set up a Linux based server and to install the most popular free and open source database server engine MySQL. Once the operating system and the software back-end were determined it was necessary to define the required hardware parameters. During the selection of the hardware components for the database several circumstances were taken into account. The server must be on-line continuously but it does not have to be a high-end server because it has to answer limited request. The required software could not be installed on an existing hardware due to security reasons and company policies. The circumstances have been identified as follows: determined load of web and database server, amount of data to be stored in the database, number of requests to be served by the database server, network bandwidth, maintenance and environment, security considerations. As a result a low power consumption computer was selected with Intel MB D510MO Mini-ITX main board with integrated Intel Atom process. The processor has two cores and operates at 1.6GHz and the calculations are supported 2GB of RAM. The HDD (Hard Disk Drive) is a 2.5" 160GB Western Digital SATA drive and operates at 5400RPM. As a starting step several test were performed and it has been proven that the selected configuration can fulfil the requirements and can serve the requests relatively fast. The server can be reached via internet. Once the hardware was set up the operating system and the required software was installed. Ubuntu Linux was installed onto the system. During the development the operating system was continuously maintained and upgraded to the newest versions of the OS. The current version running on the server is 11.04 with the codename Natty Narwhal. As it was mentioned the selected software environment is MySQL. The reason behind this decision was that the server is very easy to install and to maintain. In the other hand it is for free of charge and in exchange it gives very reliable and fast database management solution. The current version of the MySQL server is 5.5 and this version ran on the server. Two other components have been installed to the system just for maintenance and configuration purposes. The first one was an SSH server with NX server application to ensure remote control of the system while the other was MySQL admin which is a database administration tool design and developed for MySQL servers. Once the tables and their relations and structures had been identified source codes were generated. During the system specification the development environment was selected by identifying crucial software features which fit the best for the given problem. These aspects were the following: Compatibility with MySQL databases and its functions (views, stored functions), Connection to existing databases and handling SQL queries and their results, Automatic code generation based on graphical design, Maintenance functions and remote control. As the selected database server was identified as MySQL it was obvious that the development environment should be selected from the same producer as this would be the most compatible solution for the database server. After looking through the available software packages at MySQL's website MySQL WorkBench was selected as it has all the functionality that was needed. However the MySQL WB is capable to generate code automatically from existing designs it was necessary to fine tune the generated code and restructure it. Due to the strict rules and constraints in the database structure some table must be created before a connecting table should be defined. Unfortunately MySQL WB does not take this into account and generates the code for the tables in ABC order. After the codes had been generated and required fine-tunings had been performed the database generation code has been queried to the server through the connected MySQL WorkBench. Once the database and the related table with the constraints were created several tests were performed in order to make sure that the rules of the database work perfectly and to check the integrity of whole structure. Several queries were sent to the server with fictional data that were edited and deleted during the tests. At the end of the tests it was proven that the system works perfectly and modifying sub-tables will not harm the consistency of the developed structure and the data remain readable. During the testing some constraints had to be eliminated and a few had to be added or modified. In some cases "UNIQUE" modifier of a field had to be applied or had to be removed. As a following step a consultation with the field experts of welding and software design took place. During the consultation the database has been restructured to speed up the development. As result several tables were eliminated, some of the tables were restructured and some were merged with other tables. Based on the suggestions some of the connector tables were removed especially in the cases where data can vary in length and in type, which make the use of those tables causeless, and the content is moved to the main tables. The types of several fields have been modified according to the experience of the welding experts. By the end of the process the final version of the database is created and a code generation and testing took place once more. As a final step of the database development was to develop a software application which made the data upload easier by offering a graphical user interface with the required fields shown. This aided and speeded up the data collection by eliminating the SQL editing for the user. The main goal of the Database tool was to develop a tool that can be used by everyone without having deeper knowledge database systems and their working mechanism and it is not necessary to know the SQL language in-depth. The most important features of this tool, such as data transformation, connection management, uploading and downloading data, remained hidden before the users' eyes. As this tool was only about functionality the Graphical User Interface did not get any special attention, only buttons, text-fields and tables were visible for the user. The developed GUI of Database tools can be separated into different areas and different functions. The most important part of the software is the main window where everything can be found and can be controlled. For instance if a user wants to add a new company to the database, the process can be started from the main window while modification of existing records can be initialised from this window as well. A screenshot of the window can be found in the weldit_screenshot_databasetools.png file.

FNN DSS
A Neural Network based Decision Support System was created to help the user at decision makings. The Decision Support System can be considered as the 'brain' of the WELD-IT application. The main objective of the DSS development was to implement and to validate the core algorithms of the FNN (Fuzzy Neural Network). The performance of this software module greatly depends on the training data as the quality and accuracy of the DSS (Decision Support System) is the result of the training procedure in which the collected data was used. Once the training set was collected and was evaluated by the field experts the development has been started with a data extraction procedure which aimed to locate the most important and most often used parameters that can be found in the most WPSs (Welding Procedure Specification). This procedure was followed by the input – output data pairing, which is basically the determination of the FNN structure. This sub-task required close collaboration within the RTD partners of the consortium to keep the list of abbreviations correctly updated. The most important part of the proposed system was the FNN which can select the most appropriate WPS with regards to the requirements helping the pricing and other modules to calculate the most accurate prices that form the basis of the price quote.

The most crucial task always has a predecessor phase which in this case is data collection and uploading. The main difficulty in this development was that the project aimed to cover mechanical engineering field with IT tools which results in the close collaboration of the experts of both fields. However IT and mechanical engineering can be considered as engineering sciences the two fields are extremely far away from each other which result in communication problems several times. Every time new phrases, abbreviations or technologies come to light which will result in additional rules and an increase in coding complexity. Let's take a very simple example. A single sided joint will have only one weld on its one side and will have only one preparation which preparation can have 3-15 different parameters based on its specification. For example a single-sided full penetration butt joint with V shape preparation can have only 3 parameters. Introducing a new single-sided joint preparation type like U, W or square will result in increase of preparation specific parameters and additional rules. The data was collected into Excel files and used to create the naming conventions that will be used later on the training of the ANFIS module. Data pairing was one of the most crucial steps during the development. It was necessary because different WPSs contained different naming for the same input parameter, such as in case of MAG welding process, in some cases the process was identified with different naming such as MAG, Manual Arc, 135-MAG and so on. To make sure, that every WPS contains the same naming, all of them were inspected and the parameter values were collected and uniformed.

The uniformed "tags" used to replace the original values and the modified WPSs were used in the neural network. At the very beginning of the development, during the data extraction period 22 input parameters were identified which can affect the result of the outcome of the system as these parameters have effect on the different welding parameters. Some of the WPSs have more parameters than one and due to this fact several different rules has to be set up. These rules are based on the extracted data and were determine which parameters will build up the input data domain. The domain acts as a set of common values. To implement the Decision Support System of WELD-IT ANFIS (Adaptive-Network-Based Fuzzy Inference System) was used. The conventional mathematical tools used for system modelling or system description were not suitable to handle uncertainties in situation like in WELD-IT therefore a system was needed which can deal with uncompleted input data. For this purpose a fuzzy inference system employing fuzzy "if-then" rules can model the qualitative aspects of human knowledge and reasoning processes without employing precise quantitative analyses.

Depending on the types of fuzzy reasoning and fuzzy if-then rules employed, most fuzzy inference systems can be classified into three types:
Type 1: The overall output is the weighted average of each rule's crisp output induced by the rule's firing strength (the product or minimum of the degrees of match with the premise part) and output membership functions. Membership functions representing the degree of truth as an extension of valuation. The output membership functions used in this scheme must be monotonic functions.
Type 2: The overall fuzzy output is derived by applying "max" operation to the qualified fuzzy outputs (each of which is equal to the minimum of firing strength and the output membership function of each rule). Various schemes have been proposed to choose the final crisp output based on the overall fuzzy output; some of them are centroid of area, bisector of area, mean of maxima, maximum criterion, etc.
Type 3: The output of each rule is a linear combination of input variables plus a constant term, and the final output is the weighted average of each rule's output.

The most important part of the system is the five layers in between with the following rules:
Layer 1: Contains parameterised or adaptive input nodes, which describe the complete domain of the input side of the system. The input domain is represented by membership functions which describes continuous intervals and / or set of discrete values. Parameters in this layer are referred to as premise parameters
Layer 2: very node in this layer is fixed, and this is where the first T-norm (triangular norm) generalises intersection in a lattice and conjunction. More clearly this node used to 'AND' the membership grades.
Layer 3: The elements of this layer are fixed nodes which calculate the ratio of the firing strengths of the rules. This means that all the membership function of each fuzzy clause is being calculated and combined here. The outputs of the elements in this layer are called as normalised firing strength.
Layer 4: This layer holds adaptive nodes and performs consequent of the rules, or more clearly it adds the 'THEN' term to the expression. The parameters in Layer 4 are referred to as consequent parameters.
Layer 5: Layer 5 is a single-node layer and stands for to compute the overall output of the system.

With regards to the papers and following the design directives of the ANFIS system the developed system looks like as it is depicted weldit_anfis_type2.png file. For the proposed solution of the problem Type 2 had been chosen as it is capable to select a specific WPS based on the specified rules. As it can be clearly seen the system deviates in one point from the general way. The third layer is not implemented therefore it has no effect on the output as there is no overlapping in the Linguistic Variable list which means that the input parameters has no effect on each other. That is the reason why every "Linguistic Variable Node" has its related and own Product Node for calculation and that is why the result could be sent directly into the fourth layer. In all other details the system completely matches with the original ANFIS design. During the development of the ANFIS system especially in the design phase a question of development platform appeared. From the work point of view it would be better to develop the complete system in the same environment (Visual C# and .NET) in order to reduce the development step, but on the other hand it was obvious that the training of the system could not be done by the software developers as it requires welding experts' presence. Due to this fact the development has been started in two parallel threads. On one side the development started with the traditional design method. Set of use-cases has been identified as a first step. All the possible events that can occur during the use of the system were modelled. Later on during the development the class diagrams of the ANFIS system have been created. In this case a class has been created for each layer, the nodes in the layers could be represented by a class as well and the connections (rules) between the nodes are represented as well. The other coding thread was a bit different from the usual design and development steps. In order to ensure that the training and validation of the FNN system runs continuously a tool was found, a tool which can deal with complex computations on relatively large amount of data. Moreover it has to be readable by everybody and more importantly has to be editable by most of the welding experts. The ideal tool for this purpose would be an application that can be found in most offices and / or free, open source software that can be reached by everybody. Due to this fact and the platform independent behaviour of it Libre Office has been selected. It has advantages such as: platform independent solution (Windows, Linux, osX, etc), Intuitive spreadsheet editor just like Microsoft Excel, available for free of charge for each platform, spreadsheet can be converted into MS Excel's .xls and .xlsx format, can handle complex formulas, access to Macros to include more complex programming tasks.

The structure of the spreadsheet pretty much followed the structure presented in the previous section as each layer got separate sheet. The nodes identified on each sheet were placed in cells and their values were highlighted accordingly. 9 sheets were included in the file, 1 for data pairing, 1 for checking, 1 FrontEnd, 4 Sheets for ANFIS and 2 supporting sheets which contain useful information with respect to the rules and possible values. An example of such a sheet is illustrated in the picture weldit_screenshot_dss_spreadsheet.png attached to this report. The training of a system like this required the presence of a welding expert or at least guidance to prepare a preliminary training and later on in terms of the results the system was fine-tuned. From the structure point of view there were two parts of the process that can be considered as training. The first was the definition and implementation of Input, output domains at 'CrispDomain' sheet which are responsible for applying rules on data. This means that the membership functions have to be defined exactly. The other training which is more important was the setting of the square shaped nodes in layer 1 and Linguistic variables sheet. As it was mentioned these nodes have effect on the output of the product and can be changed and fine-tuned in the whole lifetime of the system. These nodes are responsible for the adaptive behaviour of the system. This process was quite straightforward however it required continuous communication with the field experts. It was necessary to train and to set up the membership functions of each node in layer 1 and 4. The easier part of the training was to train layer 4 as it has only a sum with some weight operators included which are set to 1 at the moment ensuring that each parameter has equal rights to change to output.

The other part of the training was a bit problematic for the software experts as it was carried out on input side of the system. In some cases it was obvious that what kind of mapping has to be applied on the parameters and what is the membership function of each while in several cases the domain is described by a continuous interval and in addition in several cases the membership function is described by discrete set and continuous interval. This task was carried out with the help of TWI by MFKK. As it could be clearly seen the training set was very consistent and the values were very close to each other, which means that the template WPSs were very similar to each other and covered a very small area of the whole domain. The system has 22 input parameters used for WPS identification in worst case. In some cases it could be less based on the training method but as it was mentioned the less training point results in less accuracy in calculation and could lead to false result. As a first look the system performed well and gave adequate responses for the various input variations. To present the system a set of "fake" samples were created and was used to prove that the system always selects the best fitting template WPS from the available database. At that point the system was working but some minor bugs have been spotted and needed to be eliminated. In addition several extra functions were included to aid the fine-tuning work of the system.

The improvements made were:
1. Improved input domain: During the training of the ANFIS system only the parameters and their domains were included in the FNN that could be found in the template WPSs, which obviously did not cover all the possibilities. However this fact had no effect on the quality of the neural network as all of the parameters, which were not included during the training, were out of the initial domain.
2. Corrected formulas: Some of the equations in the spreadsheets were referenced to invalid cells, which resulted in slightly incorrect calculations. In some cases a few cells were not taken into consideration during the calculation which again increased the errors in the formulas. These kinds of errors are identified and eliminated in order to achieve the highest accuracy of the system.
3. Retrained system: Some problems were highlighted by the welding experts, such as naming conventions, values of parameters, mixed parameters. By going over a checklist all the errors were eliminated and the switchboard of the FNN has been adjusted accordingly.
4. Dynamic weighting system: In the first version of the ANFIS system the weighting of each parameter was so called "hard coded" into the system which makes the fine-tuning very time consuming and ineffective. In addition it significantly increased the possibility of errors during the tuning of the system. That was the reason why extra tables have been included and dedicated to pass the weights to the corresponding formulas.
5. Automatic training evaluation: Once the weights were changed in the table the marking system had to be re-evaluated and recalculated.

In the first version the evaluation was performed manually which was an extremely time consuming work to carry out as the marks of all the possible combination had to be determined. By taking into account the switchboard, the weight table, the Mu values and the product node tables all the values are recalculated accordingly. This automation speeds up the validation and fine-tuning process of the WELD-IT ANFIS system. During the fine tuning the main participants were the RTD partners and GIFLEX.

The fine-tuning methodology of the ANFIS system was based on the actions as follows:
1.Error checking by partners and bug report: The FNN document was sent out to project partners to evaluate the system and express the first-look impression toward the developers by commenting each part and highlight every single part that require attention.
2. Implementation of corrections: In the document several improvements were implemented in the FNN based on the comments. Several bugs and calculation errors were corrected and many extra functions that could speed up or aid the validation process were included as extra.
3. Collection of fine-tuning examples: As the main development had been carried out at MFKK in Hungary the other Hungarian company of the consortium, GI-FLEX, was asked to collect a set of examples that can be used to validate and fine-tune the system.The main criteria during the collection were to gain information which might fit in the training set and totally different from it. The main reason behind this decision was to introduce unknown input combinations to the FNN and see what happens after. Knowing the desired answers it is possible to adjust the weights of each parameter.
4. Fine-tuning of ANFIS based on the collected examples: The fine-tuning was a long process where the collected samples were used as evaluation points in the multidimensional input domain space. The procedure had been carried out in close collaboration with GI-FLEX where the main goal was to reach the highest accuracy with the unknown input combinations while keeping the 100% of the previously trained points from the template WPSs. In case of a three or four-variable system it is relatively easy based on assumptions as it can be observed how the different variables affect each other. In case of a 22 dimensional system it is much more difficult and requires significant increase in terms of attempts to find the best weight combinations. In addition several rules cannot or extremely difficult to formulate, such as complete exception. In these cases the rules were implemented in the final coded version.
5. Evaluation: Once the fine-tuning was finished between MFKK and GI-FLEX the modified and updated system has been sent to TWI to validate the results of the development. This process seemed to be efficient and appropriate; therefore this methodology was followed during the remaining time of the development. The results of the initial unit tests of the fine-tuned ANFIS system were satisfactory. As a conclusion of Decision Support System development it can be said that the system worked fully according to the expectations. During the first test of the fine-tuned system GI-FLEX found that the responses were adequate both for the known (training) and unknown (fine-tuning) data, therefore the fine-tuning process can be considered as a success. This means that the bugs and errors were corrected and the extra functions implemented worked accurately.

Two more important conclusions:
1. the training data was very homogenous and there were overlapping due to the similarities in the parameters, which meant that the covered area was pretty much gapless, however this area is extremely small.
2. During the development of DSS the consortium decided not to develop manipulation related components as there was no correlation found between the manipulation parameters and the time of manipulation to calculate the cost of manipulation.

CAD module
The developed and integrated CAD module can be considered as the result of the CAD Module development. The aim of this part of the system was to develop a software module that is able to interpret the most often used CAD file formats and to develop a library that is able to extract the information from the translated data and find the characteristics points and features. The CAD module provides the geometrical and welding related information to the other components of the system. Part of the development a research was carried out about the different CAD files processing solutions which are available on the market and provided by 3rd party software developer companies. As the main focus during the project was identified as the welding parameter estimation the partners agreed that an off-the-shelf software component could be the best choice to interpret the defined CAD files. The work done could be divided into two parts. The first was the system specification and market survey in which the major requirements towards the system were identified and described. During the market survey from the responses it became clear that nowadays most of the companies use Autodesk product and almost all of them are capable to edit and visualise DWG or DXF files. During the preparation of the system specification it was emphasized that such file formats need to be supported by the WELD-IT application. Following this a market research was carried out in order to gather information about the commercially available CAD file processing software libraries and their capabilities and limitations. Several software development companies were contacted which seemed to be appropriate to the purposes of WELD-IT. As it was mentioned before the main goal of this task was to find the best fitting CAD file interpreter which is a part of the WELD-IT final product.

NET 8 library from Cad Soft Tools. This module has significant effect on the work progress as this module handles the input to the other modules of the system. During the specification of this module it was found that the companies mainly use DWG and DXF files that points to the fact that the companies have mainly AutoCAD as installed engineering system. AutoCAD put emphasis on 3D solid modelling instead of surface modelling however it is also supported but most of the 3D drawings are created by using solid elements. The demo version of the Software Development Kit (SDK) was included to the first version of the WELD-IT software to demonstrate the proof of principle. The CAD files processing is carried out by the software library automatically and supports all the required entities for the demo purposes. During the preparation of the demo application it came into light that the entities are structured in a logical way and complex elements are built up by using simpler ones.

Price calculation, Graphical User Interface
As a sub-result of the WELD-IT system a price calculator dynamic link library was created. Further result of this phase was the development of the Graphical User Interface (GUI) where the previously developed modules were integrated. The aims of this library were to develop a price calculator module and a Graphical User Interface (GUI). Price calculator module focuses on methods and procedures to be applied by the WELD-IT package, in order to estimate the costs associated with the various tasks involved in manufacturing a welded component. TWI considered the most common manufacturing tasks and, following discussion and in agreement with the consortium, these were divided into tasks for which the costs can be estimated by the software (via default values or rules), and those for which the software user needs to enter a value, e.g. as a percentage of the total cost or as an estimated figure (attached weldit_welding_tasks.png).

For the latter, it was established that reliable cost estimations cannot be obtained via procedures and/or formulae to obtain due to the elevated number of variables and the level of uncertainty associate with each of them. Microsoft Visual Studio 2010 was then used to create class diagrams of each group of functionality. These diagrams show the inputs required and methods available to the user. These were designed in such a way (as far as possible) that one class maps to one data section in the API developed by TWI. For example, in TWI's API, one can specify a single arc head which has a current and a voltage. For the development of the API, Microsoft Visual Studio 2010 was used. The class structure was obtained from the class diagrams generated earlier in the process. As much as possible, the properties and methods are self-documenting. Comments are provided at every necessary opportunity, and every property or parameter that has a unit has been documented as such. An exception to complete in-code documentation is the parameters for the area calculations for the joint specification classes. In the price calculator module API structure Each Joint, process specification is given its own class, requiring data entry of details like joint preparations or reinforcements. The properties of each Process specification differ for each process, but they could include materials (such as electrodes, wire, flux and/or rods), gas (shielding, plasma and/or backing), labour parameters, plant (welding equipment) and power parameters. They all have a common property, Degree Of Mechanisation, which apart from the manual metal arc process can be either "Manual", "Fully Automatic" or "Mechanised". The manual metal arc process always has a "Manual" degree of mechanisation. If a process has a consumable required for welding (such as electrodes, backing gas, etc.), additional methods are available to find out the quantity and cost of the consumables required for that welding process. During the development of pricing module in each class functions and methods were developed to calculate the necessary costs, times by implementing the necessary mathematical formulae. (For example: Arc time, total cost, plant cost, etc.). The integration of the WELD-IT software with existing ERP systems was considered and discussed with the project partners. Due to the number of ERP systems used by potential customers and due to the cost and time constraints of the WELD-IT project, the consortium decided that such integration was not required. Next phase of system development was the design of Graphical User Interface (GUI). Designing of GUI is an important part of application programming. It is an interface between the user and system. Its goal is to ease of use of the system and enhance the efficiency. Previously developed modules such as ANFIS Decision Support System, CAD-, Price-calculator modules were integrated into the GUI. To have the final price quotation the WELD-IT system requires inputs.

Following principles were taken into consideration when designing the GUI:
1.The most common errors appear caused by not-well formatted user inputs and inappropriate task sequencing. Designing the interface as it helps the users to enter the appropriate data is required with the help of bounded input widgets that appropriately limit what the user types in as input. If a certain program step cannot be legitimately performed until the user completes other required steps, the dependent steps are disabled until all its dependencies are filled.
2. Widgets often provide visual feedback for the user. Clicking on a check box its new appearance alerts the user it has been selected or deselected. User feedback at the program level requires that users know whether a step is in progress or completed.
3. Keeping the fact in the mind during the design that humans are born explorers the development should give an interfaces as output that invites and rewards exploration. Some interfaces encourage the user to explore unfamiliar features, others do not. A good interface makes a user feel competent, while poor interfaces leaves the same user feeling incompetent.
4. Good applications have comprehensive manuals and online help materials explaining program features and how to use them to solve real world problems. The goal is to create an interface that needs no explanation.
5. Design an interface so that the user can accomplish their tasks while being minimally aware of the interface itself.

It can be known as the Principle of Transparency. Interface transparency occurs when the user's attention is drawn away from the interface and naturally directed at the task itself. Several factors come into picture, a screen layout that puts both tools and information where the user expected them to be; icons and labels that are meaningful to the user; and metaphors (including gestures) that are easy for users to recognize, learn, remember, and perform. After designing the GUI the next phase was the implementation of the GUI. The development followed iterative approach. By default the WELD-IT system forms have a resolution of 800x600pixels. It is the size of the windows, and these are the basic resolution values nowadays. Another possibility is to execute the software on full-screen mode. The navigation in the forms is eased with the help of scrollbars where the content of the windows requires it. Due to the fact that WELD-IT system is creating queries towards the WELD-IT database during the execution of the software the speed of the software greatly depends on the connection to the database. Three screenshot from the GUI can be seen in the attached files: weldit_welding_tasks.png weldit_screenshot_projectdetails.png weldit_screenshot_cadmodule2.png. Within the GUI user roles/permissions were introduced for the purpose of protection for the users and for data integrity.

One of the following two roles can have the user:
- Admin: (system administrator) special user account, which enables to reach additional functions that are not accessible to 'normal' users. The admin is responsible for configuration, upgrade, administration and maintenance of the system
- User: (normal user) operator of the system, no special responsibility. One of the GUI's one important parts is the main form where almost every function is accessible.

Testing
As the result of the last part of the system development a tested and validated WELD-IT application was implemented. This application calculates the costs of a welding project with the help of the decision supporting system. As a last step of development the aim was to demonstrate and validate WELD-IT technology with pre-defined template welding projects and in field test at the end-user small and medium-sized entreprises (SME)s. Testing is an important part of the software development as it is a method to verify the software functions according to the expectations defined by the specifications/requirements.

Different types of testing levels were carried out such as:
1. Unit tests on sub-modules: ANFIS DSS, CAD, Pricing module,
2. Integrity test during the integration of the sub-modules ,
3. System test,
4.Acceptance test.

Part of the testing phase was the design of the testing procedure, since series of decisions were created about what to test and how to test it. These decisions constitute test design that contains test plans and it is a separate task from test execution. The design can be stated as the process of validation and verifying that this application: works as expected; can be implemented with the same characteristics; meets the requirements that guided its design and development. The primary purpose of testing was to detect software failures so that defects may be discovered and corrected. The scope of testing includes examination of code as well as execution of that code in various environments and conditions as well as examining the aspects of code. In parallel to the software specification a preliminary test design, test plan was created and modified during the development of the software. Test execution's inputs were the system implementation and test design.

Potential Impact:
The project has significant impact on economy and wider society even throughout the duration of the project but also its beneficial effect is foreseen after the project end:

Economic Impact:
Metalworking sector (meaning companies related to NACE DJ, Manufacture of basic metals and fabricated metal products) is the second biggest manufacturing sector in the European Union behind food producing with more than 863 billion euro turnover (as per Eurostat database, 2009). The welding equipment and consumables market in the global power industry declined with 21.5% during the global financial crisis in 2009. However, the market has continued to grow since 2010. Regarding the outside Europe market, Asia is expected to have the largest growth. "The market has continued to improve in 2010, particularly from the growing economies, - said Ruth Shilpa Sudhakar, Research Analyst at Frost and Sullivan. - However, emerging economies like China and India witnessed the lowest adoption of advanced technologies such as SAW and GTAW. As the cost of SAW and GTAW is higher than the largely used SMAW in the region, this was a growth limiting factor and is expected to continue driving this trend over the forecast period." In addition, Government investments in the power industries and foreign direct investments (FDI) in the wind and thermal sectors – particularly in Africa, China and India - are expected to drive the welding equipment and consumables market by 2018. Limitations of the global welding equipment and consumables market in the power industry are the delay in nuclear power projects. These projects are expected to happen sooner in Asia than in Europe and North America.

In Europe, the euro crisis has caused closure of projects. Fear of an expected recession in 2012 has therefore made end users more cautious on their expenditures, which has led to budget cuts on welding. These factors are expected to limit the growth of the welding equipment and consumables market. "The slowdown of projects has invariably led to lower consumption of welding equipment and consumables market in 2009, - adds Sudhakar. - The same was witnessed in 2011 among the nuclear sector. End user industries are also becoming increasingly conservative on their expenditures due to the fear of a global down turn in 2012. This has caused budget cuts on welding and changing costs from high cost welding equipment such as SAW and GTAW to the low cost SMAW, GMAW, and flux cored wires to stick electrodes and solid wires."

Product quality, suitability and customer support will be key factors for the global welding equipment and consumables market with the latest technology at affordable prices. "Manufacturers are also expanding their distribution networks […]" -concludes Sudhakar. - This will help meet the large demand for welding equipment and consumables requirement for the power sectors in these regions." (as per Welding Equipment and Consumables for the Power Industry: Frost and Sullivan Predicts Global Market Growth, Frost and Sullivan – 14 August 2012) Furthermore, welding finds application in the automobile industry, and in the construction of buildings, bridges and ships, submarines, pressure vessels, offshore structures, storage tanks, oil, gas and water pipelines, girders, press frames, and water turbines.

Contribution in addressing Community societal objectives
The European Commission is well aware of the important economic, social and environmental role played by the EU manufacturing sector and the need to address its numerous challenges. WELD-IT will contribute to the continued and consistent expansion of the European welding industry by improving the quotation and planning processes. By providing an effective expert system as an alternative to manual calculations, WELD-IT will positively benefit primarily welding companies, indirectly suppliers and consumers of manufacturing sector as a whole. European manufacturing small and medium-sized entreprises (SME) face increased competition both within Europe, and internationally. Added competition comes from countries such as China, and India and from South-America, which have rapidly developing manufacturing industries and strong export capabilities. A more qualitative and optimized process planning, as a result of WELD-IT technology, will contribute to increased market share, as the demand for welded products increase. Although there is still a higher consumer confidence in products of European manufacturing industry, lower labour costs have increased the acceptance of welded products manufactured outside the EU. By optimizing and supporting processes, technology such as WELD-IT can help boost the industry to bounce back from the damage done to the sector by the lower quality lower price products.

Improved Standards
The European Union has in recent years introduced many new directives focussed on environmental impacts. These include directives aimed at products and associated manufacturing implications – from design through to end-of-life actions. EU standards and directives, such as BS EN 288 (Specification and approval of welding procedures for metallic materials) and Pressure Equipment Directive 97/23/EC (PED) among others, establishes procedures for manufacturing welded products and defines minimum requirements in terms of welding processes. The aim of EU legislation is to ensure a high level of product quality and safety. The WELD-IT project will help small and medium-sized entreprises (SME)s implement these requirements and will contribute to updating Best Available Techniques (BAT) for the sector, which is relevant not only in terms of existing legislation, but also further establishes the EU as a worldwide leader in the development and implementation of welding related practices. WELD-IT will help the welding sector to more easily comply with tightening EU regulations and it can also potentially be used as a platform for the development of new standards. As such, proposers will aim at achieving European approval for the WELD-IT system, facilitating the centralized control of standards. Centralization will help simplify issues that arise regarding the certification of welded products, and reduce industry's liability for products that fail.

List of Websites:
http://www.weldit.eu