ENG 302 Arizona State University Sample Proposals Questions Please read over the three samples in the appropriate folder. Please critique them based on the
ENG 302 Arizona State University Sample Proposals Questions Please read over the three samples in the appropriate folder. Please critique them based on the following questions:
1. Is the introduction clear? Do you know what the person is going to do with the grant?
2. Is the background research thorough? Does the researcher demonstrate good knowledge of the field? Does the background lead into the researcher’s project, i.e. the unique take on the topic?
3. is the methodology clear and detailed? Does the author mention courses s/he will take? Museums/archives etc? Does the author have an adviser to work with?
4. Does the author provide results both personally and professionally? What will the researcher contribute to his or her field?
5. If you were on the committee to award fellowships, would you accept of reject the proposal and why? Rudnicki – sample proposals
Rudnicki Sample Proposals
Sample #1 …………………………………………………………………………….2
Sample #2 …………………………………………………………………………….13
Sample #3 …………………………………………………………………………….22
1
Rudnicki – sample proposals
Sample Proposal #1
Explanation of Patterns with interactive Autocomplete Proposal
I.
Introduction – Statement of the problem
Intelligent systems are used to help developers when it comes to coding by identifying
patterns and provide recommendations. These recommendations are provided to the user as autocomplete options while the user is typing. They help the user to be more productive, by working
faster, committing fewer misspelling mistakes, and keeping consistency throughout the file of
certain data types. The problem with some of these intelligent systems is that they are much of a
black box to the user, therefore, even if the system is detecting some patterns and providing autocomplete options based on them, the user only gets the result. The user has little to no
understanding of how these predictions are made and the user also has no say on how these
systems work depending on the user different needs. Another situation in which is difficult for
developers to identify patterns is when working with an existing file, especially those written by
other people or files that lack documentation. The user is unfamiliar with the code in general and
might have more difficulties finding some patterns to keep the code consistent. I will be working
on a visual and interactive intelligent model applied to an HTML editor. This editor in addition
to using machine learning to provide the user with code-completion recommendations, it will
provide with a visual explanation of the patterns used to compute the recommendations. The
editor will also be interactive, in which the user will be able decide how the tool works and what
features it uses, as well to provide some feedback on the recommendations being made.
I will work on this project along my former mentor, Dr. LaToza, and a small group of
other undergraduate students during the next summer and fall semester. I will take some classes
that will help me on topics such as artificial intelligence and software engineering. I will work
primarily on the development of the system as well as continuing researching similar projects.
During the developing phase I will conduct a few pilot studies and at the end, I will proceed to
do a more formal testing of the new tool as well as a bigger user study to evaluate the
performance.
I actually started this project last summer with along with my mentor, and two other
students. Some of the preliminary information was given to us, but we started the project from
scratch. The current version of the tool is still on the early stages and it is far from being release
to the public. Last summer I was working primarily on the code for this tool, therefore, I know
its current state and how it works. I am knowledgeable of its strengths, the features that need
improvement, and the features that are yet to be added. With the guidance of my mentor, and
taking some advance classes on different topics, I am sure we will have a finalized tool that has
been proved to help HTML developers.
II.
Review of the literature/ Background
The main topics used on this project are machine learning algorithms and user-machine
interactions to give the user an explanation of code patterns while helping them be more
productive. There have been past projects that that use machine learning and user interfaces to
improve the user’s productivity, and past projects using machine learning to provide the user
2
Rudnicki – sample proposals
with certain information as wgeoas explain below. The goal with my new project is to combine
these concepts for one specific application.
There are multiple machine learning algorithms out there, but the one currently used in
the system is one called Decision Tree. A Decision Tree is a type of prediction algorithm (also
called classifier). As explained in Shai Shalev-Shwartz and Shai Ben-David’s book,
Understanding Machine Learning, in the Decision Tree algorithm, a classification of an object is
decided by starting at the root node of a tree, going through the different branches based on the
features of the object until a leaf of the tree is reached, which returns then the classification [7].
Before the algorithm is able to make any classification, the tree needs to be built, this is done
with a training data set. The Decision Tree is built by separating the data recursively, in a way
that each time it is separated, the data becomes “purer” each time [7]. In the article Decision
trees: a recent overview, the author, S.B. Kotsiantis, explains the different ways to measure the
purity of data, such as “Information gain”, “Gain ratio”, and “Gini value” [1]. In his article, the
author also argues that one of the main advantages of using Decision Trees is that besides being
quite effective, they are also easy to explain to the average person [1]. Which makes it
appropriate to be used in this project in which the HTML editor would have to provide the user
with a concise yet effective explanation of the way the results were calculated. Besides having
the algorithm work for the intelligent auto-complete, the editor needs a way to let the user know
of the results and be able to obtain the user’s feedback in an efficient way. This is where User
Interaction comes into play.
Even though user interfaces are helpful to facilitate the user-machine interaction
component of any system, these User Interfaces need to adhere to certain criteria to actually be
effective and helpful to the user. Eric Horvitz, a researcher at Microsoft, has an article called
Principles of Mixed-Initiative User Interfaces, in which he explains each principle that User
Interfaces need to follow. Some examples are that interfaces are only to provide valuable
information, be actively learning, and letting the user have a say of how these interactions are
performed, ask the user for feedback in order to perform better, etcetera [2]. In his paper, Besides
Introducing these principles, the author also introduces a new calendar scheduling tool called
LookOut. It uses it as an example in which each principle mentioned earlier in his paper is
applied to a user-interactive tool. LookOut is a scheduling tool that parses each message that the
user receives or sends and based on certain keywords and expressions, it tries to find events or
meetings for which it makes an appointment and adds it to the user’s calendar [2]. This tool is
able to ask the user if an event should be added to the calendar, it also asks the user if more
information is needed. Other features include having audio recognition so it can be hands-free
interaction, and the user is able to turn on and off all the feature to his preferences. The author
claims that this tool if effective because each feature of the LookOut tool follows one or multiple
principles of the User-Interfaces [2].
These principles are not only just to make the tool more effective, but also to meet the
user’s expectations and needs. My former mentor, Dr. Thomas LaToza was part of another
similar project with other faculty members and students called Active Code Completion [4]. In
their paper they introduce this new tool, called Grpahite, that helps library developers with
interactive interfaces referred as “palettes” which provides the users with code completion. This
tool was designed to work in the Eclipse development environment for the Java language, and
most of the decisions regarding the interface and its features were based on a previous survey
3
Rudnicki – sample proposals
[4]. Before even starting the Graphite tool, Dr. LaToza and other team members performed a
survey performed on Computer Science graduate students. In this survey the participants
explained their preferences for code-completion interfaces and suggestions they had for an
effective user-interactive interface embedded in an IDE. Even though the applications are
different, the expectations and suggestions are similar to the principles mention above. The
participants explained that the interface would require to keep the information concise and
separate the issues, and have multiple feature to help the user, but let the user decide which
features to use [4]. An additional interesting result in the surveys was that the most suggested
features for code completion interfaces was including some type of graphical or visual element
[4]. Visual elements can be considered for this project, since it would help the user understand
some patterns if presented with a simplified representation of the Decision Tree used for the
auto-complete.
An additional, yet very important feature that the User Interface in this new project needs
to have is to take feedback from the user on the auto-complete recommendations, in a way so
that in the future, the tool will provide more accurate recommendations. A similar project with
the same feature was introduced by Jerry Alan Fails and Dan R. Olsen, Jr. in their project called
Interactive Machine Learning. In their paper they explain the problem with some interactive
interfaces that use machine learning algorithms. The problem is that the user interaction happens
only after the classifier is already built, and the user’s feedback has no effect on future
classifications. They introduce this new model in which a new and improved classifier is built
each time the system gets some feedback from the user [3]. Their model is applied to a new
application called “Crayons” for image processing. In this application, the system is able to build
an original classifier, thus the application works at the beginning without needing feedback from
the user. It is also able to accept any new information, such as user’s feedback, and use that
knowledge on top of the old information to create a new more accurate classifier [3]. In my
project I want the user to have interaction with the tool in a similar way the “Crayons”
application has with the user, in which besides explaining the patterns to the user and how code
completions are made, the users are also able to make changes to it as they wish in order to
accommodate their specific needs.
The main goal for this new project I’m proposing is to help HTML developers by helping
them find and analyze patterns in an easy and effective way through explaining in a simple way
how the machine learning algorithm works in the system. They most similar project out there to
the one I am pursuing is a project called Principles of Explanatory Debugging to Personalize
Interactive Machine Learning by Kulesza and Burnett. In their paper they talk about how users
can modify the way machine learning algorithms make predictions by explaining them how it
works [6]. They introduce this new model called “Explanatory Debugging” applied to a tool that
creates a user interface with visual and graphical elements that explain how the machine learning
system work, while taking feedback from the user [6]. In their study, they did some tests
comparing the use of traditional machine learning and their new interactive model and saw an
increase on the user understanding on the system using machine learning algorithms by more
than %50 [6]. Besides showing promising results, the authors also explain some of the principles
that their model follows, such as having user’s feedback as a priority, be effective yet not
overwhelming to the user [6]. Some of these principles are similar to the information is provided
to the user and they are similar to the principles already talked about in the sources above. Like
4
Rudnicki – sample proposals
this Explanatory Debugging project, my project can have a similar feel, when it comes to putting
these ideas together.
The way that my project will be different and unique is that it will combine all these ideas
of user interaction, machine learning using feedback, and giving information to help the user into
one single HTML editor. Similar to the Explanatory debugging, my new tool will use machine
learning and taking feedback from the user to provide accurate recommendations for codecompletion. But the explanation of the algorithm and prediction is what will be different. My
tool will not explain how the machine learning algorithm works just for the user to have better
understanding of it. My tool will explain the user how the algorithm and the data was used to
create a code auto-complete to provide the user with better understanding of the patterns found it
his code. All these, while providing the users with more accurate code completions, helping the,
be more efficient in their programming task.
Explanation of Patterns with Interactive Autocomplete Proposal (Part 2)
Methodology
This way I will have the opportunity to work with faculty members who already know
the current state of the project, I will be able to take some related Computer Science and
Software Engineering courses at the University, and be close to Washington, DC at which I will
be able to attend conferences throughout the year.
I will be working on the Interactive HTML auto-complete project, but I will spend more
time taking a few courses that will help me get more knowledge in the areas and topics related to
my project. I will be taking CS 480 which is an introductory course to Artificial Intelligence.
Machine Learning is only a branch of Artificial Intelligence, but this course will give me an
introduction as well as teach me more the application of these methods into actual real-life
projects. I will be also taking SWE 632 which is a class in user interfaces development. One of
the big parts of my project is the interactive user interface, thus in this course I will learn more in
depth the principles and tools used to have an effective user interface. The last course I will be
taking is SWE 637, which is software testing. For my project in specific there will be two types
of testing, the automated accuracy tests of the auto-complete and user studies for the interactive
interface. This course will be helpful in the first type of testing. It will provide me with the
information necessary to test the tool effectively once it is completed.
With the help of the online library access and my mentor I will be able to have large
collection of articles on similar projects and topics available for me to refer and get more
information. As a student I can access at any time the online library to search for any topic or
project I believe will be relevant and helpful. In addition, my mentor holds a weekly meeting
with all of his mentees from different projects in order to discuss the progress in our projects but
also to read and discuss articles in similar projects. In these meetings I can get insights on the
approach and method used by other students in similar projects, I can also exchange ideas on
how to approach some issues that might arise. These meetings will also be helpful when it comes
to the discussion of different articles. Some articles that contain a very detailed and long
explanation of a project and its method is better understood when it is being discussed by a group
of people. The different students and our my mentor all have different experiences and different
5
Rudnicki – sample proposals
areas of expertise, having a weekly meeting will help everyone in the understanding of different
topics that can be applied to my project.
During the second semester of my research project I will not be taking classes, therefore I
will be focusing on the development and testing of my tool full time. As I have mentioned
before, I worked on this project last year, but the HTML tool is far from being complete. Some
necessary features need to be added and there are some aspects that need to be changed in order
to work more effectively. One of the first things that need to be done is changing the way the
machine learning algorithm uses the training data to make auto-complete recommendations in
order to have more accurate predictions. Specifically, for this HTML editor there are three types
of predictions that need to be done. The current tool gives relatively accurate auto-complete
predictions for two of them, but the way the predictions are produced for the third type needs to
be changed to increase accuracy.
The second thing that needs to be worked on is the user interface. Currently, the editor
has a user interface prototype that contains minimal information for the user on the explanation
of the auto-complete recommendations and the code patterns that led to those recommendations.
I will focus more time working on the development of the user interface since there are multiple
features that this interface needs to provide the user with. Features such as providing the user
with a concise and clear explanation of the code patters, allowing the user to make changes to the
algorithm by diving feedback in the most effective way possible, and having the interface to be
easily navigable for users at different levels of expertise.
The last part of the project will be testing. There will be two types of testing methods,
automated tests for accuracy, and user studies to analyze the effect of the user interface and the
tool in general on actual HTML developers. For the automated tests, I will collect a series of
HTML source code from popular websites, delete some pieces of code and see the accuracy
percentage of the auto-complete top three and top five recommendations without any user
feedback. For the user studies I plan to perform two types of user studies. First, I will perform a
pilot study, which is a user study with a small group of participants, and it is performed before
the tool or application is considered complete. This first pilot study will be done at the time I am
working on the user interface portion of the HTML editor. This way I will be able to obtain some
preliminary opinions and observations that developers might have on the tool and can guide me
in the right direction as I make changes and add features to the user interface. When the HTML
editor is complete, I plan to do a formal user study, in which I will have a control and an
experimental group of participants experienced with HTML development. Both groups will be
presented with a task to complete, but the experimental group will be able to use the new HTML
editor. I will collect results such as time it took to complete the task, the accuracy rate of the
auto-complete recommendations when getting feedback from the participants, and a final survey
in which I will collect the thoughts and opinions on the HTML tool from the participants from
the experimental group.
I chose to do my research project in the DC metro area, the main reason being that I will
be able to work close with my mentor and other students involved. But being in this area has
other advantages and opportunities such as all the academic conferences that happen each year. I
plan to attend computer-human interaction conferences such as the 2019 IEEE Symposiun on
Visual Languages & Human-Centric Computing conference (VL/HCC). I will get an opportunity
6
Rudnicki – sample proposals
to get to know what other professionals in the area are working on and be up to date in the new
advances in Computer Science regarding human interaction.
I hypothesize that the results of this project will be promising. But the work will not be
finished once I am done with testing and user studies. I plan to present my work on conferences
on software engineering and human interaction and submitting an academic article on this
project on academic journals such as the ACM Transactions on Computer-Human Interaction
J…
Purchase answer to see full
attachment
We've got everything to become your favourite writing service
Money back guarantee
Your money is safe. Even if we fail to satisfy your expectations, you can always request a refund and get your money back.
Confidentiality
We don’t share your private information with anyone. What happens on our website stays on our website.
Our service is legit
We provide you with a sample paper on the topic you need, and this kind of academic assistance is perfectly legitimate.
Get a plagiarism-free paper
We check every paper with our plagiarism-detection software, so you get a unique paper written for your particular purposes.
We can help with urgent tasks
Need a paper tomorrow? We can write it even while you’re sleeping. Place an order now and get your paper in 8 hours.
Pay a fair price
Our prices depend on urgency. If you want a cheap essay, place your order in advance. Our prices start from $11 per page.