Hybridization of Improved Binary Bat Algorithm for Optimizing Targeted Offers Problem in Direct Marketing Campaigns

A R T I C L E I N F O A B S T R A C T Article history: Received: 19 August, 2020 Accepted: 21 October, 2020 Online: 10 November, 2020 One of the biggest business problems of marketers, is to optimize the return on investments of direct Marketing campaign. This main purpose which can only be ensured by targeting the appropriate customer. The main challenge faced by companies when advertising, is to configure properly a campaign, by choosing the right target, so A high user acceptance rate is ensured to advertisements. However, when dealing with an important size of data, the important specification to consider is the combinatorial aspect of the problem and the limitation of the approach based on mathematical programming methods. In this work, and considering the optimization of targeting offers as an of NP-hard problems, we concluded that the use of a meta heuristic algorithm is more suitable to use a classical (exact) method. We choice to use an improved bat Algorithm hybridized with Genetic Algorithm. The results of computational experiments confirmed that the proposed algorithm gives competitive results.


Introduction
There are two axes which characterize research in metaheuristic: exploration and exploitation. Exploration guarantees a diversified search in the space regions; however, the exploitation seeks to ensure the intensification of the search to find a better solution. The goal is to have a balance between these two contradictory objectives [1]. In the literature, many works make a difference between local search methods, instead of single solution-based and population-based methods. In this work, and unlike previous works, we deal with the targeted offers problem in direct marketing campaigns using population-based methods, and we focus on two algorithms; the Genetic Algorithm which can easily escape from the local minimum, and the Bat Algorithm (BA) which has the characteristic to quickly converge towards a local solution. Based on the imitation the concept of natural choice and heredity, the Genetic Algorithm is considered one of the most famous evolutionary search techniques. It was effective in optimizing several types of problem where a deterministic polynomial solution is infeasible. The Bat Algorithm, inspired by the foraging behavior of micro-bats, has been developed by Yang in 2010 [2], and it can be considered as an effort to gather positive side of previous metaheuristic algorithms. Thanks to its simplicity, flexibility, and easy implementation, the Bat Algorithm works well with complicated problems. The main feature of this algorithm is the quick convergence at a very initial stage by keeping a balance when switching from exploration to exploitation. In order to maximize their benefits, firms use "marketing campaigns" as a fundamental tool, along two main axes; by attracting new customers, so-called acquisition or by prospecting additional revenues with their existing customers by proposing new products to them; and this is called retention. Our approach focuses on the second axis (retention). To maximize the marketing profit to determine the combination: which product to offer and for which customer, under a set of constraints by using a new improved Bat Algorithm hybridized with Genetic Algorithm. The final goal is to choose the right product, to offer to the right customer, at the right time to maximize the marketing Return on Investment (ROI). This goal is not easy to implement because of the fact that firms have multiple products to offer under a complex set of business constraints [3]. In this work, and due to the discrete aspect of this kind of problems, the use of a binary version of the Bat Algorithm is essential. The standard BA was originally designed for the optimization of non-discrete problems [4]. The objective is to find a solution with a discrete value. The sought solution is represented by a matrix which contains binary values; 1 if product j is offered to customer i, and 0 otherwise. This paper is organized as follows, section 2 describes some related works in the same area; works about the targeted marketing problem are mentioned first, followed by works which process the Bat Algorithm's binary aspect in a discrete search space. In section 3, we describe the problem of Market Targeting and the modeling adopted to search a solution for the problem. In section 4, we describe two metaheuristic algorithms; namely the Binary Bat Algorithm (BBA), and the Genetic Algorithm. In this section we present our proposed algorithm: Improved Genetic Binary Bat Algorithm (IGBBA) developed to encounter the shortcomings of the two first algorithms while searching for adapted solutions. Experimental results are presented in section 5 for the three algorithms with a comparison of their performance.
In [3], author presented an optimization problem and replaced the classic database Marketing problem intended to generate the optimal profit under a set of business constraints. Approximately 2.5 million customers, eleven unique offers, and five investments are considered. The solution provided an approximately optimal solution to the ideal capacity assignment problem. The result is a decision describing which customer to target and which product to offer to him. In [5], author presented eight algorithms to solve the problem of maximizing the Return on Investment of targeted marketing. Seven of these algorithms are considered as exact methods and the eighth one is a heuristic method: the Tabu Search (TS). In the results, the TS showed the best performances. In [6], author took up the problem as described by author in [5], focusing on solving the problem by developing an efficient technique. The approach followed by author in [6] consists of hybridizing two metaheuristics: Greedy Randomized Adaptive Search Procedure (GRASP), and General Variable Neighborhood Search (GVNS). Three steps characterize the method followed by in [6]; the first one verified the efficiency of the GRASP algorithm proposed to initialize a good solution. In the second step, author kept the same parameters, but this time, they called the VND procedure for a local search. In the third step the complete proposed algorithm GGVNS was tested and it provided better results. In [7], author proposed a multi-objective DMLS metaheuristic for searching for sets of non-dominated solutions, in order to maximize both the promotion campaign's total profit and the risk-adjusted return. In order to remedy to the concept of volatility, author, in [7] proposed a greedy randomized initial solution builder, able to perform local searches considering different neighborhood exploration techniques, and a genetic method is designed. All the works cited above used metaheuristic based on local search methods to ensure an optimization of the return on investment, while respecting the business constraints. On the other side, the use of a Binary Bat Algorithm will allow us to deal with the target marketing optimization problem by looking for solutions made up of discrete (binary) values instead of looking for continuous solutions. In designing the Bat Algorithm in its binary version, how to update velocity and position must be adapted in order to guarantee the binary aspect of the research. In [8], the goal is to use the concept of velocity and position of bats in real space to move each bat in a discrete space with 0 and 1 values only. The idea was to change the position of micro-bats with the probability of their velocity. To achieve this objective, the technique used is based on a transfer function which allows a transformation of the value of the velocity to a probability, to update the position. this amounts to saying that this transfer function calculates the probability of changing the position from 0 to 1 and vice versa.

Problem Description
Direct Marketing is a tool that allows firms to promote their products directly to customers, and measure results quickly. One of the most important benefits of Direct Marketing is "Upgrading firm's loyalty strategies" in order to maximize the companies' Return on Investment. In [5], and In [3] before, authors presented the formulation of the product targeting problem as a mixedinteger programming (MIP) problem including more business constraints, and it can be rewritten as follows: Given a set of m customers C = [c1, c2... cm], and a set of n products' offers P = [p1, p2 …pn], the objective is to maximize the Return on Investment under these business constraints: • The corporate hurdle rate: each company defines its hurdle rate (HR) to make sure that the Return on Investment is equal, at least, to a value of HR. • During the campaign, the budget of each product is limited.
• A limitation is imposed on the total number of products offered to each customer. • And there is also a Minimum Quantity Commitment (MQC), which is the number of units of a product to be offered in order for that product to be part of the campaign. It means that no customer will receive an offer of a product which is not part of the campaign. If the product belongs to the proposed ones then at least Pj > 0 customer will receive an offer.
A solution is represented by a binary array R|C|×|P|, where C indicates the set of available costumers, and P represents the possible products to be used in the campaign. If a given cell si,j |i C, j P is equal to "1" (true), the product j will be offered to the customer i; otherwise, the value would be "0" (false). There are two basic parameters of the customer lifetime value's computation; pij is the probability that customer i responds positively to an offer of product j, and DFVij is the return to the firm when customer i responds positively to the offer of product j [11,12]. the problem can be modeled as follows: where: • rij is the expected revenue of the company from the offer of product "j" to customer "i", and rij = pij DFVij • cij is the cost generated while offering product "j" to customer "i" • Mi is the upper limit value of number of different products to offer to a customer "i" • Pj is the MQC limit associated with product "j" • Bj is the budget, associated to the product "j" during campaign. • fcj is the cost of using product j in the campaign • Oj is the MQC bound of the product j, • HR is the hurdle rate specific to each company The goal is to maximize the fitness function (1), by finding the optimal combination of the two matrices X and Y: If product j is used in the campaign  =   The constraints, to which the problem is subject to, can be modeled as follows: for each i =1…m and j=1 …, n () Figure 1 below, illustrates an example of a problem with an advertising campaign optimization. The matrix represents a solution S|C|x|P| concerning 5 products to offer to 10 customers, so as to optimize the Return on Investment by taking into account business constraints (maximum products to offer for each customer, fixed cost and budget for each product). In summary, this figure represents the offers to be adopted by each customer. The first column on the left, represents the 10 customers who are the subject of the campaign with the maximum product values to offer to each Customer. The first line at the top represents the different product offers with the fixed cost of each product and the budget allocated during the campaign. the values 1 means that product j is offered to customer i during the campaign and 0 if not.

Methodology
There are several types of algorithm hybridization; The hybridization used in this paper contains both sequential and parallel hybridization. The sequential one concern using GA in the initialization of a feasible solution. The parallel hybridization is used for perfecting the solution found in each BA iteration by an application of the GA limited in terms of number of iterations.

Building initial solution using Genetic Algorithm (GA):
One of the very important phases when dealing with the customer targeting problem, is the creation of an initial good quality solution which must be feasible by respecting the business constraints.
( )  10011  00100  11001  10101  01000  10010  01101  10111 10001 10101 The classical initialization of the Bat Algorithm, and which is based on randomization, creates a non-feasible or poor-quality initial solution. To solve this problem, we opted to build the initial solution using GA with a reduced population, and a number of reduced chromosomes. Genetic Algorithms are considered as the most known heuristic technique of search and optimization, and are inspired by natural evolution. They have proven to be effective in several complex problems [3]. GA modeled the decision variable of a search problem by a string composed of alphabets with a certain cardinality. Each chain is considered a candidate solution, and it is called a chromosome, while the alphabets that make up the chromosomes represent the genes. In the problem of marketing campaigns' optimization, a chromosome is considered as a string representation of solutions to the problem. In this kind of problems, the classical GA is imposed and represents the solutions by a bit string. Chromosomes composed of bit strings is a representation formed of genes with binary values allele. These values take 1 if a product is offered to the customer and 0 otherwise. The gene may represent a decision to offer a product j to a specific customer i. The final goal is to optimize the fitness function. It is a calculation which determines to what extent the chromosome can represent a solution to a given problem. GA is also characterized by the notion of population; It treats an artificial population; these are strings in a binary alphabet usually [9]. GA is composed of 6 steps to find an optimal solution for the problem; the objective in targeted offers problem is to maximize the return on investment by finding an optimal solution of equation (1):

Initialization
A randomized procedure is usually used when generating the initial population of the candidate solution. However, if we randomly choose the composition of the chromosomes with a weighting of 50% for each value 0 and 1, we will obtain a non-feasible solution which do not respect the business constraints. For this, we have opted in this paper for a weighting distribution of 80% when a product j is offered to customer i, and 20% when it is not. With this method we have the certainty that our initial solution respects the business constraints but it will not necessarily represent an initial good quality solution.

Evaluation
When the population is initialized first time (population initialized), the fitness values of each candidate solutions are evaluated to determine how fit an individual is.

Selection
The selection is a step that keeps the best solutions by memorizing copies of those solutions with the highest fitness values. This concept imposes the mechanism of maintaining the most suitable among the candidate solutions

Crossover
Crossover is the most impactful phase in GA. It is a phase which consists in combining two or more parent solutions in order to generate a better solution.

Mutation
The GA ensures via this stage a diversity of the population in order to escape a local convergence, by modifying the solution in an arbitrary way while acting locally.

Termination
The algorithm terminates if there is no improvement in the solution quality, when time is reached, or when an acceptable solution is obtained. The following is a pseudo code of Genetic Algorithm (GA):

Algorithm 1: Genetic Algorithm
Randomly create initial population Calculate the fitness function for all individuals. while Iteration < MaxGeneration do Select the best-fit individuals for reproductions; Proceeding to offspring by execution crossover and mutation phases; Evaluating the fitness function of new chromosomes; end while Return the best solution in the population

Binary version of Bat Algorithm
The Bat Algorithm (BA) is one of the most recent metaheuristic algorithms which uses a technique of imitation of micro-bats behavior to find an optimal solution. Previous work has proven the effectiveness of this algorithm compared to old metaheuristics like Genetic Algorithm (GA) or the Particle Swarm Optimization [8,10]. However, the continuous solutions generated by the BA are not valid for certain types of problem. The objective of our paper is to find a discrete solution (1 when the product "j" is offered to the customer "i" and 0 otherwise). For that reason, in this paper, the use of a binary version of Bat Algorithm is imposed [4]. In order to adapt this algorithm to the context of the Targeted Offers problem in Direct Marketing Campaigns, a binary version of Bat Algorithm will be used and which is proposed by authors [8,10]. This version is called Binary Bat Algorithm (BBA). By modifying the micro-bats positions values from 0 to 1 and vice versa, the BBA moves micro-bats in a binary search space [8,10]. In [11,2], When designing the BA, author respected the two main techniques used by microbats to find their prey. Micro bats decrease loudness and increase the pulse rate of sound emitted during chase. These characteristics have been modeled as follows [11,2]: Each micro-bat i is characterized by its position posi t , and its velocity veli t at a specific iteration (time). Exploring new solutions is performed by updating positions of micro-bats as following: Glob bes represents the best solution achieved until this iteration, and Freqi, which represents the frequency of the i-th microbat, is obtained following this equation: where β is randomly generated from a uniform distribution in [0,1]. Thanks to these equations the exploitability aspect is ensured in the Bat Algorithm. However, the exploitation side is guaranteed by a random walk procedure as follows: L t is the loudness of the bats' emitted sound, in order to perform an exploration instead of exploitation. L t is the average loudness of all the micro-bats at this iteration step: L t = <Li t >, and ɛ is a random number in [-1,1] [2,8,9]. To keep balance between exploration aspect and exploitation aspect during the search process, loudness L t , and pulse emission rate ri should be updated only if the candidate solution is improved as the iterations proceed. They are updated as following [2,10]: where α and γ are predefined constants. The search principal in BA, is once a micro-bat has found the prey's location, the loudness will be decreased while the pulse rate will be increased. However, The Bat Algorithm is designed, at the origin, to search in a continuous space of solutions. The algorithm, in its original version is not applicable when the set of solutions is discrete, because during an optimization in a binary search space, by treating only values 0 and 1, the Eq. (9) is no longer valid to update the position of the microbats. To encounter this obstacle, authors in [8,14] proposed a new solution: the idea is to use a transfer function with the aim of updating the position of microbats with the probability of their velocities. In practice the transfer function has the role of mapping velocity values to probability values. In other words, the transfer functions are used to move the microbats in a binary space instead of a discrete space. The most important factor for designing this function is to force micro-bats with high velocities to switch their positions. To do this, a transfer function, called v-shaped function, and position updating rule are proposed in [8,10], and described in Equations (14) and (15) as follows: posi k (t) and veli k (t) are the position and velocity of microbat "i" at the iteration "t", where k is the problem dimension. (posi k (t)) -1 is the complement of posi k (t). Figure 3 presents the general steps of the Bat Algorithm in its binary version.

Proposed Hybridized Bat Algorithm
While dealing with the problem of targeted marketing maximization, we note that the Genetic Algorithm takes a considerable time to find a solution but with a minimum chance of blocking in a local minimum, while the Bat Algorithm has the advantage of quickly converging on a solution to the problem. However, BA may easily be trapped in a local minimum. Taking into account the random aspect of the initialization procedures, the two algorithms suffer from the poor quality of the initial solution.
To overcome these obstacles, we propose to hybridize the Binary Bat Algorithm, to benefit from convergence in advanced iterations, with the Genetic Algorithm that generates better population from good parents. These results are close to a global optimum.  The initial solution in the proposed algorithm is generated by performing the Genetic Algorithm for the first time, with a reduced number of chromosomal parents; this will quickly generate an initial solution of better quality than standard algorithms. The exploration and exploitation are controlled by pulse emission rate, in the case of standard Binary Bat Algorithm [12,13]. By proceeding iterations, this factor takes on larger values, which causes a progressive loss of the exploitation capacity of the algorithm. by introducing linear decreasing inertia weight factor, the exploitation capability of the algorithm is improved while the exploration capability will be improved by the hybridization of both algorithms. Figure 4 presents the steps of the proposed algorithm:

Computational Experiments and Discussion
The proposed algorithm was developed in Matlab 2015on a Lenovo T470s computer Core i7, with 2.6 GHz clock speed and 20 GB RAM. The linear solution was obtained using CPLEX (IBM solution), and the dataset, proposed and generated by author in [5], is used for comparing the three algorithms: • The cost value cij may take 1,2 or 3 (Randomly) • The return of the firm rij is an integer generated between 0 and 16 randomly.   .
• The upper bound Mi is selected between 1 and n/5.
To test the performance of the proposed algorithm, we report the same dataset and conditions from computational experiments in [5] and [6]. The GAP is calculated when a feasible solution is found by the adopted algorithm. By analyzing Table 1, we clearly deduce that the proposed IGBBA algorithm gave better solutions compared to GA and BBA.
The GAPs of IGBBA are significantly lower, and the BBA appears as the second-best algorithm by comparing the GAPs. Figure 5, which is a graphic representation of the fitness function using the three discussed algorithms, shows the fast convergence of the BBA and the IGBBA compared to the Genetic Algorithm. As reported in Table 1, and for the three categories of the S3 format, IGBBA is clearly better than the methods used in the previous works, with a clear difference in performance based on the GAP calculation. However, for the medium and large categories, the IGBBA is considered very competitive and sometimes better than the other algorithms.

Conclusion
The BA which is one of the most efficient algorithms was appointed to deal with that type of problem; it was used in binary version given the discrete nature of the solution space. In order to be able to search in a discrete space, a transformation of the positions of the micro-bats, to discrete values, is essential. The hybridization can provide a more efficient behavior and a higher performance when dealing with large-scale problems. This combination carried out in this paper has shown its effectiveness by remedying the disadvantage of the risk of jamming in a minimum local. As extension of our work, new constraints can be proposed, like reducing products costs where customer respond positively to a big number of products or where the number of customers respond positively to a specific product j. On the other hand, an optimization of IGBBA algorithm can be proposed to reduce the execution time. We addressed a very important issue in the marketing strategy of companies in order to optimize their return on investment during advertising campaigns. We have taken up the modeling done by author in [5] with the business constraints that must be respected to maximize the profit of the company. To test its proposal, author, in [5], created a dataset randomly, respecting a certain logic of the upper and lower limits of each parameter; a job that will produce several dataset categories according to different sizes depending on the number of customers, number of products and the value of Hurdle rate. A dataset on which this paper was based to test our proposal and compare it with the results of [5] and the result of other works. Since the problem is considered an NP-hard one, the use of metaheuristics is required; we have treated the problem based on methods based-population differently to the works cited above and which are all based on neighborhood methods.