﻿ 基于改进FOA算法的上市公司Z-Score模型财务预警
 计算机系统应用  2018, Vol. 27 Issue (11): 198-204 PDF

Z-Score Model Financial Prediction for Listed Companies Based on Improved FOA Algorithm
KANG Cai-Hong, WANG Qiu-Ping, XIAO Yan-Ting
Faculty of Sciences, Xi’an University of Technology, Xi’an 710054, China
Foundation item: Young Scientists Fund of the National Natural Science Foundation of China (11601419)
Abstract: In order to improve the prediction ability of the traditional Z-Score financial prediction model, this paper proposes a financial prediction model of Z-Score for listed companies based on improved Fruit fly Optimization Algorithm (FOA) by combining the good searching ability of improved FOA algorithm and the Z-Score financial prediction model. The Root Mean Square Error (RMSE) between the predicted value and target value is reduced by improved FOA algorithm being applied to optimize the parameters of Z-Score model. We compare the predicted value and target value of the financial data of listed companies to test the accuracy of financial prediction. The experimental results are as follows: accuracies of the traditional Z-Score financial prediction model, FOA algorithm optimized Z-Score model, and improved FOA algorithm optimized Z-Score model are 65%, 70%, and 80%, respectively. Experiments show that the improved algorithm significantly improves the predictive ability of Z-Score financial prediction model, it is also illustrated the validity of the algorithm.
Key words: Fruit fly Optimization Algorithm (FOA)     Z-Score model     searching ability     root mean squared error

2011年6月台湾学者Wen-Tsao Pan博士受果蝇觅食行为的启发提出了果蝇优化算法(Fruit fly Optimization Algorithm, FOA)[5,6], 然后用FOA来优化多变量预测模型中的传统Z-Score财务预警模型的参数, 虽然优化参数后的预测结果比传统Z-Score财务预警模型好, 但因FOA算法易陷入局部最优、稳定性不强等缺陷, 使得预测结果并不理想.

1 Z-Score模型简介

 $Z = 1.2{X_1} + 1.4{X_2} + 3.3{X_3} + 0.6{X_4} + 1.0{X_5}$ (1)

Altman教授的Z-Score临界值见表2.

2 果蝇优化算法 2.1 基本果蝇优化算法(FOA)

FOA算法是一种向最优个体不断靠近来实现解空间寻优的新方法. 果蝇觅食的基本原理: ① 嗅觉搜索阶段: 由嗅觉分辨食物气味的来源, 并朝这个方向飞去; ② 视觉定位阶段: 当逼近食物位置附近后, 利用敏锐的视觉来准确判断食物源以及其它同伴聚集的准确位置, 最后飞向食物源. FOA步骤如下[6]:

1)给定果群规模 $sizepop$ , 最大迭代数 $Maxgen$ ; $X\_axis$ $Y\_axis$ 为初始区间内的随机点.

2)对果蝇个体通过嗅觉寻找食物的方向与距离进行赋值:

 $\left\{ {\begin{array}{*{20}{c}} {{X_i} = X\_axis + RandomValue} \\ {{Y_i} = Y\_axis + RandomValue} \end{array}} \right.$ (2)

3)因无法得知食物源的具体位置, 故需先估计与原点之间的距离 $Dis{t_i}$ , 然后再计算味道浓度判定值Si:

 $Dis{t_i} = \sqrt {{X_i^2} + {Y_i^2}}$ (3)
 ${S_i} = {1 / {Dis{t_i}}}$ (4)

4)将式(4)中计算出的味道浓度判定值Si代入味道浓度判断函数(Fitness function), 此时就可以求得果蝇个体的味道浓度值 $Smel{l_i}$ (即适应值):

 $Smel{l_i} = {\rm{function}}({S_i})$ (5)

5)找出果蝇种群中味道浓度最低的一个(求最小值):

 $[bestSmell\;\;bestindex] = \min (Smel{l_i})$ (6)

6)记录并保留最优味道浓度判定值 $bestSmell$ 与存储它的XY坐标, 这样果蝇就可以利用视觉飞向该位置:

 $\left\{ {\begin{array}{*{20}{c}} {Smellbest = bestSmell} \\ {X\_axis = X(bestindex)} \\ {Y\_axis = Y(bestindex)} \end{array}} \right.$ (7)

7) 重复执行步骤2)~ 5), 并与前一代最佳味道浓度值作对比, 是否优于前一代最佳味道浓度值, 且当前迭代数是否小于最大迭代数 $Maxgen$ , 若是, 则执行步骤6); 否则, 结束算法.

2.2 基于FOA的改进果蝇优化算法

SA-FOA算法下步长值主要通过两部分来实现调控, 见式 (8). 首先衰减部分, 这部分根据当前迭代次数变化形成一个指数衰减量; 其次根据每个果蝇个体当前所处位置的差异性, 将前一代果蝇个体位置的味道浓度值和前一代群体最优值同时考虑进去, 这样可使迭代步长值随着果蝇个体当前所处的位置需求进而来实现搜索步长的自适应更新, 通过这两部分的调控关系可使果蝇个体根据自身所处位置情况来选择不同的步长. 由式 (8)可知, 该方式下搜索步长值总体是呈递减趋势, 且位置较差的果蝇个体能获得相对更长的搜索步长值, 使得果蝇群体兼具较强的全局勘探和局部开发能力, 从而增强整个算法的搜索寻优能力.

 ${C_i} = {C_0}{{\rm{e}}^{ - \tau g}} + \frac{{\left| {Smell(i) - bestSmell} \right|}}{{\delta bestSmell}}$ (8)

 $RandomValu{e_i} = {C_i} (2 \cdot rand() - 1)$ (9)

 $\left\{ {\begin{array}{*{20}{c}}{{X_i} = X\_axis + {C_i} (2 \cdot rand() - 1)}\\{{Y_i} = Y\_axis + {C_i} (2 \cdot rand() - 1)}\end{array}} \right.$ (10)

2.3 模拟验证

 $\begin{array}{l}\min f({x_1},{x_2}) = \displaystyle\frac{{({{\sin }^2}(\sqrt {x_1^2 + x_2^2} ) - 0.5)}}{{{{(1 + 0.001(x_1^2 + x_2^2))}^2}}} - 0.5\\\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; - 100 \le {x_i} \le 100\;\;\;\;\;i = 1,2\end{array}$ (11)

Schaffer函数的特点是在定义域内存在一个全局最小值点和无限个局部极小值点. 在MATLAB中分别用SA-FOA、PSO和FOA算法测得其曲线收敛如图1所示. 由图1可看出, SA-FOA算法的收敛效果优于PSO和FOA算法, 寻优效果较好.

 图 1 Schaffer函数适应度进化曲线 Fig. 1 The iterative process of Schaffer function

3 基于SA-FOA算法优化Z-Score模型

 $\hat Z = {T_1}{X_1}{\rm{ + }}{T_2}{X_2}{\rm{ + }}{T_3}{X_3}{\rm{ + }}{T_4}{X_4}{\rm{ + }}{T_5}{X_5}$ (12)
 $S{{mel}}{{{l}}_i} = Fitness = RMSE$ (13)

SA-FOA优化Z-Score模型的流程如图2所示.

 图 2 SA-FOA优化Z-Score模型流程图 Fig. 2 Flow chart of Z-Score model optimized by SA-FOA

4 实证分析 4.1 实验原理

4.2 Z-Score模型的仿真实验

4.2.1 仿真实验与结果分析

4.2.2 FOA优化Z-Score模型参数的仿真实验

4.2.3 SA-FOA优化Z-Score模型参数的仿真实验

 图 3 RMSE收敛图 Fig. 3 The convergrnce of RMSE

5 结论

 [1] 游达明, 刘亚庆. Z值财务预警模型在交通运输业的修正与应用 . 华东经济管理, 2015, 29(7): 9-13. DOI:10.3969/j.issn.1007-5097.2015.07.002 [2] Ko YC, Fujita H, Li TR. An evidential analysis of Altman Z-score for financial predictions: Case study on solar energy companies . Applied Soft Computing, 2017, 52: 748-759. DOI:10.1016/j.asoc.2016.09.050 [3] 徐金鑫. 基于GA-RBF的上市公司财务预警模型研究[硕士学位论文]. 杭州: 浙江工商大学, 2010. [4] 周辉仁, 郑丕谔, 王嵩, 等. 基于粒子群优化算法的LS-SVM财务预警. 计算机工程, 2009, 35(10): 280-282. DOI:10.3969/j.issn.1000-3428.2009.10.094 [5] 潘文超. 果蝇最佳化演算法: 最新演化式计算技术. 台中: 沧海书局, 2011. [6] Pan WT. A new fruit fly optimization algorithm: Taking the financial distress model as an example. Knowledge-Based Systems, 2012, 26: 69-74. DOI:10.1016/j.knosys.2011.07.001 [7] Altman EI. Financial ratios, discriminant analysis and the prediction of corporate bankruptcy. Journal of Finance, 1968, 23(4): 589-609. DOI:10.1111/j.1540-6261.1968.tb00843.x [8] Chen HW, Hu ZB, Ye ZW, et al. Research of P2P traffic identification based on neural network. Proceedings of 2009 International Symposium on Computer Network and Multimedia Technology. Wuhan, China. 2009. 1–4. [9] Yin LJ, Li XY, Gao L, et al. A new improved fruit fly optimization algorithm for traveling salesman problem. Proceedings of the Eighth International Conference on Advanced Computational Intelligence. Chiang Mai, Thailand. 2016. 21–28. [10] 韩俊英, 刘成忠. 自适应调整参数的果蝇优化算法. 计算机工程与应用, 2014, 50(7): 50-55. DOI:10.3778/j.issn.1002-8331.1301-0274 [11] 张宏艺, 洪大华, 崔广健, 等. 改进免疫粒子群算法在矿车调度优化中的应用. 计算机系统应用, 2017, 26(6): 9-16. DOI:10.15888/j.cnki.csa.005817 [12] Yu Y, Li YC, Li JC, et al. Self-adaptive step fruit fly algorithm optimized support vector regression model for dynamic response prediction of magnetorheological elastomer base isolator. Neurocomputing, 2016, 211: 41-52. DOI:10.1016/j.neucom.2016.02.074 [13] Li HY, Chen JQ, Huang QZ, et al. An improvement of fruit fly optimization algorithm for solving traveling salesman problems. Proceedings of 2014 IEEE International Conference on Information and Automation. Hailar, China. 2014. 620–623.