This document discusses a study on predicting the compatibility of Eclipse third-party plugins (ETPs) with new Eclipse releases. The researchers built prediction models using logistic regression based on ETPs' usage of Eclipse APIs versus non-APIs. They trained and tested 36 models and found high accuracy, precision, and recall over 80% in many cases. The models show promise for predicting compatibility and could be developed into a tool to help ETP users and developers.
This talk was given at GTC16 by James Beyer and Jeff Larkin, both members of the OpenACC and OpenMP committees. It's intended to be an unbiased discussion of the differences between the two languages and the tradeoffs to each approach.
Using a circularly-linked list made the solution trivial. The solution would have been more difficult if an array had been used. This illustrates the fact that the choice of the appropriate data structures can significantly simplify an algorithm. It can make the algorithm much faster and efficient.
This talk was given at GTC16 by James Beyer and Jeff Larkin, both members of the OpenACC and OpenMP committees. It's intended to be an unbiased discussion of the differences between the two languages and the tradeoffs to each approach.
Using a circularly-linked list made the solution trivial. The solution would have been more difficult if an array had been used. This illustrates the fact that the choice of the appropriate data structures can significantly simplify an algorithm. It can make the algorithm much faster and efficient.
Software engineering is inherently a collaborative venture, involving many stakeholders that coordinate their efforts to produce large software systems. While importance of human aspects in software engineering has been recognised already in the 1970s, emergence of open source software (late 1990s) and platforms such as Stack Overflow and GitHub (late 2000s) enabled application of empirical methods to study of human aspects of software engineering.
In the first part of the talk we present a selection of recent results pertaining to two main
questions: who are the software developers and in what kind of activities they engage. The second part of the talk focuses on tools and techniques that have been used to obtain
the aforementioned results.
Vier jongeren uit Nederland gaan een week meelopen met leden van de Westboro Baptist Church in Topeka, Kansas om een documentaire te maken. De Westboro Baptist Church staat bekend als de meest gehate familie van Amerika. In de documentaire volgen wij de woordvoorster van de kerk: Shirley Phelps en laten haar haar verhaal doen, ook volgen wij de vier jongeren die hun verhaal vertellen over hoe zei zich voelen en wat ze doen.
Deze presentatie is 23 januari gehouden, en vertelt de plan van aanpak.
Security and Emotion: Sentiment Analysis of Security Discussions on GitHubAlexander Serebrenik
Application security is becoming increasingly prevalent during software and especially web application development. Consequently, countermeasures are continuously being discussed and built into applications, with the goal of reducing the risk that unauthorized code will be able to access, steal, modify, or delete sensitive data. We gauged the presence and atmosphere surrounding security-related discussions on GitHub, as mined from discussions around commits and pull requests.
First, we found that security-related discussions account for approximately 10\% of all discussions on GitHub. Second, we found that more negative emotions are expressed in security-related discussions than in other discussions. These findings confirm the importance of properly training developers to address security concerns in their applications
as well as the need to test applications thoroughly for security vulnerabilities in order to reduce frustration and
improve overall project atmosphere.
Software engineering is inherently a collaborative venture, involving many stakeholders that coordinate their efforts to produce large software systems. While importance of human aspects in software engineering has been recognised already in the 1970s, emergence of open source software (late 1990s) and platforms such as Stack Overflow and GitHub (late 2000s) enabled application of empirical methods to study of human aspects of software engineering.
In the first part of the talk we present a selection of recent results pertaining to two main
questions: who are the software developers and in what kind of activities they engage. The second part of the talk focuses on tools and techniques that have been used to obtain
the aforementioned results.
Vier jongeren uit Nederland gaan een week meelopen met leden van de Westboro Baptist Church in Topeka, Kansas om een documentaire te maken. De Westboro Baptist Church staat bekend als de meest gehate familie van Amerika. In de documentaire volgen wij de woordvoorster van de kerk: Shirley Phelps en laten haar haar verhaal doen, ook volgen wij de vier jongeren die hun verhaal vertellen over hoe zei zich voelen en wat ze doen.
Deze presentatie is 23 januari gehouden, en vertelt de plan van aanpak.
Security and Emotion: Sentiment Analysis of Security Discussions on GitHubAlexander Serebrenik
Application security is becoming increasingly prevalent during software and especially web application development. Consequently, countermeasures are continuously being discussed and built into applications, with the goal of reducing the risk that unauthorized code will be able to access, steal, modify, or delete sensitive data. We gauged the presence and atmosphere surrounding security-related discussions on GitHub, as mined from discussions around commits and pull requests.
First, we found that security-related discussions account for approximately 10\% of all discussions on GitHub. Second, we found that more negative emotions are expressed in security-related discussions than in other discussions. These findings confirm the importance of properly training developers to address security concerns in their applications
as well as the need to test applications thoroughly for security vulnerabilities in order to reduce frustration and
improve overall project atmosphere.
Our Vision: To provide a cooperative community based on sustainability principles
and cooperative values that represents economic vitality,
ecological soundness and social justice.
Scaling Deep Learning Algorithms on Extreme Scale Architecturesinside-BigData.com
In this video from the MVAPICH User Group, Abhinav Vishnu from PNNL presents: Scaling Deep Learning Algorithms on Extreme Scale Architectures.
"Deep Learning (DL) is ubiquitous. Yet leveraging distributed memory systems for DL algorithms is incredibly hard. In this talk, we will present approaches to bridge this critical gap. We will start by scaling DL algorithms on large scale systems such as leadership class facilities (LCFs). Specifically, we will: 1) present our TensorFlow and Keras runtime extensions which require negligible changes in user-code for scaling DL implementations, 2) present communication-reducing/avoiding techniques for scaling DL implementations, 3) present approaches on fault tolerant DL implementations, and 4) present research on semi-automatic pruning of DNN topologies. Our results will include validation on several US supercomputer sites such as Berkeley's NERSC, Oak Ridge Leadership Class Facility, and PNNL Institutional Computing. We will provide pointers and discussion on the general availability of our research under the umbrella of Machine Learning Toolkit on Extreme Scale (MaTEx) available at http://github.com/matex-org/matex."
Watch the video: https://wp.me/p3RLHQ-hnZ
Keynote in KLEE workshop on Symbolic Execution 2018
Systematic greybox fuzzing inspired by ideas from symbolic execution, work at NUS
Covers new usage of symbolic execution in automated program repair, work at NUS
As the number of packages available for R continues to grow, maintaining and testing these packages becomes more difficult. This difficulty is compounded as independent implementations of the R language, such as TIBCO Enterprise Runtime for R (TERR), are developed. To address this, we have created a test automation framework for testing packages with both TERR and R. We will describe how the framework automatically creates tests from a package's source files. Issues with testing on multiple platforms will be discussed. Suggestions for improving packages with tests will also be presented.
Scaling Up AI Research to Production with PyTorch and MLFlowDatabricks
PyTorch, the popular open-source ML framework, has continued to evolve rapidly since the introduction of PyTorch 1.0, which brought an accelerated workflow from research to production.
Python Loops Tutorial | Python For Loop | While Loop Python | Python Training...Edureka!
This Edureka "Python Loops" tutorial (Python Tutorial Blog: https://goo.gl/wd28Zr) will help you in understanding different types of loops used in Python. You will be learning how to implement all the loops in python practically. Below are the topics covered in this tutorial:
1) Why to use loops?
2) What are loops?
3) Types of loops in Python: While, For, Nested
4) Demo on each Python loop
Eclipse is probably best known as a first class Java IDE, but it is so much more than that.
In this talk, I will present the different tools that makes up the Eclipse Modeling Project from the simple (EMF) to the very complex (QVT/O). The emphasis will be on the immediately useful techniques with plenty of demonstrations.
Presentation made for notesnet.dk 2010-10-26
OpenPOWER Webinar from University of Delaware - Title :OpenMP (offloading) o...Ganesan Narayanasamy
This presentation discusses the on-going project on building a validation and verification (V&V) testsuite of the widely popular directive-based parallel programming model, OpenMP. The talk will present results of the OpenMP offloading features implemented in various compilers targeting Summit among other systems. This project is open-source and the SOLLVE V&V team welcomes collaborations.
Penn
State
University
School
of
Electrical
Engineering
and
Computer
Science
Page
1
of
4
CMPEN
331
–
Computer
Organization
and
Design,
Lab
6
Due
Wednesday
April
26,
2017
at
7:00
am
(Drop
box
on
Canvas)
This lab introduces the idea of the pipelining technique for building a fast CPU. The students will obtain
experience with the design implementation and testing of the first four stages (Instruction Fetch, Instruction
Decode, Instruction Execute, Memory) of the five-stage pipelined CPU using the Xilinx design package for
FPGAs. It is assumed that students are familiar with the operation of the Xilinx design package for Field
Programmable Gate Arrays (FPGAs) through the Xilinix tutorial available in the class website.
1. Pipelining
As described in lab 4
2. Circuits of the Instruction Fetch Stage
As described in lab 4
3. Circuits of the Instruction Decode Stage
As described in lab 4
4. Circuits of the Execution Stage
As described in lab 5
5. Circuits of the Memory Access Stage
As described in lab 5
6. Circuits of the Write Back Stage
Referring to Figure 1, in the fifth cycle the first instruction entered the WB stage. The memory data is selected
and will be written into the register file at the end of the cycle. All the control signal have a prefix “w”. The
second instruction entered the MEM stage; the third instruction entered the EXE stage; the fourth instruction is
being decoded in the ID stage; and the fifth instruction is being fetched in the IF stage. All the six pipeline
registers are updated at the end of the cycle (the destination register is considered as the six pipeline register).
Then the first instruction is committed. In each of the forth coming clock cycles, an instruction will be commited
and a new instruction will enter the pipeline. We use the structure shown in Figure 1 as a baseline for the design
of our pipelined CPU.
Penn
State
University
School
of
Electrical
Engineering
and
Computer
Science
Page
2
of
4
Figure 1 Pipeline write back (WB) stage
7. Table 1 lists the names and usages of the 32 registers in the register file.
Table 1 MIPS general purpose register
$zero 0 Constant 0
$at 1 Reserved for assembler
$v0, $v1 2, 3 Function return values
$a0 - $a3 4 – 7 Function argument values
$t0 - $t7 8 – 15 Temporary (caller saved)
$s0 - $s7 16 – 23 Temporary (callee saved)
$t8, $t9 24, 25 Temporary (caller saved)
$k0, $k1 26, 27 Reserved for OS Kernel
$gp 28 Pointer to Global Area
$sp 29 Stack Pointer
$fp 30 Frame Pointer
$ra 31 Return Address
8. Table 2 lists some MIPS i.
Towards Continuous Performance Assessment of Java Applications With PerfBotAlexander Serebrenik
Bots for continuous performance assessment are gaining use as a productivity tool. We discuss how and why open source projects use them and present an in-depth case study of the Nanosoldier bot used by the team behind the Julia programming language. Based on analysing the history of bot usage and interviews with developers we identify lack of a shared platform for performance measurement as an obstacle to wider adoption of performance measurement bots. To address this, we propose a prototype implementation of such a platform called PerfBot.
Joint work with Florian Markusse and Philipp Leitner, presented at 5th International Workshop on
Bots in Software Engineering, collocated with ICSE 2023, Melbourne Australia.
“STILL AROUND”: Experiences and Survival Strategies of Veteran Women Software...Alexander Serebrenik
The intersection of ageism and sexism can create a hostile environment for veteran software developers belonging to marginalized genders. In this study, we conducted 14 interviews to examine the experiences of people at this intersection, primarily women, in order to discover the strategies they employed in order to successfully remain in the field. We identified 283 codes, which fell into three main categories: Strategies, Experiences, and Perception. Several strategies we identified, such as (Deliberately) Not Trying to Look Younger, were not previously described in the software engineering literature. We found that, in some companies, older women developers are recognized as having particular value, further strengthening the known benefits of diversity in the workforce. Based on the experiences and strategies, we suggest organizations employing software developers to consider the benefits of hiring veteran women software developers. For example, companies can draw upon the life experiences of older women developers in order to better understand the needs of customers from a similar demographic. While we recognize that many of the strategies employed by our study participants are a response to systemic issues, we still consider that, in the short-term, there is benefit in describing these strategies for developers who are experiencing such issues today.
This paper is a joint work with Sterre van Breukelen, Ann Barcomb and Sebastian Baltes
Preprint https://arxiv.org/abs/2302.03723
A Qualitative Study of Developers’ Discussions of Their Problems and Joys Dur...Alexander Serebrenik
Many software developers started to work from home on a short notice during the early periods of COVID-19. A number of previous papers have studied the wellbeing and productivity of software developers during COVID-19. The studies mainly use surveys based on predefined questionnaires. In this paper, we investigate the problems and joys that software developers experienced during the early months of COVID-19 by analyzing their discussions in online forum devRant, where discussions can be open and not bound by predefined survey questionnaires. The devRant platform is designed for developers to share their joys and frustrations of life. We manually analyze 825 devRant posts between January and April 12, 2020 that developers created to discuss their situation during COVID19. WHO declared COVID-19 as pandemic on March 11, 2020. As such, our data offers us insights in the early months of COVID-19. We manually label each post along two dimensions: the topics of the discussion and the expressed sentiment polarity (positive, negative, neutral). We observed 19 topics that we group into six categories: Workplace & Professional aspects, Personal & Family well-being, Technical Aspects, Lockdown preparedness, Financial concerns, and Societal and Educational concerns. Around 49% of the discussions are negative and 26% are positive. We find evidence of developers’ struggles with lack of documentation to work remotely and with their loneliness while working from home. We find stories of their job loss with little or no savings to fallback to. The analysis of developer discussions in the early months of a pandemic will help various stakeholders (e.g., software companies) make important decision early to alleviate developer problems if such a pandemic or similar emergency situation occurs in near future. Software engineering research can make further efforts to develop automated tools for remote work (e.g., automated documentation).
Empirical Software Engineering 27(5): 117 (2022), presented at ICSE 2023 as part of the Journal First program.
Software developers are known to experience a wide range of emotions while performing development tasks. Emotions expressed in developer communication might reflect openness of the ecosystem to newcomers, presence of conflicts, problems in the software development process or source code itself. In this talk, based on a recent work with Nicole Novielli, I present an overview of the state-of-the-art research on analysis of emotions in software engineering focusing on the studies of emotion in context of software ecosystems. To encourage further applications of emotion analysis in the industry and research we also discuss currently available emotion analysis tools and datasets as well as outline directions for future research.
This is a keynote talk given at the 11th International Workshop on Software Engineering for Systems-of-Systems and Software Ecosystems (SESoS 2023), collocated with ICSE 2023 in Melbourne, Australia.
Investigating the Resolution of Vulnerable Dependencies with Dependabot Secur...Alexander Serebrenik
Modern software development practices increasingly rely on third-party libraries due to the inherent benefits of reuse. However, libraries may contain security vulnerabilities that can propagate to the dependent applications. To counter this, maintainers of dependent projects should monitor their dependencies and security reports to ensure that only patched releases of the upstream applications are in use. As manual maintenance of dependencies has shown to be ineffective, several automated tools (aka bots) have been proposed to assist developers in rapidly identifying and resolving vulnerable dependencies.
In this work, we focus on Dependabot, a popular bot providing security and version updates, and study developers' receptivity to its security updates in engineered and actively maintained JavaScript projects. Moreover, we carry out a fine-grained analysis of the lifecycle of every vulnerability to manifest how they are dealt with in the presence of Dependabot.
Our findings show that the task of fixing vulnerable dependencies is, to a large extent, delegated to Dependabot and that developers merge the majority of security updates within several days. On the other hand, when developers do not merge a security update, they usually address the identified vulnerability manually. This approach, however, often takes up to several months which in turn could expose the projects to security issues.
This paper has won the ACM Distinguished paper award at MSR 2023.
An Empirical Assessment on Merging and Repositioning of Static Analysis AlarmsAlexander Serebrenik
Static analysis tools generate a large number of
alarms that require manual inspection. In prior work, repositioning of alarms is proposed to (1) merge multiple similar alarms
together and replace them by a fewer alarms, and (2) report
alarms as close as possible to the causes for their generation. The
premise is that the proposed merging and repositioning of alarms
will reduce the manual inspection effort. To evaluate the premise,
this paper presents an empirical study with 249 developers on
the proposed merging and repositioning of static alarms. The
study is conducted using static analysis alarms generated on C
programs, where the alarms are representative of the merging vs.
non-merging and repositioning vs. non-repositioning situations
in real-life code. Developers were asked to manually inspect and
determine whether assertions added corresponding to alarms in
C code hold. Additionally, two spatial cognitive tests are also
done to determine relationship in performance. The empirical
evaluation results indicate that, in contrast to expectations, there
was no evidence that merging and repositioning of alarms reduces
manual inspection effort or improves the inspection accuracy (at
times a negative impact was found). Results on cognitive abilities
correlated with comprehension and alarm inspection accuracy.
Static analysis tools help to detect common programming errors but generate a large number of false positives.
Moreover, when applied to evolving software systems, around
95% of alarms generated on a version are repeated, i.e., they
have also been generated on the previous version. Version-aware
static analysis techniques (VSATs) have been proposed to suppress
the repeated alarms that are not impacted by the code changes
between the two versions. The alarms reported by VSATs after
the suppression, called delta alarms, still constitute 63% of the
tool-generated alarms.
We observe that delta alarms can be further postprocessed
using their corresponding code changes: the code changes due
to which VSATs identify them as delta alarms. However, none
of the existing VSATs or alarms postprocessing techniques
postprocesses delta alarms using the corresponding code changes.
Based on this observation, we use the code changes to classify
delta alarms into six classes that have different priorities assigned
to them. The assignment of priorities is based on the type of
code changes and their likelihood of actually impacting the delta
alarms. The ranking of alarms, obtained by prioritizing the
classes, can help suppress alarms that are ranked lower, when
resources to inspect all the tool-generated alarms are limited.
We performed an empirical evaluation using 9789 alarms
generated on 59 versions of seven open source C applications.
The evaluation results indicate that the proposed classification
and ranking of delta alarms help to identify, on average, 53% of
delta alarms as more likely to be false positives than the others.
What Is an AI Engineer? An Empirical Analysis of Job Ads in The NetherlandsAlexander Serebrenik
Recently, the job market for Artificial Intelligence (AI) engineers
has exploded. Since the role of AI engineer is relatively new, limited
research has been done on the requirements as set by the industry.
Moreover, the definition of an AI engineer is less established than
for a data scientist or a software engineer. In this study we explore,
based on job ads, the requirements from the job market for the
position of AI engineer in The Netherlands. We retrieved job ad
data between April 2018 and April 2021 from a large job ad database,
Jobfeed from TextKernel. The job ads were selected with a process
similar to the selection of primary studies in a literature review. We
characterize the 367 resulting job ads based on meta-data such as
publication date, industry/sector, educational background and job
titles. To answer our research questions we have further coded 125
job ads manually.
The job tasks of AI engineers are concentrated in five categories:
business understanding, data engineering, modeling, software development and operations engineering. Companies ask for AI engineers with different profiles: 1) data science engineer with focus
on modeling, 2) AI software engineer with focus on software development, 3) generalist AI engineer with focus on both models
and software. Furthermore, we present the tools and technologies
mentioned in the selected job ads, and the soft skills.
Our research helps to understand the expectations companies
have for professionals building AI-enabled systems. Understanding
these expectations is crucial both for prospective AI engineers and
educational institutions in charge of training those prospective
engineers. Our research also helps to better define the profession of
AI engineering. We do this by proposing an extended AI engineering life-cycle that includes a business understanding phase.
Joint work with Marcel Meesters and Petra Heck.
Community smells are patterns indicating suboptimal organization and communication of software development teams that have been shown to be related to suboptimal organisation of the source code. Given a long standing association of women and communication mediation, we have conducted a series of studies relating gender diversity to community smells, as well as comparing the results of the data analysis with developers' perception. To get further insights in the relation bwteen gender and community smells, we replicate our study focusing on the Brazilian software teams; indeed, culture-specific expectations on the behavior of people of different genders might have affected the perception of the importance of gender diversity and refactoring strategies when mitigating community smells. Finally, we extend the prediction model by including variables related to national diversity and see how the interplay between national diversity and gender diversity influences presence of community smells.
This talk is based on a series of papers published in 2019-2022 and co-authored with Gemma Catolino, Filomena Ferrucci, Stefano Lambiase, Tiago Massoni, Fabio Palomba, Camila Sarmento, and Damian Andrew Tamburri.
Overview of a series of papers published in 2019-2021 on community smells, and their relation to code smells and gender, as well as resolution strategies.
Women in Dutch Computer Science: Best Practices for Recruitment, Onboarding a...Alexander Serebrenik
Women are underrepresented at all levels in computer science (CS) faculties of Dutch
universities. In this report we focus on experiences related to hiring and promoting women as assistant, associate and full professors (or equivalent at NWO-I CWI).
In 2003 Dave et al. have coined the term “opinion mining” to refer to “processing a set of search results for a given item, generating a list of product attributes (quality, features, etc.) and aggregating opinions about each of them (poor, mixed, good)”. Nine years later, in 2012 Brooks and Swigger have applied sentiment analysis in the context of software engineering. Today another nine years have passed and it is time to look back: what have we achieved as a research community and where should we go next?
To answer this question we conducted a systematic literature review involving 185 papers. Based on the literature review we present 1) well-defined categories of opinion mining-related software development activities, 2) available opinion mining approaches, whether they are evaluated when adopted in other studies, and how their performance is compared, 3) available datasets for performance evaluation and tool customization, and 4) concerns or limitations SE researchers might need to take into account when applying/customizing these opinion mining techniques. The results of our study serve as references to choose suitable opinion mining tools for SE tasks, and provide critical insights for the further development of opinion mining techniques in the SE domain.
This work has been done together with Bin Lin, Gabriele Bavota and Michele Lanza from Università della Svizzera italiana, Switzerland, Nathan Cassee from Eindhoven University of Technology, The Netherlands and Nicole Novielli from University of Bari, Italy.
In this talk I will present results obtained on removing self-admitted technical debt. Self-admitted technical debt is an indication in the source code, usually n the source code comments, that the code is not in the right shape yet. Joint work with Emad Shihab, Everton Maldonado, Rabe Abdelkareem, Fiorella Zampetti, Massimiliano Di Penta and Gianmarco Fucci.
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxR&R Consult
CFD analysis is incredibly effective at solving mysteries and improving the performance of complex systems!
Here's a great example: At a large natural gas-fired power plant, where they use waste heat to generate steam and energy, they were puzzled that their boiler wasn't producing as much steam as expected.
R&R and Tetra Engineering Group Inc. were asked to solve the issue with reduced steam production.
An inspection had shown that a significant amount of hot flue gas was bypassing the boiler tubes, where the heat was supposed to be transferred.
R&R Consult conducted a CFD analysis, which revealed that 6.3% of the flue gas was bypassing the boiler tubes without transferring heat. The analysis also showed that the flue gas was instead being directed along the sides of the boiler and between the modules that were supposed to capture the heat. This was the cause of the reduced performance.
Based on our results, Tetra Engineering installed covering plates to reduce the bypass flow. This improved the boiler's performance and increased electricity production.
It is always satisfying when we can help solve complex challenges like this. Do your systems also need a check-up or optimization? Give us a call!
Work done in cooperation with James Malloy and David Moelling from Tetra Engineering.
More examples of our work https://www.r-r-consult.dk/en/cases-en/
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Dr.Costas Sachpazis
Terzaghi's soil bearing capacity theory, developed by Karl Terzaghi, is a fundamental principle in geotechnical engineering used to determine the bearing capacity of shallow foundations. This theory provides a method to calculate the ultimate bearing capacity of soil, which is the maximum load per unit area that the soil can support without undergoing shear failure. The Calculation HTML Code included.
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdffxintegritypublishin
Advancements in technology unveil a myriad of electrical and electronic breakthroughs geared towards efficiently harnessing limited resources to meet human energy demands. The optimization of hybrid solar PV panels and pumped hydro energy supply systems plays a pivotal role in utilizing natural resources effectively. This initiative not only benefits humanity but also fosters environmental sustainability. The study investigated the design optimization of these hybrid systems, focusing on understanding solar radiation patterns, identifying geographical influences on solar radiation, formulating a mathematical model for system optimization, and determining the optimal configuration of PV panels and pumped hydro storage. Through a comparative analysis approach and eight weeks of data collection, the study addressed key research questions related to solar radiation patterns and optimal system design. The findings highlighted regions with heightened solar radiation levels, showcasing substantial potential for power generation and emphasizing the system's efficiency. Optimizing system design significantly boosted power generation, promoted renewable energy utilization, and enhanced energy storage capacity. The study underscored the benefits of optimizing hybrid solar PV panels and pumped hydro energy supply systems for sustainable energy usage. Optimizing the design of solar PV panels and pumped hydro energy supply systems as examined across diverse climatic conditions in a developing country, not only enhances power generation but also improves the integration of renewable energy sources and boosts energy storage capacities, particularly beneficial for less economically prosperous regions. Additionally, the study provides valuable insights for advancing energy research in economically viable areas. Recommendations included conducting site-specific assessments, utilizing advanced modeling tools, implementing regular maintenance protocols, and enhancing communication among system components.
Immunizing Image Classifiers Against Localized Adversary Attacksgerogepatton
This paper addresses the vulnerability of deep learning models, particularly convolutional neural networks
(CNN)s, to adversarial attacks and presents a proactive training technique designed to counter them. We
introduce a novel volumization algorithm, which transforms 2D images into 3D volumetric representations.
When combined with 3D convolution and deep curriculum learning optimization (CLO), itsignificantly improves
the immunity of models against localized universal attacks by up to 40%. We evaluate our proposed approach
using contemporary CNN architectures and the modified Canadian Institute for Advanced Research (CIFAR-10
and CIFAR-100) and ImageNet Large Scale Visual Recognition Challenge (ILSVRC12) datasets, showcasing
accuracy improvements over previous techniques. The results indicate that the combination of the volumetric
input and curriculum learning holds significant promise for mitigating adversarial attacks without necessitating
adversary training.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
About
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Technical Specifications
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
Key Features
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface
• Compatible with MAFI CCR system
• Copatiable with IDM8000 CCR
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
Application
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
5. Motivation
• Previous study (Survival of ETPs – ICSM 2012), we
tested compatibility of 345 ETP-APIs and 288 ETP-non-
APIs with different Eclipse releases.
• Our observations:
1. ETP-APIs always compatible in new Eclipse releases.
2. Bad interfaces are the main cause of incompatibilities.
3. Informally, found old bad interfaces stable.
• Formally verified observation 2.
• Trained prediction models
• Tested the prediction models.
Software Engineering and Technology (SET) PAGE 49-6-2014
6. Motivation
• Previous study (Survival of ETPs – ICSM 2012), we
tested compatibility of 345 ETP-APIs and 288 ETP-non-
APIs with different Eclipse releases.
• Our observations:
1. ETP-APIs always compatible in new Eclipse releases.
2. Bad interfaces are the main cause of incompatibilities.
3. Informally, found old bad interfaces stable.
• Formally verified observation 2.
• Trained prediction models
• Tested the prediction models.
Software Engineering and Technology (SET) PAGE 59-6-2014
7. Compatibility prediction
• Requirements of compatibility
prediction:
− Current SDK compatible with ETP
− Later SDK to make prediction
• We built 36 prediction models in total
• Models are bases on bad interfaces
used by ETPs
Software Engineering and Technology (SET) PAGE 79-6-2014
10. Model Training Example
In put
P1 P2 P3
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
24-09-2012 10
11. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1 P2 P3
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
24-09-2012 11
12. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1 P2 P3
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 12
13. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1
15
P2
4
P3
8
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 13
14. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1
15
P2
4
P3
8
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 14
15. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1
15
P2
4
P3
8
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 15
Dependent variable
Independent variables
16. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1
15
P2
4
P3
8
Logistic
Regression
Machine
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 16
Dependent variable
Independent variables
17. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1
15
P2
4
P3
8
Logistic
Regression
Out put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
𝑏2𝑏1 𝑏3 𝑏4
Machine
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 17
Dependent variable
Independent variables
18. Model Training Example
In put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P1
15
P2
4
P3
8
Logistic
Regression
Out put
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
𝑏2𝑏1 𝑏3 𝑏4
Machine
𝑷 𝑋 = 1/(1 + 𝑒−𝒛
)
𝒛 = 𝑏0 + 𝑏1 ∗ 𝑺𝑫𝑲1.0 + 𝑏4 ∗ 𝑺𝑫𝑲3.0
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
1 0 0
24-09-2012 18
Dependent variable
Independent variables
19. Model Training Example
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P4
20
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
24-09-2012 19
20. Model Training Example
1.
0
1.0 2.0 2.1 3.0
Eclipse 3.0 non-APIs
P4
20
ETPs supported in Eclipse 3.0 – Prediction in Eclipse X, where X > 3.0
24-09-2012 20
𝑷 𝑋 = 1/(1 + 𝑒−𝒛)
𝒛 = 𝑏0 + 𝑏1 ∗ 8 + 𝑏4 ∗ 5
𝑷 𝑋 <0.5 – incompatibility
𝑷 𝑋 >=0.5 – compatibility
21. Results
• In both model training and testing: High
Precision, Accuracy, and Recall, where
some were 80% and more
24-09-2012 21
Model Testing Error Analysis
3.5 3.6 3.7
A P R A P R A P R
3.4 94 100 94 93 100 93 93 100 93
3.5 91 94 96 88 91 96
22. Conclusion and Future Work
• Mining interface usage from ETPs
to detect or predict compatibility
shows good results.
• Next, develop a domain specific
tool to make predictions.
• Who can use the tool? users and
developers of ETPs
•
Software Engineering and Technology (SET) PAGE 229-6-2014
23. Thank you for listening
Software Engineering and Technology (SET) PAGE 239-6-2014
Editor's Notes
Technical support from framework developers, ease of maintenance, and