The present application is constructed for the modeling and prediction stage of the fermentation process from the production of l(+)-lactic acid. In the experiments of the research team the variables are: the time, the concentration of glycerol and concentration of the Lucerne Green Juice used as supplement on media. The developed mathematical model has to establish the dependencies between the produced l(+) lactic acid and these variables. However, the same application, generalizing the labels, can be used in modeling any evolution which depends on three variables.
The developed application is based on use of neural networks. The main goal of the work was to make this application user friendly, not requiring knowledge in neural networks or some specific software.
The application is based on Matlab® version R2016a [12]. To run the application, the user has to install the standalone application double-clicking “Applicenta”.
The appearing graphical user interface is presented in Fig. 1. The application consist in three panels: the identification panel (upper left), the modeling panel (upper right) and the plotting panel (bottom panel) which is used by both identification and modeling panel.
The identification panel
In this panel, presented in Fig. 2, the user can upload the experimental data and set the modeling conditions. The necessary steps to use it are described below.
- Step 1::
-
Import data. The experimental data you use for modeling must be saved in an excel file. This is loaded in the application with the press of the button called “Load Data”.
- Step 2::
-
Initialize the values which are going to be used in the training of the neural network. The number of layers and neurons are taken from the text boxes from the panel named “Number of Layers” and “Number of neurons” and their values are saved in two variables. The variables are used to create the hidden layer size for the neural network. These are one of the most important parameters, because they have the highest influence on the behavior of the model. Generally several trials are required to find the optimal values of these parameters. Increasing the number of layers and neurons lead to a large time computation.
- Step 3::
-
Choose the preferred ratios for training, validation and test, including the values in the text boxes called “Train ratio”, “Validation ratio” and “Test ratio”. Commonly the training ratio has the highest percentage, because the model is created with the amount of values given by this parameter. In a neural network it is important to have a high enough number of values in order to create the model. Having fewer values for training than for validation and testing leads to models with small accuracy. The other parameters, validation and testing, are for confirming whether the model is good or bad. The default percentages for the ratios are: 70% for training, 15% for validation and 15% for testing. In some cases, a higher number of values are required and the training ratio may be increased. Obviously, the sum of these three ratios must be 100 in order to use all the data you have.
- Step 4::
-
Choose the preferred algorithm. Each different training method has a different mathematic formula in its background. The name of the methods is also the name of the mathematic algorithm behind it. The training methods used in the application and experiments are: Levenberg–Marquardt (L–M), BFGS Quasi-Newton (Q-N), Scaled Conjugate Gradient (SCG), Polak–Ribiere Conjugate Gradient (P–R) and Fletcher Powell Conjugate Gradient (F–P). The user can freely choose which training method to use from the list box
- Step 5::
-
Start training by pushing the button called “Start training”.
It appears a window like in Fig. 3, indicating the progress of the training stage.
Finalizing the training stage, the predicted values in comparison with the experimental data are plotted in the bottom panel, Fig. 4. The user can decide if these results are satisfactory or not. If yes, it can proceed with the next stage, to predict some results for different conditions. If not, it may return to step 1 and choose different modeling conditions.
The modeling panel
With this panel, presented in Fig. 5, the user can obtain the predicted results for any values of the possible experimental conditions.
This panel requires the percentage of glycerol for which the simulation must be done and the number of days for which the virtual experiment should be executed. Using the model established on the previous stage, the predicted values will be plotted on the plot panel, Fig. 6. Of course, this prediction stage can be reloaded for any values the user whish.