N Merlo

T Boushaki

C Chauveau

S De Persis

I Gökalp

Characteristics of non-premixed oxygen enriched flames from a swirl burner with a radial fuel injection

niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Experimental setup

Lift-off heights

 Flame stability is enhanced with oxygen addition even for low oxygen enrichment rates.

 Lift-off heights  with O 2 addition.  Fluctuations of lift-off heights  with O 2 addition.  Lift-off heights  with swirl number (S n ).  Lift-off heights  when equivalence ratio () .

Instantaneous OH* images

 CO 2 concentrations increase with O 2 addition and global equivalence ratio (a).

 CO emissions largely decrease with O 2 addition and global equivalence ratio (b).

 NO x emissions increase with oxygen addition, and decrease with equivalence ratio (c).

Stereo-PIV results of non reacting and reacting flow

U

  , Institut de Combustion, Aérothermique, Réactivité et Environnement, 1C, avenue de la Recherche Scientifique, 45071 Orléans Cedex 2, France * toufik.boushaki@cnrs-orleans.fr  The study is motivated by CO 2 capture applications further to the increase of CO 2 concentration by the O 2 enrichement.  Support : French National Research Agency (ANR), The presence of flame increases the central recirculation zone (CRZ) (c, d) compared to non reactive cases  Strong axial expansion is induced by combustion (c, d)  In the reacting the azimuthal velocity field tends to show that the intensity of the swirling motion is lower than the motion originally imposed to the flow (e, f)  Increasing S n Increasing reverse flow velocities *Volumetric 3-Component Velocimetry System Case : Swirl number S n =0.8, equivalence ration Ф=0.8 Optimization of industrial boilers by the combination of combustion air enriched with oxygen and reducing CO 2 by a membrane capture.  Study the characteristics of turbulent CH 4 -air flames with O 2 enrichment : Flame stability, Pollutant emissions (CO, NOx, CO 2 ), Velocity fields.

Flow

  V3V system of TSI: V3V-9000-TS probe, 3 cameras 4MP-HS, 2 Evergreen 200 mJ PIV lasers.Schematic view of the combustion chamber with the OH Chemiluminescence system and the gas analyzer

  First results of V3V measurements _ Collaboration with TSI ® on 2014Swirling flow demonstrated by the streamlinesNon reacting flowPlot of Q-criteria showing counter-rotating vortices extending from the center of the burner


Safae Laqrichi

Francois Marmier

Didier Gourc

Jean Nevoux
email: jean.nevoux@acapi.fr

Integrating uncertainty in software effort estimation using Bootstrap based Neural Networks

Keywords: Uncertainty, Bootstrap, Prediction Interval, Neural network Uncertainty, Bootstrap, Prediction Interval, Neural network Uncertainty, Bootstrap, Prediction Interval, Neural network Uncertainty, Bootstrap, Prediction Interval, Neural network

Software effort estimation is a crucial task in the software project management. It is the basis for subsequent planning, control, and decision-making. Reliable effort estimation is difficult to achieve, especially because of the inherent uncertainty arising from the noise in the dataset used for model elaboration and from the model limitations. This research paper proposes a software effort estimation method that provides realistic effort estimates by taking into account uncertainty in the effort estimation process. To this end, an approach to introducing uncertainty in Neural Network based effort estimation model is presented. For this purpose, bootstrap resampling technique is deployed. The proposed method generates a probability distribution of effort estimates from which the Prediction Interval associated to a confidence level can be computed. This is considered to be a reasonable representation of reality, thus helping project managers to make well-founded decisions. The proposed method has been applied on a dataset from International Software Benchmarking Standards Group and has shown better results compared to traditional effort estimation based on linear regression.

INTRODUCTION

Software effort estimation is the process of predicting the amount of effort required to develop the software project. It is an important activity in software project management as it provides the basis for subsequent planning, control, and decision making [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Accurate effort estimation is important because a low cost estimate may result in financial loss or compromise the quality of the software developed, while a high cost can lead to misallocation of resources and a backlog of required software [START_REF] Lee | Software development cost estimation: Integrating neural network with cluster analysis[END_REF]. Several surveys have reported that 60-80% of all software projects expend on average 30-40% more effort than originally estimated [START_REF] Molokken | A review of software surveys on software effort estimation[END_REF]. This means that the average estimation error is high and that the estimates are unrealistic.

In recent decades, various effort estimation methods have been developed in order to improve the estimates accuracy of the effort estimates. However, there is no single model that completely satisfies the need for objective and realistic estimates in all circumstances [START_REF] Basha | Analysis of Empirical Software Effort Estimation Models[END_REF]. The majority of existing methods are elaborated from old historical data and for specific organizations, thus it is difficult to adapt them to new project contexts and environments. Therefore, in order to accurately estimate the effort, an organization requires estimation methods that are based on its own performance, working practices and software experience [START_REF] Kitchenham | Estimates, uncertainty, and risk[END_REF].

Estimates are guesses regarding future performance, based on available knowledge and estimation methods [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Obviously, these guesses do not exactly mirror the actual outcome, due to the uncertainty present in the effort estimation process, especially in the early stages of software development. Uncertainty is inherently present in (1) the dataset, used in the elaboration of the estimation model, that can contain noisy and imprecise information, (2) the model that can not present the exact relationship between the effort and the influent variables. It is important to take account of uncertainty in the estimation process. Associating an uncertainty to effort estimates may provide the user with a sense of how accurate the estimates are likely to be and thus help him in making the right decisions [START_REF] Jorgensen | An effort prediction interval approach based on the empirical distribution of previous estimation accuracy[END_REF]. Taking account of these observations, our study aims to elaborate an effort estimation method based on NN that can take into account the inherent uncertainty present in the effort estimation process. The provided effort estimates should be realistic and reflect the reality.

The remainder of this paper is structured as follows: Section 2 provides an insight into software effort estimation and uncertainty. Section 3 proposes an effort estimation method that takes account of uncertainty. Section 4 evaluates the proposed method on a dataset and discusses the results. The final section draws a conclusion summarizing the present study and outlining perspectives and future works.

INTRODUCTION

Software effort estimation is the process of predicting the amount of effort required to develop the software project. It is an important activity in software project management as it provides the basis for subsequent planning, control, and decision making [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Accurate effort estimation is important because a low cost estimate may result in financial loss or compromise the quality of the software developed, while a high cost can lead to misallocation of resources and a backlog of required software [START_REF] Lee | Software development cost estimation: Integrating neural network with cluster analysis[END_REF]. Several surveys have reported that 60-80% of all software projects expend on average 30-40% more effort than originally estimated [START_REF] Molokken | A review of software surveys on software effort estimation[END_REF]. This means that the average estimation error is high and that the estimates are unrealistic.

In recent decades, various effort estimation methods have been developed in order to improve the estimates accuracy of the effort estimates. However, there is no single model that completely satisfies the need for objective and realistic estimates in all circumstances [START_REF] Basha | Analysis of Empirical Software Effort Estimation Models[END_REF]. The majority of existing methods are elaborated from old historical data and for specific organizations, thus it is difficult to adapt them to new project contexts and environments. Therefore, in order to accurately estimate the effort, an organization requires estimation methods that are based on its own performance, working practices and software experience [START_REF] Kitchenham | Estimates, uncertainty, and risk[END_REF].

Estimates are guesses regarding future performance, based on available knowledge and estimation methods [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Obviously, these guesses do not exactly mirror the actual outcome, due to the uncertainty present in the effort estimation process, especially in the early stages of software development. Uncertainty is inherently present in (1) the dataset, used in the elaboration of the estimation model, that can contain noisy and imprecise information, (2) the model that can not present the exact relationship between the effort and the influent variables. It is important to take account of uncertainty in the estimation process. Associating an uncertainty to effort estimates may provide the user with a sense of how accurate the estimates are likely to be and thus help him in making the right decisions [START_REF] Jorgensen | An effort prediction interval approach based on the empirical distribution of previous estimation accuracy[END_REF]. Taking account of these observations, our study aims to elaborate an effort estimation method based on NN that can take into account the inherent uncertainty present in the effort estimation process. The provided effort estimates should be realistic and reflect the reality.

The remainder of this paper is structured as follows: Section 2 provides an insight into software effort estimation and uncertainty. Section 3 proposes an effort estimation method that takes account of uncertainty. Section 4 evaluates the proposed method on a dataset and discusses the results. The final section draws a conclusion summarizing the present study and outlining perspectives and future works.

INTRODUCTION

Software effort estimation is the process of predicting the amount of effort required to develop the software project. It is an important activity in software project management as it provides the basis for subsequent planning, control, and decision making [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Accurate effort estimation is important because a low cost estimate may result in financial loss or compromise the quality of the software developed, while a high cost can lead to misallocation of resources and a backlog of required software [START_REF] Lee | Software development cost estimation: Integrating neural network with cluster analysis[END_REF]. Several surveys have reported that 60-80% of all software projects expend on average 30-40% more effort than originally estimated [START_REF] Molokken | A review of software surveys on software effort estimation[END_REF]. This means that the average estimation error is high and that the estimates are unrealistic.

In recent decades, various effort estimation methods have been developed in order to improve the estimates accuracy of the effort estimates. However, there is no single model that completely satisfies the need for objective and realistic estimates in all circumstances [START_REF] Basha | Analysis of Empirical Software Effort Estimation Models[END_REF]. The majority of existing methods are elaborated from old historical data and for specific organizations, thus it is difficult to adapt them to new project contexts and environments. Therefore, in order to accurately estimate the effort, an organization requires estimation methods that are based on its own performance, working practices and software experience [START_REF] Kitchenham | Estimates, uncertainty, and risk[END_REF].

Estimates are guesses regarding future performance, based on available knowledge and estimation methods [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Obviously, these guesses do not exactly mirror the actual outcome, due to the uncertainty present in the effort estimation process, especially in the early stages of software development. Uncertainty is inherently present in (1) the dataset, used in the elaboration of the estimation model, that can contain noisy and imprecise information, (2) the model that can not present the exact relationship between the effort and the influent variables. It is important to take account of uncertainty in the estimation process. Associating an uncertainty to effort estimates may provide the user with a sense of how accurate the estimates are likely to be and thus help him in making the right decisions [START_REF] Jorgensen | An effort prediction interval approach based on the empirical distribution of previous estimation accuracy[END_REF]. Taking account of these observations, our study aims to elaborate an effort estimation method based on NN that can take into account the inherent uncertainty present in the effort estimation process. The provided effort estimates should be realistic and reflect the reality.

The remainder of this paper is structured as follows: Section 2 provides an insight into software effort estimation and uncertainty. Section 3 proposes an effort estimation method that takes account of uncertainty. Section 4 evaluates the proposed method on a dataset and discusses the results. The final section draws a conclusion summarizing the present study and outlining perspectives and future works.

INTRODUCTION

Software effort estimation is the process of predicting the amount of effort required to develop the software project. It is an important activity in software project management as it provides the basis for subsequent planning, control, and decision making [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Accurate effort estimation is important because a low cost estimate may result in financial loss or compromise the quality of the software developed, while a high cost can lead to misallocation of resources and a backlog of required software [START_REF] Lee | Software development cost estimation: Integrating neural network with cluster analysis[END_REF]. Several surveys have reported that 60-80% of all software projects expend on average 30-40% more effort than originally estimated [START_REF] Molokken | A review of software surveys on software effort estimation[END_REF]. This means that the average estimation error is high and that the estimates are unrealistic.

In recent decades, various effort estimation methods have been developed in order to improve the estimates accuracy of the effort estimates. However, there is no single model that completely satisfies the need for objective and realistic estimates in all circumstances [START_REF] Basha | Analysis of Empirical Software Effort Estimation Models[END_REF]. The majority of existing methods are elaborated from old historical data and for specific organizations, thus it is difficult to adapt them to new project contexts and environments. Therefore, in order to accurately estimate the effort, an organization requires estimation methods that are based on its own performance, working practices and software experience [START_REF] Kitchenham | Estimates, uncertainty, and risk[END_REF].

Estimates are guesses regarding future performance, based on available knowledge and estimation methods [START_REF] Morgenshtern | Factors affecting duration and effort estimation errors in software development projects[END_REF]. Obviously, these guesses do not exactly mirror the actual outcome, due to the uncertainty present in the effort estimation process, especially in the early stages of software development. Uncertainty is inherently present in (1) the dataset, used in the elaboration of the estimation model, that can contain noisy and imprecise information, (2) the model that can not present the exact relationship between the effort and the influent variables. It is important to take account of uncertainty in the estimation process. Associating an uncertainty to effort estimates may provide the user with a sense of how accurate the estimates are likely to be and thus help him in making the right decisions [START_REF] Jorgensen | An effort prediction interval approach based on the empirical distribution of previous estimation accuracy[END_REF]. Taking account of these observations, our study aims to elaborate an effort estimation method based on NN that can take into account the inherent uncertainty present in the effort estimation process. The provided effort estimates should be realistic and reflect the reality.

The remainder of this paper is structured as follows: Section 2 provides an insight into software effort estimation and uncertainty. Section 3 proposes an effort estimation method that takes account of uncertainty. Section 4 evaluates the proposed method on a dataset and discusses the results. The final section draws a conclusion summarizing the present study and outlining perspectives and future works.

LITERATURE REVIEW

Effort estimation methods

In the last decades, various effort estimation approaches have been developed. They can be classified in four main categories. (1) Expert judgment-based methods that draw upon the expert intuition and experience gained from previously executed projects, such as Delphi [START_REF] Jorgensen | A review of studies on expert estimation of software development effort[END_REF]. ( 2) Analogy based-methods that consist in identifying one or more historical projects that are similar to the project being developed and in using their known effort values to generate the estimated effort [START_REF] Shepperd | Effort estimation using analogy[END_REF]. (3) Parametric model-based methods, which rely mainly on equations elaborated using historical data and expressing the effort as a function of discriminant parameters influencing that effort, called effort drivers. Examples include COCOMO [START_REF] Boehm | Software Cost Estimation with Cocomo II[END_REF]. ( 4) Machine learning-based methods, which model the complex relationship between the effort and the effort drivers using artificial intelligence techniques like Neural Networks (NN) and fuzzy logic [START_REF] Srinivasan | Machine learning approaches to estimating software development effort[END_REF].

Most parametric effort estimation methods, such as CO-COMO, have their difficulties and limitations. First, as they are elaborated from old historical data and for specific organizations, it is difficult to adapt them to new project contexts and environments. Moreover, they are not able to provide an effective model for the complex relationships between effort and effort drivers [START_REF] Ahmed | Handling imprecision and uncertainty in software development effort prediction: A type-2 fuzzy logic based framework[END_REF]. Effort estimation methods based on artificial intelligence techniques, especially NN, overcome most of these problems. NN effort estimation models are able to learn from previous data, to be adapted for any organization and project context, to be updated over time and to model complex relationships [START_REF] Park | An empirical validation of a neural network model for software effort estimation[END_REF][START_REF] Idri | Design of radial basis function neural networks for software effort estimation[END_REF][START_REF] Setiono | Software Effort Prediction Using Regression Rule Extraction from Neural Networks[END_REF].

Neural Networks (NN)

NN is a massively-parallel adaptive network of simple nonlinear computing elements called neurons, which are intended to abstract and model some of the functionality of the human nervous system in an attempt to partially capture some of its computational strengths [START_REF] Haykin | Neural Networks: A Comprehensive Foundation[END_REF].

There are a multitude of NN architecture and structure; the most used one is called Multilayer Perceptron (MLP) (see figure 1). It consists of different layers where the information ows only from one layer to the next layer. It has three layers: Input layer, Hidden Layer and Output Layer. Input layer has as much number of neurons as number of input parameters to the NN model, e.g. for the effort estimation task, inputs are size of the software. Hidden Layer, which gets inputs from input layer neurons, it is fully or partially connected to the input layer and fully connected with the Output Layer. Output Layer has one or more output neurons depending on the output of the model. For the effort estimation, output layer contains only single neuron which gives the result of the model in terms of effort (man months or man-hours) [START_REF] Dave | Neural network based models for software effort estimation: a review[END_REF]. Each node in one layer is connected with a certain weight wij to every node in the following layer. Input nodes distribute the signals to the nodes of the first hidden layer without processing it while nodes of hidden layers are neurons (or processing elements) with a nonlinear activation function [START_REF] Trenn | Multilayer perceptrons: approximation order and necessary number of hidden units[END_REF][START_REF] Rosenblatt | Principles of neurodynamics: perceptrons and the theory of brain mechanisms[END_REF]. Activation function is used to transform and squash the amplitude of the output signal of a neuron to some finite value. Some of the most commonly used activation functions are sigmoid, Tanh, and Gaussian [START_REF] Karlik | Performance analysis of various activation functions in generalized MLP architectures of neural networks[END_REF]. Weights are determined in the NN training process. This consists on initializing NN with random weights and gradually training the NN to capture the relationship between inputs and outputs by adjusting the weights based on the training dataset. Several training algorithms can be used namely the Resilient Back Propagation algorithm (RPROP).

Uncertainty in effort estimates

NN based effort estimation model suffers uncertainty from two sources: (1) The training data used in the elaboration of the NN that is typically noisy and incomplete. Project information collected by the companies can be evaluated subjectively and thus can be imprecise and noisy. Also, the dataset can not cover all possible software project input-output examples as it is just a sample from a large population of software projects. (2) The limitation of the model arising from the structure of the neural network that can be inappropriate, the training algorithm that may get stuck in a local rather than a global minimum of the error function, and that find solution that is valid only for regions sufficiently represented by the training data [START_REF] Tiwari | Uncertainty assessment and ensemble flood forecasting using bootstrap based artificial neural networks (BANNs)[END_REF][START_REF] Papadopoulos | Confidence estimation methods for neural networks: a practical comparison[END_REF].

To introduce uncertainty in NN based effort estimation, bootstrap procedure is employed which is based on resampling technique. The bootstrap is a computational procedure that uses intensive resampling with replacement, in order to reduce uncertainty [START_REF] Efron | An Introduction to the Bootstrap[END_REF]. Bootstrap technique has been used successfully with analogy based cost estimation [START_REF] Angelis | A simulation tool for efficient analogy based cost estimation[END_REF] and with semi-parametric software cost estimation model (LSEbA) [START_REF] Mittas | Bootstrap Confidence Intervals for Regression Error Characteristic Curves Evaluating the Prediction Error of Software Cost Estimation Models[END_REF]. These works present methods of constructing Prediction Intervals (PIs) in order to describe the inherent uncertainty. PI consists of an upper and a lower effort value between which the future effort is expected to lie with a prescribed probability. Bootstrap technique has also been used in artificial neural network model development in many fields namely rainfall runoff modeling and hydrological modeling [START_REF] Tiwari | Uncertainty assessment and ensemble flood forecasting using bootstrap based artificial neural networks (BANNs)[END_REF].

To the best of our knowledge no studies have been reported in the software effort estimation literature that have used bootstrap based NN to take account of uncertainty and to make probabilistic estimates with PI.

Dataset preparation

The quality of a model depends on the quality of the dataset used in its elaboration. Thus, the processing of the dataset is an important task. This includes three steps: cleaning and features selection, transformation and division.

Dataset cleaning consists on discarding dataset related project attributes that are irrelevant for estimation, such as the project manager's name. Features or effort drivers are selected and determined using statistical tests such as Pearson correlation and one-way ANOVA [START_REF] Laqrichi | Toward an effort estimation model for information system project integrating risk[END_REF]. Attributes that are rarely provided (for just 40% of projects) and projects with missing values in effort driver fields are discarded.

As NNs accept only numerical values (typically between 0 and 1), dataset transformation is required. Nominal values must be transformed into ordinal variables called dummies. Dummies are numeric variables that take the value of either 0 or 1. They represent the categories of an attribute [START_REF] Garavaglia | A smart guide to dummy variables: four applications and a macro[END_REF]. Moreover, numerical values must be transformed into values in the range of 0 to 1 to adapt them to the activation functions. For this purpose, normalization is used, as defined in (1), where a is one attribute value for a project, m and M are respectively the min and the max of this attribute values over the dataset projects.

a ij ← a -m M -m (1)
Division consists in splitting randomly the dataset into two datasets one for training the NN and the others for testing it. The purpose is to test the performance of model on new data unused in the training stage. Generally, 80% of the dataset is allocated for model elaboration and 20% for model testing.

Neural Network model structure determination

This consists in designing the structure of the NN. It is one of the major task in elaborating a NN model. In this study, different design factors were considered in order to determine the appropriate NN structure. The defined NN structure parameters are:

• The number of inputs is the number of effort drivers.

• The number of outputs is the number of variables to estimate. • The number of hidden layers is set to 1.

• The number of hidden nodes in each layer is generally between 1 and twice the number of inputs [START_REF] Boetticher | An assessment of metric contribution in the construction of a neural network-based effort estimator[END_REF] which leads to a variety of NN structures. • The activation functions considered are Identity in input and output layers and Sigmoid in hidden layer. As there is no optimal and precise method to determine the most appropriate NN structure prior to training, the NN model structure is generally selected through a trialand-error procedure [START_REF] Tiwari | Uncertainty assessment and ensemble flood forecasting using bootstrap based artificial neural networks (BANNs)[END_REF]. That means each possible NN model structure is trained on the training dataset, tested on test dataset and finally the NN model structure giving the smallest error is selected. For this purpose, the K-fold cross validation technique can be used.

K-fold cross-Validation is a statistical method that can be used in evaluating and comparing different NN structures.

The method of k-fold cross validation partitions the training set into k equally (or nearly equally) sized segments or folds. For each structure, subsequently k iterations of training and validation are performed, each time using one of the folds as the validation set and the remaining folds as the training set. The best NN model structure is then the one that has the smallest average error on the validation set (averaging over the k runs) [START_REF] Refaeilzadeh | Cross-Validation[END_REF].

Bootstrapping Neural Networks

In the case of regression problems, it is obvious to associate measures of confidence to the estimates. PIs are used for this purpose and can easily by evaluated using some defined formulas. However, for the NN estimation, there is no defined and precise manner to compute PIs [START_REF] Mittas | Bootstrap Confidence Intervals for Regression Error Characteristic Curves Evaluating the Prediction Error of Software Cost Estimation Models[END_REF]. In this respect, we investigate the use of a simulation technique called bootstrap. This techniques is based on resampling with replacement of the available dataset. That's mean a project in the original dataset may be repeated many times in a generated sample. The purpose is to generate a large number of independent samples [START_REF] Tiwari | Uncertainty assessment and ensemble flood forecasting using bootstrap based artificial neural networks (BANNs)[END_REF].

The procedure to apply bootstrap in the context of NN effort estimation is shown in the figure 3 and the steps are given in the algorithm below.

(1) Generate a number B of "samples" from the original training dataset using resampling and replacement. B depends on the size of training dataset and ranges usually from 20 to 200 [START_REF] Efron | An Introduction to the Bootstrap[END_REF]. ( 2 The estimates produced by bootstrapped NN compose a distribution that can be used to compute the PI corresponding to a confidence level a. The PI is given by [e a/2 , e 1-a/2 ], with e a/2 and e 1-a/2 are efforts corresponding respectively to the 100(a/2) -th and the 100(1-a/2)-th percentiles of the distribution. The most commonly used PI confidence levels in software estimation studies are 0.90 and 0.95 [START_REF] Klas | Canada strapping: Empirical evaluation in the context of hybrid prediction methods[END_REF].

APPLICATION

The dataset used in our experimentation is from the International Software Benchmarking Standards Group (ISBSG R2011) considered as one of the largest and the more recent dataset for software effort estimation. It contains 5052 projects collected from companies worldwide from 1992 until 2009.

The analysis performed by [START_REF] Huang | Exploring the relationship between software project duration and risk exposure: A cluster analysis[END_REF] on the ISBSG repository containing 1238 projects defines eight effort drivers that are: Adjusted Function Point (AFP), Max Team Size (MTS), Development Type (DT), Development Platform (DP), Language Type (LT), Used Methodology (UM), Methodology Acquired (MA), and Application Type (AT). The Person correlation test and the one-way ANOVA were adopted to test the relevance of these effort drivers based on the database of this study. As shown in table 1, two of effort drivers display important influence: AFP and MTS. For this experimentation, 252 projects were selected after discarding projects with information quality B and C, projects with missing values in effort drivers and atypical projects or outliers. Training and test dataset consist of respectively 202 and 50 projects. Statistical analysis like testing the normality of AFP, MTS and Effort showed that they are not normally distributed. These variables are transformed to logarithmic scale in order to respect some assumptions that are important in the elaboration of the model.

NN model structures can be denoted by (i:j:k), where i is the number of neurons in the input layer, j the number of neurons in the hidden layer, and k the number of neurons in the output layer. In this study, i and k are equal to 2 and 1 respectively and j ranges between 1 and 5. Each structure is trained on the training dataset, then it is tested on the test set and its Mean Magnitude of Relative Error (MMRE) is computed (see table 2). MMRE is the mean of estimation errors of projects of the test dataset. The structure with 4 nodes in hidden layer is found to be the best structure. The selected NN model structure is then bootstrapped using 100 samples generated from the training dataset.

PIs corresponding to confidence level of 95% are then computed.

To evaluate the uncertainty estimates provided by PIs, some measures can be used namely the hit rate (HitR), the Relative PI width (rWidth) and the Actual effort Relative to PI (ARPI). The HitR provides the percentage proportion of estimates that fall within the PI, The rWidth expresses the precision of the PI and The ARPI inspects how the actual effort values are distributed relative to the PIs [START_REF] Jorgensen | Better sure than safe? Over-confidence in judgement based software development effort prediction intervals[END_REF].

The PIs provided by our method are compared with classical PIs based on linear regression effort estimation model (LR). From the measures presented in table 3, we observe that the LR gives slightly higher value of Hit rate than bootstrapped NN. Based only on this measure, it may be deduced that PIs estimates using LR is better than bootstrapped NN based PIs. However, the other measures should be examined as well before concluding on the performance of the two methods. In fact, the median rWidth of the LR is nearly two times larger than the bootstrapped NN. This mean that the LR provides very wider PIs which is difficult to use and interpret to make decision. Our proposed method achieves to provide narrowest PIs. In addition, the median ARPI measures show that the actual efforts is more close to the PIs midpoints in the our proposed method than in the LR

INCOM 2015

May 11-13, 2015. Ottawa, Canada based method. This makes the bootstrap NN based PIs more reliable as the practitioners, in decision making, do not solely consider PIs but also PIs midpoints in a systematical and implicit way.

Taking account of these observations, our proposed method provides better results than the classical method based on LR. The bootstraped NN based PIs present well the uncertainty present in the effort estimation process and are realistic and reliable.

CONCLUSION

Realistic effort estimation is an ongoing challenge for project managers, especially in an uncertain environment. This paper presents a method for a software effort estimation based on NN techniques. It allows uncertainty to be taken into account in effort estimates. NN based effort estimation model is used for its ability to model complex relationships, to be adapted to any project context and environment, and to be updated over time. Bootstrap simulation is used to generate independent samples in order to introduce uncertainty in NN based effort estimation. This method is probabilistic as it provides an effort estimation probability distribution from which a PI can be computed. Thus, it provides a better representation of reality, presents the uncertainty present in effort estimation process and offers a decision support tool for realistic effort estimation. The proposed method is applied on ISBSG R2011 dataset. The results show that the PIs provided by our method are realistic and reliable compared to LR based PIs. However, our method has some shortcoming as it uses the NN technique. First, NN model elaboration requires a good background in the subject. Furthermore, NN is a time consuming technique. Besides, it is considered as a black box which makes the justification and interpretation of estimates extremely difficult.

It is worth noting that there is another source of uncertainty that should be taken into account in the stage of utilization of the proposed bootstrapped NNs. It is related to the lack and imprecision of the available knowledge about the new software project being estimated. Monte Carlo simulation can be used to handle this uncertainty in future work [START_REF] Mooney | Monte Carlo Simulation[END_REF]. For this purpose, the expert should assess the uncertainty of effort drivers through statistical distributions.

Another future step will be to evaluate and integrate software project risk in the proposed method in order to maximize its robustness. In fact, during the project development, risk events can occur, which may impact the progress of the project and lead to overruns. Hence, effort estimation PI should also consider the risk inherent in a software project, as well as uncertainty [START_REF] Marmier | A risk oriented model to assess strategic decisions in new product development projects[END_REF]. Future works also include the use of diverse large datasets to ensure the validity of the proposed method.

Fig. 1 .

 1 Fig. 1. Architecture of a Multilayer Perceptron (MLP)

  in our proposed method to take into account uncertainty present in dataset and NN effort estimation model, is shown in figure 2. This includes three processes: (1) Dataset preparation, (2) NN model structure determination and (3) NN bootstrapping.

Fig. 3 .

 3 Fig. 3. Procedure to bootstrap NN

Fig. 2 .

 2 Fig. 2. Proposed method for integrating uncertainty in Neural Network effort estimation

Table 1 .

 1 Results of Pearson correlation and one-way ANOVA on ISBSG

	Feature	Correlation
	AFP	0.287
	MTS	0.264
	DT	0.002
	DP	0.002
	LT	0.03
	MA	0.01
	AT	0.001

Table 2 .

 2 MMRE for different NN model structures

	NN structure	MMRE
	2:1:1	0.46
	2:2:1	0.39
	2:3:1	0.36
	2:4:1	0.35
	2:5:1	0.37

Table 3 .

 3 Evaluating measures of effort PIs

		LR	Boostrapped NN
	Hit rate (%)	72	68
	Median rWidth	0.41	0.24
	Median ARPI	0.13	0.09

Proceedigs of the 15th IFAC Symposium on Information Control Problems in Manufacturing May 11-13, 2015. Ottawa, Canada Copyright © 2015 IFAC

ACKNOWLEDGEMENTS

This work was funded by the Fonds Unique Interministriel (FUI) through the ProjEstimate project. We wish to acknowledge our gratitude and appreciation to all project partners for their contributions.


G Duclos

M Deforet

H G Yevick

O Cochet-Escartin

F Ascione

S Moitrier

T Sarkar

V Yashunsky

I Bonnet

A Buguin

P Silberzan
email: pascal.silberzan@curie.fr

Controlling confinement and topology to study collective cell behaviors

Keywords: Collective cell migration, Microfabrication, Surface patterning, Out-of-plane curvature, Positive curvature, Negative curvature

Confinement and substrate topology strongly affect the behavior of cell populations and, in particular, their collective migration. In vitro experiments dealing with these aspects require strategies of surface patterning that remain effective over long times (typically several days) and ways to control the surface topology in 3 dimensions. Here we describe protocols addressing these two aspects. High-resolution patterning of a robust cell-repellent coating is achieved by etching the coating through a photoresist mask patterned directly on the coated surface. Out-of-plane curvature can be controlled using glass wires or corrugated 'wavy' surfaces.

Introduction

Collective cell migration has been identified as a major mode of cell migration in vivo and can be recapitulated in vitro using for instance wound healing experiments [1-5]. In vivo, collective migrations are often accompanied by physical confinement (cells migrating between vessels or capillaries or onto such structures [5]). Therefore, in vitro experiments aimed at mimicking these biologically relevant situations often include such a confinement, usually by constraining the cells within chemically-defined patterns such as stripes in a planar geometry [6] or in other topologies including the third dimension [7][8][9]. Two-dimensional tracks, onto which cells adhere, are defined within an anti-adhesive substrate.

Practically, requirements for the robustness of the anti-adhesive coating are particularly stringent as the experiments can last days or even weeks, whereas most of the classical cell-repellent coatings are based on physisorbed PolyEthyleneGlycol (PEG)-based copolymers and are only stable for a couple of days at best.

Here, we present two technologies that combine the coating of the substrate using a robust anti-adhesive polymer layer with high-resolution photolithography. The Aam-PEG anti-adhesive coating is adapted from Reference [START_REF] Tourovskaia | Micropatterns of Chemisorbed Cell Adhesion-Repellent Films Using Oxygen Plasma Etching and Elastomeric Masks[END_REF]. It consists in successive grafts on a glass coverslip: Silane molecules covalently bind to clean glass and form a reactive layer to which a thin layer of polyacrylamide gel can be anchored; finally, PEG-acrylamide molecules interpenetrate the gel and crosslink it to form a dense hydrophilic brush that prevents cell adhesion. The resulting coating is strongly repellent to the cells and extremely robust (up to a couple of months) [START_REF] Tourovskaia | Long-term microfluidic cultures of myotube microarrays for high-throughput focal stimulation[END_REF][START_REF] Deforet | Emergence of collective modes and tridimensional structures from epithelial confinement[END_REF]. The Aam-PEG coating is compatible with photolithography, it can be patterned at the µm-scale resolution by plasma etching though a photoresist mask patterned directly onto the PEG coating using standard photolithography techniques [START_REF] Deforet | Emergence of collective modes and tridimensional structures from epithelial confinement[END_REF][START_REF] Nier | Tissue fusion over nonadhering surfaces[END_REF][14]. It can also be patterned using the deep-UV etching technique where the substrate is exposed to deep UV radiation through a mask [START_REF] Azioune | Protein Micropatterns. A Direct Printing Protocol Using Deep UVs[END_REF][16][17]. This second method is faster than the previous one and avoids photolithography steps. Both methods allow for a strong confinement of cell populations for weeks, after the cells have reached confluence on the pattern.

In vivo, cells are, of course, not constrained to 2D space. Tissues routinely form complex 3D structures, many of which being highly curved. For example, cells that migrate out of tumors often wrap around vessels or extracellular matrix fibers and migrate effectively on a curved cylindrical substrate [5]. We describe a method to make model glass fibers that can be used as substrates to study collective cell migration. Their radius can be varied from ~100 μm down to submicron values [7]. Corrugated 'wavy' surfaces represent an excellent assay for probing how cells migrate, orient and respond to positive and negative out-of-plane curvatures. This method requires a castellated PolyDiMethylSiloxane (PDMS) substrate produced by thick resist photolithography that is embossed into molten polystyrene (PS). The resultant PS castellated structure is then reflowed to achieve a well-controlled curved wavy substrate that can be replicated at will by molding PDMS for cell culture.

We often use glass as our final substrate for cell culture. We find that this is an adequate substrate for most purposes. Cells adhere on untreated glass probably via the adsorption of proteins present in the culture medium. However, we also provide protocols for fibronectin coating of the patterned substrates.

When coated with fibronectin, cell dynamics is usually faster compared to bare glass.

After preparation, cells of interest are seeded on these various substrates and observed by optical microscopy at all relevant scales, using the most adequate modes (live imaging coupled to time-lapse or confocal imaging on fixed cells in particular when dealing with out-of-plane curvature). The role of collective migration is not only crucial for cells bearing stable cell-cell adhesions such as epithelial cells [3], but also for other types of cells such as elongated fibroblasts [14, 18].

Material

Prepare all aqueous solution with deionized (DI) water. Use analytical grade reactants and solvents.

Dispose chemical waste appropriately.

Aam-PEG Coating

1. Glass coverslips (typical diameter 30mm). Return the coverslip on to the fibronectin drop so the patterned side is in direct contact with the fibronectin. Incubate for 1 hour. Rinse the coverslip with PBS, DI water and dry under a jet of air. The coverslips are now patterned.

8. If needed, attach the coverslip to the bottom of a 6-well plate whose bottom has been previously removed by drilling, using the PDMS mix. In that case, as fibronectin denaturates above 60°C, cure PDMS overnight in a 37°C incubator. 9. Incubate the cells at appropriate temperature and humidity for 2 h to allow them to adhere to the substrate.

10. Aspirate medium with unattached cells. Wash with warm PBS and fill wells with warm culture medium. Cells can now be grown and observed.

Glass wires

Glass capillaries of radius larger than 20μm are manufactured by heating glass Pasteur over the flame of a freestanding gas torch and pulling each end (see Note 34) [7]. Glass capillaries whose radius is lower than 20μm are manufactured from glass rods, using a pipette puller. Glass capillaries of a few fixed sizes can also be purchased (eg. r=40 µm, 60 µm, 85 µm, CM Scientific). This section describes how to assemble these wires into a device which can be used for migration experiments.

1. Sort wires by size under a stereomicroscope and set aside sizes of interest.

2. Cut PDMS Gel-Pak film into a rectangle (~0.5cm x 1.5cm) using the razor blade and peel from its polyester backing and polyethylene release liner. 8. Expose the structures to an air plasma for 30 s to activate the PDMS and the glass wires. 9. Optional: Fibronectin coating: Incubate the wires in fibronectin solution for 1 h. Aspirate the Fibronectin solution. Rinse the structures with PBS and dry under a jet of air for 5 min. 10. Pre-treat the glass bottom of the 6-well plates with PLL-PEG solution (1 h) to prevent cells from growing down and off the structures onto the dish in the optical path (clouding the imaging of the wires) 11. Transfer the wire substrates to a 6-well plate with a tweezer.

12. Passage cells to obtain a cell suspension of the desired concentration (see Note 35).

13. Deposit a small drop of the cell suspension on PDMS pedestals (~ 50-100 µL depending on PDMS substrate area).

14. Incubate the substrates at appropriate temperature and humidity for 2 h to allow the cells in suspension to adhere to the PDMS pedestal.

15. Aspirate the drop of medium, removing the unattached cells. Wash with warm PBS and fill the wells with warm culture medium. 16. Once the cells have filled the support they will begin to migrate onto the wires and the 6-well plate is ready to be put under the microscope for imaging (Fig. 2B).

3.5 Wavy Substrates (Fig. 1B)

1. The pattern on the mask is transferred to a thick SU8 negative resist (the example is for SU8-2150, ending up in a castellated substrate where the patterns are about 200 µm high) (see Note 6. Leave the PS substrate at 80°C (below the glass transition temperature) under vacuum overnight to pump out gas and moisture contained inside that may otherwise deform the substrate during subsequent high temperature reflow.

7. Reflow the PS plate under vacuum at 180°C, for 50 to 120 min (see Notes 38 and 39) in order to modulate the wavy shape and therefore the out-of-plane curvature of the substrate. Quench to room temperature (Fig. 1C).

8. Duplicate the wavy PS substrate in PDMS (see step 3) (see Note 40). 9. Plasma oxidize the PDMS surface for 30 s with air plasma and incubate with fibronectin solution for 1 h before culturing cells. 10. Incubate the cells at appropriate temperature and humidity for 30 min to allow them to adhere to the substrate. 11. Aspirate medium with unattached cells. Wash with warm PBS and fill with warm culture medium. Cell growth and migration can now be observed (Fig. 2C).

NOTES

1. Prepare immediately before use.

2. Use low molecular weight polymer : average Mn 950 3. Wear UV protective glasses when using UV radiations 4. A collimated UV lamp of sufficient power at 365 nm can also be used.

5. The Chrome features on the mask correspond to the non-adherent moiety.

6. It is mandatory that the mask is transparent for wavelengths down to 185nm 7. The wavelength has to be less than 200 nm.

8. These lamps generate ozone that is a toxic and irritant gas. Use under a fume hood or hook to an 'ozone killer'.

  mix: mix the two parts of the Sylgard 184 kit (Dow Corning) (1v/10v) (see Note 1) 6. Parafilm 7. Teflon tweezers (Sigma) 8. Glass bottom 6 well plate (IBL) or plastic bottom 6-well plate whose polystyrene bottom has been removed by drilling. 2.4 Wire substrates 1. Glass Pasteur pipettes (Fisher Scientific) (see Note 9) or glass rods (WPI Inc, diameter 1mm) (see Note 10) 2. PDMS films (thickness 17 mils) (Gel-Pak, Hayward) 3. PDMS mix: mix the two parts of the Sylgard 184 kit (Dow Corning) (1v/10v) (see Note 1) 4. 70% Ethanol 5. 10µg/mL Fibronectin solution in PBS 6. PBS 7. 0.1mg/mL solution of Poly L-lysine-PolyEthylene Glycol (PLL(20)-g-[3,5]-PEG(2)) (Susos, Switzerland) [16] 8. Razor blade 9. Tweezers 10. Glass coverslips (22x30) 11. Glass bottom 6-well plate (IBL GmbH, Germany) 12. Air Plasma cleaner (Harrick Plasma) 13. Pipette puller (P-2000, Sutter Instruments) (see Note 11) 2.5 Wavy Substrates 1. Chrome mask patterned with a periodic succession of chrome lines (width w, period p) (Compugraphics, UK) (see Notes 12 and 13) 2. SU8-2150 photoresist (Microchem) 3. SU8 developer (Microchem) 4. Fluorosilane (tridecafluoro-1,1,2,2 tetrahydrooctyl trichlorosilane) (Roth Sochiel) 5. 10µg/mL Fibronectin solution in PBS 6. Polystyrene polymer (granules) (Sigma) 7. PDMS mix: mix the two parts of the Sylgard 184 kit (Dow Corning) (1v/10v) (see Note 1) 8. Air Plasma cleaner (Harrick Plasma) 9. Heating Press (E-Z press, ICL) 10. Vacuum Oven (Precision) 3. Methods: 3.1 Aam-PEG Coating 1. Plasma clean the coverslips for 5 min.2. Prepare the piranha solution (seeNote 14). Add the coverslips and let stand for 5 min.

3 .

 3 Rinse the coverslips with DI water. Dry under a jet of air. Put the dried coverslips in a clean glass Petri dish. 4. Prepare the allyltrichlorosilane solution. Pour the solution onto the clean coverslips and let stand for 5 min. Rinse with Toluene for 1 min. Then, rinse with Acetone followed by DI water. Dry under a jet of air (see Note 15). Bake the silanized coverslips in a glass Petri dish on a hot plate (90°C) for 1 h. 5. Prepare the acrylamide solution (see Note 16). Put the freshly prepared acrylamide solution in a glass Petri dish and place the silanized coverslips in the dish (see Note 17). Let stand for 5 min. Place the dish on the transilluminator and expose the slides in the solution for 3 min (see Note 18) through the glass bottom of the dish (see Notes 3, 19 and 20). The side of the coverslips facing the illuminator are now acrylamide-coated. 6. Rinse each slide individually with Acetone and then DI water. Dry the coverslips under a jet of air (see Notes 21 and 22).

9 .

 9 Incubate the cells at appropriate temperature and humidity for 2 h (see Note 29), to allow them to adhere to the adhesive parts of the substrate. 10. Aspirate medium with unattached cells. Wash with warm PBS and fill with warm culture medium. Cells can now be grown and observed. (Fig.2A).

3. 3

 3 Deep-UV patterning of PEG coating (Fig.1A)1. Prepare the coverslips with the repellant coating as in section 3.1 (see Note 30).2. Wash the quartz mask with Ethanol. Expose the mask to deep-UV light, Chrome side facing the lamp (see Note 31) for extensive cleaning.

3 .

 3 Pipette 5 to 10 µL of DI water onto the Chrome side of the mask (see Note 31) and return the coverslip onto the drop so the Aam-PEG coating faces the quartz mask and holds to it by capillary action (see Note 32).4. Expose the coated coverslip through the mask for 15 min with the deep UV lamp. 5. Gently detach the coverslip from the mask using Teflon tweezers (see Note 33). 6. Rinse the coverslip with DI water and dry under a jet of air. 7. Fibronectin coating of the etched areas: Pipette 50 µL of fibronectin solution on a parafilm layer.

3 . 5 . 6 .

 356 Place the rectangular piece of Gel-Pak on a coverslip 4. Cut glass wires to size and align them parallel on the Gel-Pak protruding off the support on both end. Cover carefully the Gel-Pak with the freshly prepared PDMS mix to immobilize the wires. Use only a minimal amount to avoid the PDMS from coating the freely suspended wires via capillary action. Cure the structure for 24 h at 65°C. 7. Clean the structures with ethanol and DI water. Air dry under a jet of air.

  coat the resist on a silicon wafer (3000 rpm, 30s) b. Soft bake 40 min, 95 °C. Allow to cool down to room temperature. c. Expose through the mask with the mask aligner. d. Post exposure bake: 15 min, 95 °C. Allow to cool down to room temperature. e. Develop in SU8 developer: 15 min. Rinse and dry. 2. Coat with fluorinated silane: place a few drops of fluorosilane in a small polyethylene weighting boat in a vacuum desiccator. Plasma treat the castellated SU8 structure (1 min) and put the activated pattern in the desiccator. Apply vacuum for typically 2 h (see Note 37).

3 .

 3 Pour 5 g of the freshly prepared PDMS mix over the master. Degas and cure overnight at 65°C. Allow to cool down and unmold. 4. Place 2.8 g of polystyrene granules in the heating press and inside a square spacer (3cm*3cm; height=3mm). The spacer sets the thickness of the polystyrene plate and acts as a frame to confine lateral dimensions. Heat the polystyrene at 150°C in the press for 10 min between two smooth metal plates to yield a flat polystyrene plate. Cool down to ambient temperature. 5. Melt the flat PS plate under the same experimental conditions (150°C, 4 bars), intercalating the PDMS mold between one of the plates and the PS, to emboss the periodic castellated shape into the softened PS. Allow to cool down and unmold the PDMS master.

FiguresFig. 1 :

 1 Figures

Fig. 2 :

 2 Fig. 2: A Collective displacements of MDCK cells in a confining disk. The velocity field (red) obtained

ACKOWLEDGMENTS

We gratefully acknowledge financial support from the Groupement des Entreprises Françaises dans la Lutte contre le Cancer (GEFLUC), the Région Ile-de-France Domaine d'Intérêt Majeur (DIM) Nano-K, the Association pour la Recherche sur le Cancer (ARC), the EU cofund PRESTIGE post-doc program, the EU cofund IC-3i PhD program, and the Fondation Pierre-Gilles de Gennes. The "Biology-Inspired Physics at MesoScales" group is member of the CelTisPhyBio Labex and of the Institut Pierre-Gilles de Gennes. It is a pleasure to thank Mohamed El Beheiry for his help in the 3D processing of our images.