A Research Survey on the Applications of Artificial Intelligence Techniques To Product Line Modelling

Research Paper Published in ICCET 2013 International  Conference on Computers  and Emerging Technologies, organized by Shah Abdul Latif University, Khairpur, Pakistan. An Excerpt from the paper is here :-

Software Product Line (SPL) is one of the well known software reusability approaches; it is an advanced concept to manage a family of configurable units of software under one umbrella using a reconfigurable and reusable software architecture. A major problem in SPL is the selection of the relevant set of features, in order to configure some product throught the configurable units.  Each unit can support a diverse set of features. Combining features from each unit is a manual activity that requires a large amount of manual deliberation between the system designers. This approach is quite unsophisticated, in that it leads to a loss of resources (time, money etc.). In the current days, there is a strong need to automate this process to ensure a streamlined feature selection process. In this paper, we present a concrete survey on how artificial intelligence techniques have been applied to address the feature selection dilemma. We review several state-of-the-art papers, which particularly target techniques based on knowledge-based and logical reasoning. Our survey reveals a dearth of the application of optimization techniques to the feature selection problem. Besides genetic algorithms, we propose to extend the state of the art through the application of four state-of-the-art optimization techniques, i.e., Particle Swarm Optimization, Artificial Bee Colony, Ant Colony  Optimization and Hill Climbing. We are currently running experiments in this regard on a pilot SPL.


Drone Attacks in Pakistan

Drone attacks are done by a special airplane called unmanned aerial vehicle [UAV] or remotely piloted aerial system [RPAS] commonly known as drones.  Drones are different in sizes, shapes and configurations. USA drone attacks in Pakistan started in June 2004, since then hundreds of attacks have been made. USA labels these attacks a part of its War on terrorism campaign. Till date thousands of people have been killed in the drone war including women and children.

Recently I did a project on “Drone Attacks in Pakistan”  under the supervision of Dr. Tariq Mahmood (https://sites.google.com/a/nu.edu.pk/tariq-mahmood ), the project was the part of the Data Mining Course.

We studied & analyzed the drone attacks in Pakistan.  We got the data from different news websites, validated it and populated the data set. We then transformed the dataset and developed year wise, month wise and date wise datasets.

We performed different types of experiments with the all datasets. Two of them are:

  1. Apply descriptive statistics to know the behavior of the datasets.
  2. Develop models for the datasets and forecast the future values using these models.


Figure 1-A Running chart of No_of_ Attacks

Figure 1-A shows the variations of the attacks over time. It shows the low intensity of drone attacks from 2004 to mid 2008 that gradually increases from mid 2008 and has its highest intensity in the late 2010.


 Figure 02:  comparison of Militant_Killed and Civilian_Martyred run chart & Bars Chart

Figure 02 shows a comparison of run charts of Militant_Killed and Civilian_Martyred series and shows that innocent are martyred in much higher number. There is not a single point in the graph where the run chart line of Militant_Killed surpasses the Civilian_Martyred run chart line.

First, We used the month-wise data set and applied two different modelers for the data set; Expert modeler and ARIMA. We first used expert modeler that finds the best model for each series and applied simple seasonal model that is appropriate for the series with no trend and a constant seasonal effect over time. Its smoothing parameters are level and season. It develops a separate model for each time series of dataset.

UntitledFigure 03: Graphical depiction of forecast [Expert Modeler]

The models forecast that total four drone attacks would be made in January 2013 that would kill five militants and fourteen civilians and would cause thirteen injuries. September 2013 would be the month with the maximum drone attacks i.e. five. Maximum seven militants would be killed in a month (March 2013). In October 2013 thirty civilian will be martyred; twenty one will be injured in March and September 2013. In total forty three drone attacks will strike in Pakistan that will kill 48 militants and 199 civilians and 159 will get injuries. Figure 3 shows the graphical depiction of the  forecast.


Figure 04: Graphical depiction of forecast [ARIMA]

We then used the year-wise dataset. Total 328 drone attacks have been made till December 2012 and the maximum number of attacks in a year is 109. Total militant killed in these attacks are 422 and in a year the highest number of heads count is 125. Total 2458 civilians are martyred in these attacks including women and innocent children too. The maximum 849 innocents are killed in a year. The total number of injuries is 1221 and the maximum injuries in a year are 421.  Per year average of the drone attacks is thirty six that killed forty six militants and two hundred and seventy three civilians and caused one hundred and thirty six injuries.

The models forecast that total seven drone attacks would be made in January 2013 that would kill ten militants and forty seven civilians and will cause twenty five injuries. The maximum eight drone attacks will be made in a month. In December 2013 57 civilian will be martyred; twenty seven will be injured. In total Ninety three drone attacks will strike in Pakistan that will kill 120 militants and 627 civilians and 312 will get injuries. Figure 4 shows the graphical depiction of the  forecast.


Figure 5: Graphical depiction of forecast-Yearwise

The models forecast that total ninety two drone attacks would be made in 2013 that would kill 119 militants and 622 civilians and will cause 310 injuries. The maximum 114 drone attacks will be made in 2015. In 2015 762 civilian will be martyred; 380 will be injured. Figure 5 shows the graphical depiction of the above-mentioned forecast.

We are now doing some more experiments with data to make these initial results better. Will update you soon…

Configuration Complexity: A Layered based Configuration Repository Architecture for Conflicts Identification

Research paper published in GJCST volume 10, 2010.

An unstable product configures if conflicts are not identified or identified in the late phases of software product configuration so an approach is required to capture these conflicts in earlier stage. We proposed a Layered based configuration repository (shared) architecture that reduces the configuration complexity by capturing conflicts (Requirements conflicts, features conflicts, decision conflicts) at earlier stage to reduce the configuration complexity.

A “Product Configuration Tool” (PCT) is developed to support the proposed architecture. PCT has two views one for the population of configuration repository and other for the product derivation. Business pattern data of an ERP system is used to validate the repository architecture and its supportive tool.

Future directions include the integration of architecture with existing feature analysis tools and Extend the interface to visualize the model and Enable Architecture to support distributed repository.

Configuration Challenges & Issues: A Configuration Process Model to Reduce the Complexity of Software Product Line.

It is my first research paper published in ICCOST 2010 organized by Al-Khawarizmi Institute of Computer Science, University of Engineering and Technology, Lahore. An Excerpt from the paper is here:-

Configuration of software product line is often a more laborious process than anticipated before. One major difficulty with software product line engineering is unavailability of standardize configuration process model that reduces the adverse affects of configuration related issues and problems such as requirements conflicts of same/multiple stages, complexity of conflicts resolution, adhoc testing and low integration with traditional phases of software engineering process models. We discuss some core product line configuration issues and present a standardize configuration process model “CPM” that is built on the strong base of traditional software engineering process models with the additional power of modern product line configuration to reduce the configuration issues and problems. Some real world scenarios are used to illustrate the proposed model.