Tool Selection: A Cloud-Based Approach

  • Chirpreet Singh
  • Qun Shao
  • Yuqian Lu
  • Xun Xu
  • Xinfeng Ye
Conference paper
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 301)


Cloud manufacturing is an emerging manufacturing model. It provides organizations with the ability to virtualize their manufacturing resources and offer them as scalable cloud-based services. Tool selection is a crucial function for machining operations. It determines whether a consumer’s manufacturing task can be realized in a machining system. This paper proposes a system for carrying out tool selection for a typical cloud manufacturing system. It uses an ontology to store information about manufacturing resources and automatically generates queries for searching suitable tools in the ontology according to a customer’s specification. The searching of the tools is carried out by a reasoner on the ontology. From the tools that match the user’s requirements, the system selects the most appropriate tool according to the user’s preferences.


Ontology Cloud manufacturing 

29.1 Introduction

Cloud manufacturing is an emerging manufacturing model. It gives organizations the ability to virtualize their manufacturing resources as cloud-based services for consumption over the Internet [19]. An integral part of the cloud manufacturing paradigm is resource virtualization. It is concerned with digitally representing the manufacturing resources and services, and making them available as cloud-based services.

Machining is one of the essential manufacturing processes and tool selection is an important stage of planning a machining operation. It is therefore imperative that a cloud manufacturing system have a robust tool selection mechanism. This paper presents a system developed to virtualize resources using an ontology that facilitates cutting tool selection for a machining task. The system allows users to input their manufacturing criteria as a standardized manufacturing operation file. It then analyses the inputs and automatically generates description logic queries for the purpose of selecting the most appropriate tool from the ontology.

This paper is organized as follows. Section 29.2 describes the related works. The proposed tool selection system is discussed in Sect. 29.3. Conclusions are given in Sect. 29.4.

29.2 Related Work

The right choice, rational use and effective management of cutting tools have a great impact on the efficiency and quality of a production process. To a large extent, cutting tools dictate the geometry and quality of the machined surface, the tolerance of product dimensions and the machining cost of a part. On selecting a cutting tool, several factors need to be taken into account, e.g. tool life, the hand of tools, the geometry of tools and number of edges of a tool. In a traditional process planning stage, the selection of a cutting tool is mainly based on the experience of a domain expert, which can be error-prone and time-consuming. The large number of tools in the cloud environment call for an intelligent cutting tool selection system.

As an important part of process planning, cutting tool selection issues have always been a topic of research. Zhang and Alting [20] proposed a list of more than 100 Computer-Aided Process Planning (CAPP) systems. Integrating with Standard for Exchange of Product data (STEP) [10] feature recognition and approaches of artificial intelligence, Amaitik and Kilic [1] designed a CAPP system named ST-FeatCAPP, which is capable of generating a process plan and the corresponding STEP-NC [11] file in XML format. Similar works can also be found in [7, 8, 16]. On the other hand, a number of companies have also designed various commercial software tools. Coroguide1 developed by Sandvick Coromant helps clients to retrieve cutting tool information rapidly.

However, there are some problems with the existing systems. Current CAPP systems usually do not handle semantic data. For example, STEP AP224 XML documents are used to describe feature information. The cause of the problem is that an XML Schema mainly describes the syntax, instead of the semantics, of a data structure and the relationships between data. Furthermore, the proprietary software tools developed by companies often have a limited scope of operational use.

In order to address the aforementioned limitations, the use of ontologies in the manufacturing industry has been studied by numerous researchers. Kim et al. [12] presented an ontology-based framework for assembly information sharing. Lee et al. [15] developed an ontology-based architecture to facilitate collaboration between the different stakeholders in a manufacturing value chain. Their aim was to share concepts and design information between heterogeneous systems. Kumara [9] used an ontology-based methodology to support product family design. It stated that, when design and manufacturing information is required to be shared and reused, ontologies provide a particularly advantageous platform to do so. Pandit and Zhu [17] used an ontology-based decision framework to support product design and manufacturing. The works reported in [2, 4, 21] map EXPRESS-based data models to (Web Ontology Language) ontologies. Distinct to these existing works, the system in this paper automatically generates description logic queries for searching the ontology according to users’ requirements. Thus, users of a typical cloud manufacturing platform can easily use the system even if they do not know the description logic, and be guaranteed that a logically correct set of matching tools will be provided.

29.3 A Tool Matching Scheme

The system consists of three components: (a) a user interface, (b) a tool selection module, and (c) a manufacturing resource information module. The manufacturing resource information module is implemented as an OWL-DL ontology. It stores the definitions of the concepts used in the cloud manufacturing system and the information about each individual cutting tool available in a specific cloud manufacturing system. Additionally, it is responsible for executing the queries that retrieve the tools that meet the users’ requirements. The user interface is a browser-accessible Web application. Users search for available cutting tools by submitting a production specification through the interface. The tool selection module analyses the user’s specification of a production task to retrieve, from the ontology, the appropriate tools that are needed for carrying out the task. Then, the system generates queries for retrieving the suitable cutting tools from the resource information module. If there are multiple tools available for carrying out an operation, the tool selection module evaluates the available tools to decide the one that best suits the user’s specific production needs.

29.3.1 Resource Virtualization

Resource virtualization is about representing the information of a physical resource. For example, the representation of a drilling tool might include its dimensions, the type of coolant to be used, the cost of the tool, etc. A manufacturing cloud often consists of numerous partners, each of which might have their own methods of describing their virtualized resources. For this reason, interoperability is a key issue that must be addressed in cloud manufacturing.

The EXPRESS data modelling language [9] is a part of the STEP standard that is widely used by engineering industries to digitally describe products. However, the EXPRESS standard has two major shortcomings [4].
  • It lacks formal rigorousness. That is, EXPRESS is not based on a mathematical theory. Thus, it is impossible to infer implicit information from the information that is explicitly specified.

  • It has limited reusability and interoperability. Applications from the engineering domains are almost exclusively the only types that are able to understand and manipulate EXPRESS-based data models. As cloud manufacturing spans over various domains, e.g. design, machining, assembly, logistic, etc., EXPRESS has inherent interoperability problems, in particular over the Internet.

Due to these limitations, EXPRESS-based data models are not suitable for representing virtualized resources in cloud manufacturing. It has been argued that data can become smarter through the use of higher semantics from technologies such as ontologies [12]. Ontologies allow for concepts of a particular domain, and the relationships between those concepts, to be formally described. A key benefit of using ontology is that it allows for a common understanding of terms to occur between different entities. That is, ontologies facilitate interoperability. Thus, ontology of manufacturing resources has been used in this paper for resource virtualisation.

The ontology language used in this paper is OWL-DL which is a W3C standard [3]. OWL-DL is based on description logic [5]. This means that mathematical inference can be carried out on the ontology to discover implicit information.

An OWL ontology is a collection of axioms, each of which can provide an explicit assertion on three main ontological constructs: individuals, properties, and classes. OWL individuals represent the objects of a particular type of things. For example, an individual could be a specific instance of a twist drill. OWL properties are relationships between two things, namely individuals (e.g. tool name) or data values (e.g. diametre). OWL classes are sets of individuals and are described using logical descriptions and restrictions. Classes are typically organized into hierarchies using taxonomical operators such as super-classes and sub-classes.

Accurately modeling a hierarchy of tools and their relationships with other tools is a complex task due to the level of interconnections required. Thus, creation of a manufacturing resource ontology is often tedious and error-prone. As a large number of manufacturing resources have already been described in various STEP-based standards, instead of creating the ontology manually from scratch, the ontology is instead procured by converting these existing STEP-based resources to an ontology. The set of specifications chosen for this paper is the ISO 14649 (STEP-NC) set of standards [13]. The main advantages of using the models defined within ISO 14649 are: (a) it is an established, continually developed, worldwide effort to standardize machining operations, (b) it contains specifications of all the appropriate tools, and the tool hierarchy, and (c) it contains an exhaustive set of machining features for computer numerical control (CNC) machine tools. Thus, the models in ISO 14649 will ensure that the resource virtualization will be generic enough to account for all standardized CNC tool operations.

29.3.2 Automatic Query Generation

To ensure that an object is manufactured to the specifications set out by the designer, it has become a common industry practice to computerize manufacturing tasks. In the STEP-NC standard, a manufacturing task is defined as a set of computerized working steps. Each working step is a digitized machining operation that can be performed autonomously by a CNC machine. To operate a CNC machine, a valid STEP-NC instance file that contains the set of working steps is required. A STEP-NC instance file specifies the machining operation of each working step, the tool required for carrying out the operations, and parameter values for the specific machining operations. Our system requires the user to input a STEP-NC instance file that describes the manufacturing operations required to realize the user’s product. To execute the operations, the cutting tools that are capable of carrying out the operations need to be found in the manufacturing resource ontology.

In order to retrieve the set of tools that match the tools specified in the user’s STEP-NC instance file, the system needs to (a) parse the STEP-NC instance file to retrieve the information about each of the tools for carrying out the machine operations, and (b) construct description logic (DL) queries according to the retrieved information. The DL queries are used to search for suitable tools in the ontology. A DL query is effectively a set of OWL class expressions. An OWL class expression is used to represent sets of instances (OWL individuals) by explicitly specifying the conditions on those instances’ properties [3]. That is, if an instance of a particular class satisfies a set of property conditions, it is considered to be an instance of the respective class expressions that match it. For each machining operation described within the user’s input file, our system automatically constructs a DL query for finding the tool that is capable of carrying out the machining operation.

For different tools, the parameters might need to be matched in different ways. Some parameters, e.g., number_of_teeth of a tapered end mill, require precise matching. That is, the number of teeth must be exactly the same as the value specified in the user’s input. Some parameters, e.g., the diameter of a tapered end mill, may only require a range-matching. For instance, if the user’s request specifies that a flat bottom hole of diameter 20 mm be machined, any end mill whose diameter is less than 20 mm would be able to carry out the operation. These matching features are stored in the ontology for various tool types. They are retrieved from the ontology to help construction of the queries for tool selection. The procedure used to generate the tool matching DL queries is as follows:

  • For each working step, determine which type of tool is required to complete the machining operation, and append its tool class to the tool selection DL query. For example, append tapered_endmill for a tapered end mill.

  • For each tool type, retrieve the matching property of the parameters of the tool from the ontology, e.g. exact or greater than.

  • For each parameter of the tool, retrieve the value of the parameter from the STEP-NC file, and append the class expression to the DL query according to the value and the matching property of the parameter. For example, append number_of_teeth value “4.0”^^decimal for the parameter number_of_teeth according to the extracted value 4.0 of the type decimal and matching feature of exact.

An example of a constructed query in Manchester OWL syntax is shown below. The query is used to find all tapered end mills that have (a) a diameter no greater than 20 mm, and (b) four teeth.
  • (tapered_endmill) and (diametersomedecimal[<= “20.0”^^decimal])
    • and (number_of_teethvalue4.0”^^decimal)

29.3.3 Selecting the Most Suitable Tool

The result of a query might return multiple tools that satisfy the need of a machining job. Our system evaluates the tools to find out the one that best meets the requirements. The Multiple Criteria Decision Making and Simple Additive Weighting techniques [6] are commonly used in comparing different entities. In these techniques, a user assigns a weight to each of the factors being considered when ranking the entities. The factors are normally the properties of a tool, e.g. cost of the tool, the precision, etc. For example, if a user regards the precision is twice as important as the cost of the tool, the user can assign 2 as the weight for the precision and 1 as the weight for the cost. For each attribute, the similarity between a user’s expected value and the value offered by the tool is calculated using the formulas below. Vmax and Vmin are the maximum and the minimum value of the property that the user is willing to accept. V is the value of the property offered by the tool. If the maximum and the minimum value are equal, the similarity value SV is set to 1.
$$ SV = \frac{{V^\text{{max}} - V}}{{V^\text{{max}} - V^\text{{min}} }}\quad {\text{and}}\quad SV = \frac{{V - V^\text{{min}} }}{{V^\text{{max}} - V^\text{{min}} }}$$

The left formula is used for negative property, i.e. the higher the value, the lower the quality, e.g. the price of the tool. The right formula is used for positive attribute, i.e. the higher the value, the higher the quality, e.g. precision, etc.

The ranking score assigned to a tool is calculated according to the formula below. In the formula, P denotes the set of properties being considered when ranking a tool, Wi is the weight assigned to property i, and, SVi is the similarity value of property i. The tool with the highest score will be given to the user, i.e.
$$ Score = \mathop \sum \limits_{i \in P} (SV_{i} \times W_{i} ) $$

29.3.4 Implementation

The system was implemented using Java, specifically JavaFX. After converting the tools information stored in an ISO 14649 (STEP-NC) file to an OWL-DL ontology, the ontology is stored in a clear text ASCII file. New instances of the tools are inserted into the ontology directly through the user interface of the system. Our system uses the OWL-API to manipulate the resource ontology [18]. When the system initializes, the resource ontology is loaded into the system.

A software reasoner is an important component of an OWL-based ontology system. A reasoner can infer implicit knowledge in ontology. In order to obtain correct query results, queries on OWL ontologies are executed by a reasoner. This is because the query results often exist as the implicit knowledge in the ontology. For example, although instances of twist drill and tapered end mill classes are not directly specified as milling cutters, when querying for milling cutters, all instances of twist drill and tapered end mill should be shown. This is because twist drill and tapered end mill are subtypes of the milling cutter class. The reasoner used in the system is the Pellet reasoner [18].

29.4 Conclusions

The cutting tools ontology has been successfully constructed based on which tool-matching can be carried out using a reasoner. The system extracts the specifications of the required tools from the descriptions of the machining operations and automatically generates description logic queries for carrying out search on the ontology. The system shows that cloud manufacturing resources can be effectively modeled and searched using ontology.



  1. 1.
    Amaitik SM, Kiliç SE (2007) An intelligent process planning system for prismatic parts using STEP features. Int J Adv Manuf Technol 31(9–10):978–993CrossRefGoogle Scholar
  2. 2.
    Barbau R et al (2012) Ontostep: enriching product model data using ontologies. Comput Aided Des 44(6):575–590CrossRefGoogle Scholar
  3. 3.
    Bechhofer S, et al (2004) Owl web ontology language reference. W3C Recommend 10:2006-01Google Scholar
  4. 4.
    Beetz J et al (2009) Ifcowl: a case of transforming express schemas into ontologies. Artif Intell Eng Des Anal Manuf 23(01):89–101CrossRefGoogle Scholar
  5. 5.
    Horrocks I, Patel-Schneider PF (2003). Reducing owl entailment to description logic satisfiability. In: The semantic Web-ISWC 2003. Springer, Berlin, pp 17–29Google Scholar
  6. 6.
    Hwang C-L, Yoon K (1981) Multiple criteria decision making. Lecture notes in economics and mathematical systems. Springer, BerlinGoogle Scholar
  7. 7.
    Garrido Campos J, Marín Martín R (2010) Modelling and implementing circular sawblade stone cutting processes in STEP-NC. Robot Comput Integr Manuf 26(6):602–609CrossRefGoogle Scholar
  8. 8.
    Gizaw M, Abdul Rani AMB, Yusof Y (2013) Turn-mill process plan and intelligence machining operations selection on STEP. Asian J Sci Res 6(2):346–352CrossRefGoogle Scholar
  9. 9.
    ISO 10303-11 (1994) Industrial automation systems and integration-product data representation and exchange part 11Google Scholar
  10. 10.
    ISO 10303 AP203 (1994) Industrial automation systems and integration – product data representation and exchange—part 1: overview and fundamental principles, SwitzerlandGoogle Scholar
  11. 11.
    ISO 14649 (2003) Industrial automation systems and integration – physical device control—data model for computerized numerical controllers—part 1: overview and fundamental principles, Geneva, SwitzerlandGoogle Scholar
  12. 12.
    Kim K-Y, Manley DG, Yang H (2006) Ontology-based assembly design and information sharing for collaborative product development. Comput Aided Des 38(12):1233–1250CrossRefGoogle Scholar
  13. 13.
    Kramer T, Xu X (2009) Step in a nutshell. In: Xu X, Nee AYC (eds) Advanced design and manufacturing based on STEP. Springer, Berlin, pp 1–22Google Scholar
  14. 14.
    Kumara SR (2006) A methodology for product family ontology development using formal concept analysis and web ontology language. J Comp Inf Sci Eng 6:103CrossRefGoogle Scholar
  15. 15.
    Lee J, Chae H, Kim C-H, Kim K (2009) Design of product ontology architecture for collaborative enterprises. Expert Syst Appl 36(2):2300–2309CrossRefGoogle Scholar
  16. 16.
    Ouyang HB, Shen B (2012) STEP-NC oriented process planning optimization based on hybrid genetic algorithm. Comput Integr Manuf Syst CIMS 18(1):66–75CrossRefGoogle Scholar
  17. 17.
    Pandit A, Zhu Y (2007) An ontology-based approach to support decision-making for the design of ETO products. Autom Constr 16(6):759–770CrossRefGoogle Scholar
  18. 18.
    The OWL API,, accessed on 10/11/2013
  19. 19.
    Xu X (2012) From cloud computing to cloud manufacturing. Robot Comput Integr Manuf 28(1):75–86CrossRefGoogle Scholar
  20. 20.
    Zhang H, Alting L (1994) Computerized manufacturing process planning systems. Chapman & Hall, New York, LondonGoogle Scholar
  21. 21.
    Zhao W, Liu J (2008) OWL/SWRL representation methodology for express-driven product information model. Comput Ind 59(6):580–589CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2014

Authors and Affiliations

  • Chirpreet Singh
    • 1
  • Qun Shao
    • 2
  • Yuqian Lu
    • 2
  • Xun Xu
    • 2
  • Xinfeng Ye
    • 1
  1. 1.Department of Computer ScienceThe University of AucklandAucklandNew Zealand
  2. 2.Department of Mechanical EngineeringThe University of AucklandAucklandNew Zealand

Personalised recommendations