Jianfeng Chen
I am a Ph.D. candidate in the Department of Computer Science at
North Carolina State University. I am currently working at Realworld Artificial Intelligence for Software Engineering (RAISE) lab, under the direction of Dr. Tim Menzies.
My research mainly focuses on the field of automated software engineering, artificial intelligence, and multiobjectives optimization. Currently, I am working on configuring large software systems, largescale assurance of confidentiality environment, etc.
Before coming to NC State University, I did my Bachelor at the Department of Software Engineering from Shandong University, China in 2014.
Email /
Resume /
Github /
LinkedIn /
SlideShare /
微信



RIOT: a Stochasticbased Method for Workflow Scheduling in the Cloud
Jianfeng Chen, Tim Menzies
IEEE International Conference on Cloud Computing, 2018 (Accept rate: 15%)
pdf /
code
This paper introduces RIOT (Randomized Instance Order Types), a stochastic based method for workflow scheduling in the commercial cloud environment. RIOT groups the tasks in the workflow into virtual machines via a probability model and then use a useful surrogate based method to assess the tremendous amount of potential schedulings. Experiments in dozens of study cases showed that RIOT executes tens of times faster than traditional methods while generating comparable results to other algorithms.


"Sampling" as a Baseline Optimizer for Searchbased Software Engineering
Jianfeng Chen, Vivek Nair, Tim Menzies
IEEE Transactions on Software Engineering, 2018
pdf /
bibtex /
code
Searchbased optimization techniques often apply CPUintensive evolutionary algorithms to explore generations of mutations to a population of candidate solutions. This paper starts with a very large population and sample down to just the better solutions. We call this method "SWAY", short for "the sampling way". This paper compares SWAY versus stateoftheart searchbased SE tools using seven models, including linux kernel product line models; and other software process control models. For these models, the experiments of this paper show that SWAY is competitive with corresponding stateoftheart evolutionary algorithms while requiring orders of magnitude fewer evaluations.


DataDriven Searchbased Software Engineering
Vivek Nair, Amritanshu Agrawal, Jianfeng Chen, Wei Fu, George Mathew, Tim Menzies, Leandro Minku, Markus Wagner, Zhe Yu
Mining Software Repositories (MSR), 2018
pdf /
code
This paper introduces DataDriven Searchbased Software Engineering (DSE), which combines insights from Mining Software Repositories (MSR) and Searchbased Software Engineering (SBSE). While MSR formulates software engineering problems as data mining problems, SBSE reformulates SE problems as optimization problems and use metaheuristic algorithms to solve them. Both MSR and SBSE share the common goal of providing insights to improve software engineering. The algorithms used in these two areas also have intrinsic relationships.


Beyond evolutionary algorithms for searchbased software engineering
Jianfeng Chen, Vivek Nair, Tim Menzies
Information and Software Technology, 2017
pdf /
bibtex /
models
Evolutionary algorithms typically require a large number of evaluations (of solutions) to converge – which can be very slow and expensive to evaluate. To solve searchbased software engineering (SE) problems, using fewer evaluations than evolutionary methods. Instead of mutating a small population, we build a very large initial population which is then culled using a recursive biclustering chop approach. We evaluate this approach on multiple SE models, unconstrained as well as constrained, and compare its performance with standard evolutionary algorithms.


An (Accidental) Exploration of Alternatives to Evolutionary Algorithms for SBSE
Vivek Nair, Tim Menzies, Jianfeng Chen
Intl' Symposium on Search Based Software Engineering, 2016 (Best paper nominee)
pdf /
slides /
bibtex
SBSE researchers often use an evolutionary algorithm to solve various software engineering problems. This paper explores an alternate approach to sampling. This approach finds the (near) optimal solutions to the problem by (i) creating a larger initial population and (ii) intelligently sampling the solution space to find the best subspace. Unlike evolutionary algorithms, it does not use mutation or crossover or multigenerational reasoning to find interesting subspaces but relies on the underlying dimensions of the solution space. Experiments with Software Engineering (SE) models show that our performance improvement is competitive with standard MOEAs while, terminating over an order of magnitude faster.


Equiareal parameterizations of NURBS surfaces
Yijun Yang, Wei Zeng, Jianfeng Chen
Graphical Models, 2014
pdf
The equiareality of NURBS surfaces greatly affects the results of visualization and tessellation applications, especially when dealing with extruding and intruding shapes. To improve the equiareality of given NURBS surfaces, an optimization algorithm using the Möbius transformations is presented in this paper. The optimal Möbius transformation is obtained by computing the intersection of two planar algebraic curves, whose coefficients are computed explicitly for Bézier and Bspline surfaces, while numerically for NURBS surfaces. Examples are given to show the performance of our algorithm for visualization and tessellation applications.

Selected Projects
Check more older projects here.


Continuous Integration/Delivery Pipeline
Jianfeng Chen, Jianbin Chen, Zhewei Hu
NCSU CS591DevOps
code /
demo
Integrated Ansible scripts, Redis, Docker and CI tools(Jenkins) to create a pipeline to build, test, analysis and deploy newly committed code.
Basing on abstract syntax tree, created a testsuite generator to only test the diff between two commits.
Tools used in this practice.


Building Netflix Prize Prediction Model
Jianfeng Chen, Rui Zhi, Zhewei Hu
NCSU CSC522Autmoated Learning and Data Analysis
code /
poster
Netflix Prize competition held by Netflix Inc. in Oct 2006. The primary goal of this competition was to predict what score a user will rate for a movie, by learning a test set containing nearly 100 million customer rating records. In this project, we explored the data from this competition.
Given the 100 million customer rating records, we focused on the following tasks:
Predict the existed records by data analysis techniques (Decision tree, ANN, KNN, etc.). Compute the RMSE (Root mean squared error) of a different model, and then compare them.
Forecast whether one customer will be in favor of one released movie.
Given essential information (directors, genres, casts, etc.) of a movie, predict which group of customers will love it, and which group of customers will dislike it.


LACE: Largescale Assurance of Confidentiality Environment
LACE, or Largescale Assurance Configuration Environment, was first introduced by Dr. Peters in ICSE2013. In a short, LACE is a data preprocessing algorithm. It can help a user to remove the sensitive information and implicit association rules inside the data sets while keeping the utility of the data sets, typically for machine learning or big data mining.

Website template credit from Jon Barron. Last updated on Apr 23, 2018.

