Keywords

1 Introduction

Nowadays, project companies generate an increasing number of products and services, as the response to market trends that impose to shorten product life cycle, increase variety of products, and fulfil customer requirements. Consequently, new product development (NPD) is one of the most important processes to maintain company’s competitive position and continue business success. Contribution of NPD to the growth of the companies, its influence on profit performance, and its role as a key factor in business planning has been widely considered [13]. Nevertheless, it is still reported that the success rate of product development projects is unsatisfactory, with more cost and time than expected to achieve the project goals.

The main reasons of NPD failures can consider in the context of extrinsic and intrinsic problems. Extrinsic problems include flops in the market, changes in regulations or simply competition develops product first [4]. Intrinsic problems concern the limited resources (e.g. funds, specialists) and result in the difficulties to meet the project goals, including time of product launch and product innovativeness. Although unsatisfactory success rate of NPD projects depends on the environmental uncertainties as market competition and product technology advancement are often intense [5], companies should try to improve the NPD process through taking into account both external and internal agents.

New product development requires numerous decisions by many individuals and groups, including customers, analysts, project managers, R&D employees, chief marketing and production officers, etc. These decisions can be supported through an integrated business information system that combines the different agents and enables their communication. An enterprise information system consists of enterprise resource planning (ERP) system, project management software, customer relationship management (CRM) system, computer aided design (CAD) system, and knowledge acquired from the experts and company’s databases. The advancement of information technology helps today’s organisations in business management processes and collecting data. As a result, enterprise systems generate and store a huge amount of data that is potential source of information [6, 7]. A key challenge faced by NPD projects is how to acquire knowledge, sustain success rate among the products, and manage the project in order to reduce the risk of failure of the product [4].

Knowledge creation and management through the new product development and management processes is of significant interest in the context of recent technology and infrastructure changes. Data mining applications have vastly increased the amount of information available and the ease of manipulating and using it [8]. However, the use of data mining techniques require expert knowledge, for example, to select a set of variables to an analysis among enormous number of possible variables in an enterprise system, or to choose a suitable data mining technique for the stated problem. The use of data mining techniques aims to discover patterns, improve expert knowledge, and finally, increase a chance to make a proper decision. As in the knowledge discovery process is not possible to eliminate a human dimension, a multi-agents approach seems to be suitable framework to model the problem of selecting new product portfolio on the basis of an enterprise system.

Multi-agent systems are intelligent distributed approach suited for applications that are modular, complex, and changeable, for example, for management of the NPD projects. These systems have capabilities such as autonomy, integration, reactivity and flexibility, and they are an emerging sub-field of artificial intelligence that is concerned with a society of agents interacting in order to solve a common problem [9]. Agent approach replaces the conventional centralized systems (for manufacturing, product design etc.) with a network of agents that are endowed with a local view of its environment and the ability to respond locally to that environment. The overall system performance is not globally planned, but emerges through the dynamic interactions between agents in real time [10].

Despite the popularity and applications of the agent technology in the business domain have grown over the recent years, there is a lack of unifying framework that would used the paradigm of multi-agent system for selecting new product portfolio. This study aims to develop an approach that bases on the multi-agent paradigm and uses an enterprise system (ERP, CRM, etc.) providing a foundation for conceptual analysis. The model of new product portfolio selection is specified in term of a constraint satisfaction problem as a set of variables, domains, and constraints. The constraint satisfaction problem can be considered as a knowledge base enabling the design of a knowledge-based system that includes the identified patterns, expert knowledge, and routine queries such as what is the most promising set of products for development? Knowledge base and inference engine of the proposed approach has been developed with the use of constraint programming environment.

Many attempts have been made in recent years to introduce data mining techniques for improvement of the NPD process. Agard and Kusiak [11] used a data mining based method to analyze the requirements for the design of product families. Jiao and Zhang [12] proposed product portfolio identification with the use of an association rule mining system. In turn, Yu and Wang [13] described product portfolio identification with data mining based on multi-objective genetic algorithm. Although many data mining based methods have been developed to support product portfolio identification, there is a scarcity in the context of using a multi-agent approach with data mining agent to new product portfolio selection.

This study is concerned with the use of a multi-agent system to identify the customers’ requirements and select a set of the best concepts of new products taking into account information of the previous projects that are retrieved from an enterprise system database. The relationships between net profit of past products and metrics of the NPD process are sought with the use of a fuzzy neural system that enables the description of the identified relationships in form of if-then rules. The rules acquired from an enterprise system and agents, as well as facts (e.g. company’s resources, performance metrics) are stored in knowledge base that is specified according to the framework of constraint satisfaction problem. The proposed approach uses the knowledge base to estimating net profit for new products, and proposing a set of the most promising products for further development. A portfolio of new product projects is sought with the use of constraint programming according to project manager’s preferences.

The remaining sections of this paper are organised as follows: Sect. 2 presents the use of multi-agent systems in project management. A model of selecting new product portfolio in terms of constraint satisfaction problem is presented in Sect. 3. The proposed multi-agent architecture to evaluating the product success and selecting new product portfolio is shown in Sect. 4. An example of the proposed approach is illustrated in Sect. 5. Finally, some concluding remarks are contained in Sect. 6.

2 Multi-agent Systems in Project Management

An agent is defined as a computer system that is situated in an environment, and that is capable of autonomous actions in order to meet its design objectives [14]. Agents are commonly modeled in terms of knowledge, belief, intention, obligation, while objects are modeled through their internal structure as methods and attributes. The degree to which agents and objects are autonomous is quite different. Objects do not have control over their behaviours, because they are invoked by others. On the contrary, agents are able to decide whether or not to execute an action after receiving request. Ontology is frequently used for internal knowledge representation in agents that furthermore enables knowledge sharing, inference etc. Multi-agent systems are systems with multiple agents and are suitable for complex problems that have alternative problem solving techniques, involve reasoning with multiple models at different levels of abstraction and representations, and usually involve distributed knowledge sources [15].

The paradigm of multi-agent systems (MAS) provides a very suitable architecture for a design and implementation of integrative business information systems. The complex information systems development can be supported with the use of agent-based technology in the context of natural decomposition, abstraction and flexibility of management for organisational structure changes [16]. MAS consists of a set of autonomous agents that can define their own goals and actions and can interact and collaborate each other through communication. As in a MAS environment agents work collectively to solve specific problems, the MAS paradigm provides an effective platform or coordination and cooperation among multiple functional units in a company [17]. The communication is an important part of any MAS to achieve its desired functionality [18].

The use of the MAS paradigm in the context of knowledge management includes such tasks as [19]: knowledge search, acquisition, analysis and classification from various data sources; information given to human and computing networks once usable knowledge is ready to be consulted; negotiation on knowledge integration or exclusion into the system; explanation of the quality and reliability which are related to the system integrated knowledge; learning progressively all along the knowledge management process. Such services are mostly implemented to create two MAS categories devoted to knowledge management. The first MAS type is based upon an agent cooperation to solve complicated problems related to the knowledge types. The second MAS category gathers management assistant agents depending on the actors’ needs.

Project team members and other actors incorporated in the NPD process are usually located at different places. In contrast, planning and control of projects is often centralized. All information relevant to the project should be passed to the project manager. Information of interest for other team members is often transferred through the project manager as well, even if it is not crucial from the project’s point of view. Centralized project management creates long communication paths and makes the exchange of information cumbersome, redundant and unreliable. Agent approach can replace the central database and the central control computer with a network of agents that are responsible for a local domain and have the ability and authority to respond locally to range of their domains. The overall system performance is not globally planned, but emerges through the dynamic interaction of agents. Knowledge is integrated into agent to deal with uncertainty and computational complexity [10].

A multi-agent system considered from the perspective of a tool can be used by project managers as an aid to decision making and problem solving. The NPD process includes tasks such as evaluating project parameters, selecting the most promising projects, scheduling and monitoring, which involve considerable skills and experience to plan the activities, time, people, equipment, material and the money required. A task-oriented decision support system may assist project managers in indicating what is likely to happen in future, presenting facts in a manner that makes judgment easier, and showing what has happened and why.

3 Reference Model of New Product Portfolio Selection

The product design process depends on many factors that derive from the external environment and the field of enterprise. The external environment includes customer’s demand, force of competition, sources of supply, changes in regulations, technology or financial limitations. In turn, the internal factors concern the resources and processes that appear in the different fields of an organization. Specifications of the previous products, design parameters, product portfolios, and customer requirements are registered and stored in an enterprise system that mainly includes ERP, CRM or CAD system and that is used nowadays by more and more enterprises. The selected attributes of an enterprise system, resources, and the identified relationships are stored in knowledge base that aims to facilitate the project manager to evaluate the success of a new product, and finally, select a set of the most promising products for further development. Figure 1 illustrates the reference model of new product selection in the context of the external and internal environment of an enterprise as well as an enterprise system.

Fig. 1.
figure 1

Reference model of new product portfolio selection

The presented model contains a set of decision variables, their domains, and the constraints that can be referred to the company’s resources and performance indicators. The decision problem concerning the selection of the most promising set of products for development has been described in terms of a constraint satisfaction problem (CSP). The model description encompasses the limitations of a company, parameters of new products that are considered for development, and a set of routine queries (the instances of decision problems) that are formulated in the framework of CSP. The structure of the constraint satisfaction problem may be described as follows [20]:

$$ {\text{CSP}}\,\,{ = }\,\,\left( {\left( {{\text{V}},\,{\text{D}}} \right)\!,\,{\text{C}}} \right) $$

where:

  • V = {v 1 , v 2 , …, v n } – a finite set of n variables,

  • D = {d 1 , d 2 , …, d n } – a finite set of n discrete domains of variables,

  • C = {c 1 , c 2 , …, c k } – a finite set of k constraints limiting and linking variables.

Consider a set of new products for development P = {P 1 ,…, P i , …, P I }, where P i consists of J activities. The input variables are as follows: duration of new product development (PDi) and its cost (PCi), production unit cost of the product (PUCi), duration of marketing campaign of the product (MCDi) and its cost (MCCi), percentage of customer requirements translated into technical specification (PTSi). The decision variable is net profit of the product (PNPi). The company’s resources include the total number of employees directly involved in the NPD projects C 1,t and financial means C 2,t in the t-th time unit (t = 0, 1,…, T). The decision criterion for product portfolio selection is maximization of the total net profit from product portfolio by the given constraints.

The constraint satisfaction problem can be considered in the context of a knowledge base. The knowledge base is a platform for query formulation as well as for obtaining answers, and it comprises of facts and rules that are relevant to the system’s properties and the relations between its different parts. As a knowledge base can be considered in terms of a system, at the input of the system are the variables concerning basic characteristics of an object that are known and given by user [21]. The model description in terms of constraint satisfaction problem enables the design of a decision support system taking into account the available specifications, routine queries, and expert knowledge. Consequently, the model integrates technical parameters, available resources, expert experience, identified relationships (rules) and user requirements in the form of knowledge base [22]. The problem solution is connected with seeking the answer to the following question: what products should be chosen to the product portfolio to obtain the maximal net profit from the products by a fixed amount of resources? The methodology of finding solutions for the above-described problem in the context of multi-agent architecture is presented in the next section.

4 The Proposed Multi-agent Architecture for Selecting Product Portfolio

The enterprise system generates routinely an enormous amount of data according to the business processes in a company. The amount of available data and easiness of data retrieval results in increasing awareness of an opportunity to derive valuable information from their databases, which can further be used to improve business processes in a company [23]. As analysis of huge amount of data and knowledge acquisition with the use of manual methods is slow, expensive, subjective, and prone to errors, there is a need to automate the process through using data mining techniques [24, 25]. Data mining is a stage of the knowledge discovery process and its aim is to identify nontrivial, novel, and potentially useful patterns in data. Data mining techniques can be considered as an extension of OLAP (OnLine Analytical Processing) tools that enable users to carry out multidimensional analysis interactively taking into account different perspectives.

The process of selecting product portfolio can be divided into a few sub-processes, for example, selection of key customers, identification of key customer requirements, estimation of the NPD parameters, and evaluation of the NPD projects. These sub-processes require cooperation and communication between the agents involved. Figure 2 illustrates the framework of a multi-agent approach for product portfolio selection.

Fig. 2.
figure 2

Framework of multi-agent system for product portfolio selection

The sub-process of selecting key customers is initiated by an OLAP agent on the bases of information from an enterprise system, e.g. sales analysis and sales forecast in the customer perspective. In the next sub-process, i.e. identification of key customer requirements, an OLAP agent communicates with a marketing agent that investigates the requirements of key customers in the context of new product demand. OLAP and data mining agent selects a set of variables from the enterprise databases, variables that are suspected of significant impact on the success of previous products. These variables are led to inputs and outputs of fuzzy neural system that estimates the NPD parameters such as duration and cost of the NPD projects, and net profit from a new product.

The fuzzy neural system has the advantages of both neural networks (e.g. learning abilities, optimization abilities and connectionist structures) and fuzzy systems (e.g. if-then reasoning, simplicity of incorporating expert knowledge). The outcome of a fuzzy neural system is a set of if-then rules that can be used to perform nonlinear predictive modelling, simulation, and forecasting. One well-known structure of fuzzy neural networks is the adaptive neuro-fuzzy inference system (ANFIS) that has been used in this study.

A data mining agent evaluates the importance of relationships identified by ANFIS, and makes decision to store a relationship in a knowledge base. The knowledge base stores the identified relationships as well as the resource constraints (financial, temporal, personal, etc.) that are used to estimate the success of a potential product and further used to select the most promising products for development. The output of the presented multi-agent system is the proposal of project portfolio for the project manager. Moreover, the decision-maker can carry out what-if analysis and check whether the product portfolio will be changed in the case of others values of the input variables.

The agents possess the different objectives and constraints, and they do not have a global view of the entire NPD process. As a result, there is needed cooperation to allow the agents to adjust their local tasks in order to achieve global objectives. The contract net protocol is a high level protocol for achieving efficient cooperation based on a market-like protocol [9]. The contract net protocol is proposed for inter-agent cooperation in the context of selecting new product portfolio. Table 1 presents an example of information that is specified in the messages between the agents.

Table 1. An example of message description

The negotiation algorithm between marketing agent and client agent is executed until the requirements of new product are sent. These requirements are sent to data mining agent that verifies them in the context of technology limitations and the potential success of new products on the basis of information acquired from an enterprise system. In the next step, data mining agent sends the message to marketing agent with description of the rejected requirements. The negotiation algorithm between marketing agent and client agent is repeated until the requirements are rejected. In the case of approving all requirements by data mining agent, information is stored in the knowledge base and used in selecting new product portfolio.

In this study, the knowledge base is specified in terms of constraint satisfaction problem that can be implemented effectively in a constraint programming environment. Constraint programming (CP) is an emergent software technology for a declarative constraints satisfaction problem description and can be considered as a pertinent framework for the development of decision support system software. Moreover, the impact of real-life constraints on decision-making is of great importance, especially for designing an interactive decision support system. In the case of extensive search space, the processing time of calculations can be significantly reduced with the use of constraints programming techniques [26]. CP is qualitatively different from the other programming paradigms, in terms of declarative, object-oriented and concurrent programming. Compared to these paradigms, constraint programming is much closer to the ideal of declarative programming: to state what we want without stating how to achieve it [27].

A constraints satisfaction problem can always be solved with exhaustive search, where all possible values of all variables are enumerated and each is checked to in the context of a solution. Except for trivial problems, the number of candidates is usually too large to enumerate them all. Constraint programming has embedded ways to solve constraints satisfaction problems with greatly reduction of the amount of search needed [27]. This is sufficient to solve many practical problems such as supply chain problem [2830] or scheduling problem [26, 31, 32].

A multi-agent approach can be successfully used to solving of constraint satisfaction problems, such as n-queen problems and coloring problems. In solving a CSP with this approach, each agent can represent a variable and its position corresponds to a value assignment for the variable. The environment for the whole multi-agent system contains all the possible domain values for the problem. The conducted research shows that the performance of a multi-agent approach in solving CSPs for approximate solution is time-efficient [33]. A multi-agent system can be implemented in the constraint programming environment, e.g. with the use of Oz programming language.

In the context of the presented approach, the domain of a CSP can be represented into a multi-agent environment. Thus, finding a solution of the CSP is reduced to local behaviour-governed moves within such an environment. There is a need to examine how exact solution of CSP can be self-organized by a multi-agent system that consists of environment, reactive rules, and agents. All agents inhabit in an environment, where there positions indicate values of certain variables [33]. The next section presents an illustrative example of the use of ANFIS to seeking relationships in order to develop knowledge base, and the use of CP techniques to selecting product portfolio.

5 Illustrative Example

An illustrative example consists of two parts: the use of ANFIS to seeking relationships that describe the success of a product and the use of CP to selecting the most promising set of new products for development. On the basis of information about the previous NPD projects, ANFIS seeks the relationships between variables selected by data mining agent and output variable, i.e. net profit from a product (PNP). These relationships are further used to estimate net profit from product concepts. In the example, the following input variables have been selected: NPD project duration (PD), NPD project cost (PC), production unit cost of the product (PUC), marketing campaign duration of the product (MCD), marketing campaign cost of the product (MCC), and percentage of customer requirements translated into technical specification (PTS).

In order to eliminate the overtraining of ANFIS and increase the estimation quality, the data set of the previous NPD projects has been divided into learning and testing sets. In studies, the ANFIS has been trained according to subtractive clustering method that was implemented in the Matlab® software. The identified relationships are specified in form of fuzzy if-then rules and used to estimating net profit from a new product. Figure 3 presents the membership functions for 7 rules that are used to estimating net profit from a product.

The estimated net profits are used further to seeking the NPD portfolios according to the available resources (the number of employees involved in the NPD projects and financial means) and selecting a NPD portfolio that ensures the maximal total net profit from all products. Let us assume that the R&D department generated 35 concepts for new products that are evaluated according to net profit per month. In the NDP projects can participate 14 employees (C 1 ), and the total budget for NDP projects (C 2 ), including the R&D and marketing campaign budget, equals 155,000 €. The number of possible solutions, i.e. combinations of new product portfolio, is very large. This imposes the use of techniques that enable the reduction of the amount of search needed, such as constraint programming. The considered problem has been implemented in the Oz Mozart programming environment that includes CP paradigms. The number of the admissible solutions equals 4,058 instances. The set of the NPD projects that ensures the maximal total net profit (64,000 € per month) consists of product P 8 , P 15 , and P 17 .

Fig. 3.
figure 3

The use of ANFIS to estimating net profit from a product

6 Concluding Remarks

The continuous development and launching of new products is an important determinant of sustained company performance. The development of new product projects involves many agents in the field of customers, marketing, production, research and development, etc. As in the NPD process is required knowledge acquisition from the different local areas and communication between these areas, the use of a multi-agent system seems to be a pertinent framework to select a portfolio of new product development projects. The proposed system takes a global perspective concerning the NPD process and presents a mechanism of interaction between agents. As an enterprise system stores the data connected with the various areas of business, including customers’ demand and specification of the past NPD projects, its database can be used to seeking the relationships between these areas and the success of a product. In this study, fuzzy neural system has been used to seek these relationships that can be used further to evaluating concepts for new products and selecting product portfolio for development.

The characteristics of the presented approach includes the use of expert domain knowledge to select variables used in the knowledge discovery process, fuzzy neural networks to seek the relationships and their description in the form of if-then rules, and framework of constraint satisfaction problem to specify a knowledge base. This knowledge base includes the rules identified by fuzzy neural network or/and an data mining and OLAP agent, facts (e.g. company’s resources), and it allows the project managers to obtain an answer to the routine questions such as what is the most promising set of products for development? The use of constraint programming solves constraint satisfaction problem in an effective way and enables designing an interactive task-oriented decision support tool.

The presented approach has several advantages such as the consideration of the NDP process in a global perspective that includes clients and employees of a company, the low effort of data retrieval to analysis (the data are accessible in an enterprise system), the possibility of sensitivity and what-if analysis, as well as the selection of the most promising product portfolio according to the project manager’s preferences. Drawbacks of using the proposed approach can be considered in the perspective of constructing the stop criterion in the negotiation algorithm between client and marketing agent, collecting enough amounts of data of the past similar NPD projects, and ambiguous principles to build structure of a fuzzy neural system. The subject of future research includes the extension of the assumptions presented in this study. For instance, the proposed approach assumes one agent for each process, but in real world more agents can work at a process. The improvement of the negotiation algorithm between client and marketing agent is also considered as further research.