-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtitlefa.tex
209 lines (183 loc) · 16.9 KB
/
titlefa.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
% !TeX root=_main_.tex
% Farsi Title
% Persian absteract and other info
% در این فایل، عنوان پایاننامه، مشخصات خود، متن تقدیمی، ستایش، سپاسگزاری و چکیده پایاننامه را به فارسی، وارد کنید.
% توجه داشته باشید که جدول حاوی مشخصات پروژه/پایاننامه/رساله و همچنین، مشخصات داخل آن، به طور خودکار، درج میشود.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% دانشگاه خود را وارد کنید
\university{علم و صنعت ایران}
% دانشکده، آموزشکده و یا پژوهشکده خود را وارد کنید
\faculty{دانشکده مهندسی کامپیوتر}
% گروه آموزشی خود را وارد کنید
\department{گروه نرمافزار}
% گروه آموزشی خود را وارد کنید
\subject{مهندسی کامپیوتر}
% گرایش خود را وارد کنید
\field{نرمافزار}
% عنوان پایاننامه را وارد کنید
\title{تولید خودکار داده آزمون در فازرهای قالب فایل}
% نام استاد(ان) راهنما را وارد کنید
\firstsupervisor{دکتر سعید پارسا}
%\secondsupervisor{استاد راهنمای دوم}
% نام استاد(دان) مشاور را وارد کنید. چنانچه استاد مشاور ندارید، دستور پایین را غیرفعال کنید.
%\firstadvisor{استاد مشاور اول}
%\secondadvisor{استاد مشاور دوم}
% نام دانشجو را وارد کنید
\name{مرتضی}
% نام خانوادگی دانشجو را وارد کنید
\surname{ذاکری نصرآبادی}
% شماره دانشجویی دانشجو را وارد کنید
\studentID{95723088}
% تاریخ پایاننامه را وارد کنید
\thesisdate{شهریور 97}
% به صورت پیشفرض برای پایاننامههای کارشناسی تا دکترا به ترتیب از عبارات «پروژه»، «پایاننامه» و »رساله» استفاده میشود؛ اگر نمیپسندید هر عنوانی را که مایلید در دستور زیر قرار داده و آنرا از حالت توضیح خارج کنید.
\projectLabel{پایاننامه}
% به صورت پیشفرض برای عناوین مقاطع تحصیلی کارشناسی تا دکترا به ترتیب از عبارات «کارشناسی»، «کارشناسی ارشد» و »دکترا» استفاده میشود؛ اگر نمیپسندید هر عنوانی را که مایلید در دستور زیر قرار داده و آنرا از حالت توضیح خارج کنید.
%\degree{}
\firstPage
\besmPage
\davaranPage
%\vspace{.5cm}
% در این قسمت اسامی اساتید راهنما، مشاور و داور باید به صورت دستی وارد شوند
%\renewcommand{\arraystretch}{1.2}
\begin{center}
%\begin{table}[h]
\begin{tabularx}{1\linewidth}{|c|c|c|c|c|c|}
\hline
ردیف & سمت & نام و نامخانوادگی & مرتبه دانشگاهی & دانـشگاه / مؤسـسه &
امـضــــا \hspace{5mm} \\
\hline
1 &
\makecell[c]{استاد \\ راهنمای اول} &
\makecell[c]{دکتر \\ سعید پارسا} &
دانشیـار &
\makecell[c]{دانشگاه \\ علم و صنعت ایران} &
\hspace{30mm}\\
\hline
2 &
\makecell[c]{استاد \\ راهنمای دوم} &
\makecell[c]{-} &
- &
\makecell[c]{-} &
\\
\hline
3 &
\makecell[c]{استاد \\ مشاور } &
\makecell[c]{-} &
- &
\makecell[c]{-} &
\\
\hline
4 &
\makecell[c]{استاد \\ مدعو داخلی} &
\makecell[c]{دکتر \\ محمد عبداللهی ازگمی} &
دانشیـار &
\makecell[c]{دانشگاه \\ علم و صنعت ایران} &
\\
\hline
5 &
\makecell[c]{استاد \\ مدعو خارجی} &
\makecell[c]{دکتر \\ مجتبی وحیدیاصل} &
استادیار &
\makecell[c]{دانشگاه \\ شهید بهشتی} &
\\
\hline
\end{tabularx}
%\end{table}
\end{center}
\esalatPage
\mojavezPage
% -- چنانچه مایل به چاپ صفحات «تقدیم»، «نیایش» و «سپاسگزاری» در خروجی نیستید، خطهای زیر را با گذاشتن ٪ در ابتدای آنها غیرفعال کنید.
% -- پایاننامه خود را تقدیم کنید!
\newpage
\thispagestyle{empty}
%\watermark{مرتضی}
\centerline{\Large \titlefont تقـــدیم }
\begin{center}
%محل قرار گرفتن متن قـدرانی و تقدیم در نــسخه نهایی پایاننامه.
%\begin{comment}
{\LARGE
\vspace{12mm}
بـه دوستی که\\
\vspace{5mm}
میاندیشد،\\
میجوید،\\
مییابد\\
و\\
\vspace{6mm}
{\Huge تغییر میدهد :)\\}
}
%\end{comment}
\end{center}
% -- متن سپاسگزاری
\begin{acknowledgementpage}
%\textbf{خوش آمدید!}
%نسخه پیشرو یک نسخه پیشنویس و غیرنهایی از پایاننامه، صرفاً جهت اهداف داوری بـــوده و غیـر قابل اســـتـنــاد است. برای تسهیل در امر داوری طرح پیشنهادی و کد پروژه در ادامه درج شده است. همچنین در قسمت مراجع، برای هر مرجع شماره صفحاتی که به آن ارجاع داده شده نیز پیوند شده است. این بخشها در نسخه نهایی حذف میگردد. \\
%- مشاهده و دریافت طرح پیشنهادی پایاننامه (مصوب 11 آذر 1396):
%\begin{center}
% \href{https://www.dropbox.com/s/bw7bztobm8qr232/zakeri-msc-proposal-960911.pdf?dl=0}{دریــافت}
%\end{center}
% - مشاهده و دریافت کد نهایی پایاننامه:
%\begin{center}
%\href{https://github.com/m-zakeri/iust_deep_fuzz}{دریــافت}
%\end{center}
%- اطلاعات تماس:
%\begin{center}
% \href{mailto:[email protected]}{\texttt{\lr{[email protected]}}}\\
% $0913-680-9110$\\
% $\blacksquare\blacksquare\blacksquare\blacksquare\blacksquare$\\
%نـــسخه چاپی%
%\end{center}
\noindent
%{\LARGE %افرادی }در دوره مهیج و کوتاه کارشناسی ارشد و در روند پژوهش و نگارش این پایاننامه به بنده کمک کردهاند که برخود لازم میدارم از زحمات ایشان سپاسگزاری نمایم. در ابتدا از اسـتاد دانشمند و فرهیخته آقای دکتر سعید پارسا که راهنمایی اینجانب را بر عهده داشتند صمیمانه قدردانی میکنم. بدون وجود حمایتها و راهنماییهای ارزنده ایشان انجام این پایاننامه محقق نمیگردید.
%از داوران محترم پایاننامه آقایان دکتر محمد عبداللّهی ازگمی و دکتر مجتبی وحیـدیاصل که با مطالعه و نقد سازنده خود، اسباب بهبود علمی و رفع نواقص این کار پژوهشی را فراهم نمودند، کمال تشکر را دارم.
%از دوستان عزیزم آقایان مهندس علی صابری و مهندس علی طاهری در آزمایشگاه رسانه دیجیتال دانشگاه صنعتی شریف، بابت انتقال مفاهیم اولیه یادگیری ژرف ممنون و متشکر هستم و نیز از دوست گرامی آقای مهندس عرفان شـرفزاده در آزمایشگاه سیستمهای توزیع شده دانشکده، بابت پشتیبانی امور مربوط به پردازش ابری و ماشینهای مجازی تشــکر میکنم.
%از آقای دکتر کارپتی برای وبلاگ ارزشمند و مفید خود در زمینه یادگیری ژرف و نیز از دوستانم در آزمایشگاه مهندسی معــکوس دانشگاه علم و صنعت ایران برای ارائه دیدگاههای مفیدشان سپاسگزارم.
%از همکلاســیهای خوب و مهربانم در دوره کارشناسی ارشـد که همواره مشوق بنده بودند و لحظههای تکرار نشدنی را کنــار ایشان تجربه کردم، بینهایت ممنون هستم.
%همچنین از دیگر اساتید بزرگوارم در طول دوره کارشناسی ارشد از جمله آقایان دکتر محسن شریفی، دکتر بهروز مینایی و دکتر مهرداد آشتیانی (مدیر مرکز پردازش ابری دانشکده کامپیوتر) کمال تشکر و امتنان را دارم.
%مهمتر از همه در پایان از خانواده عزیزم، پـدر و مـادرم بابت حمایتهای بیدریغ و همیشگیشان در همـه مراحل زندگیم، مهربانانه سپاسگزاری کرده، دست ایشان را میبوسم.
{\LARGE افرادی}
در دوره مهیج و کوتاه کارشناسی ارشد و در روند پژوهش و نگارش این پایاننامه به بنده کمک کردهاند که برخود لازم میدارم از زحمات ایشان سپاسگزاری نمایم. در ابتدا از اسـتاد دانشمند و فرهیخته، آقای دکتر سعید پارسا که راهنمایی اینجانب را برعهده داشتند، صمیمانه قدردانی میکنم. بدون وجود حمایتها و راهنماییهای ارزنده ایشان انجام این پایاننامه محقق نمیگردید.
از داوران محترم پایاننامه آقایان دکتر محمد عبداللّهی ازگمی و دکتر مجتبی وحیـدیاصل که با مطالعه و نقد سازنده خود، اسباب بهبود علمی و رفع نواقص این کار پژوهشی را فراهم نمودند، کمال تشکر را دارم.
از همراهیها و دلسوزیهای همیشگی دو دوست و همآزمایشگاهی بسیار عزیزم، آقای مهندس محسن امیریان و آقای مهندس سعید امیری، که بیش از 6 سال با ایشان همکلاسی بودم، بیاندازه سپاسگزار هستم.
از همکلاســـیهای بامعرفت و مهربانم در این دوره که همواره حامی و مشوّق بنده بودهاند، لحظههای تکرار نشدنی را کنــار ایشان تجربه کردهام و متأسفانه مجال نامبردن از آنها را در این متن کوتاه ندارم، بینهایت ممنون هستم. آشنایی با این عزیزان را دستاوردی ارزشمند در زندگی خود میدانم و برایشان بهترینها را آرزومــندم.
از دوستان گرامی، آقایان مهندس علی صابری و مهندس علی طاهری در آزمایشگاه رسانه دیجیتال دانشگاه صنعتی شریف، بابت انتقال مفاهیم اولیه یادگیری ژرف و آقای مهندس عرفان شـرفزاده در آزمایشگاه سیستمهای توزیع شده دانشکده مهندسی کامپیوتر، بابت پشتیبانی امور مربوط به پردازش ابری و ماشینهای مجازی، تشکر میکنم.
از آقای دکتر کارپتی برای وبلاگ و آموزشهای مفید خود در زمینه یادگیری ژرف سپاسگزارم.
از دیگر اساتید بزرگوارم در طول دوره کارشناسی ارشد از جمله آقایان دکتر محسن شریفی، دکتر بهروز مینایی و دکتر مهرداد آشتیانی (مدیر مرکز پردازش ابری دانشکده مهندسی کامپیوتر)، ممنون هستم.
مهمتر از همه در پایان از خانواده عزیزم، بهخصوص پـدر و مـادرم بابت حمایتهای بیدریغ و همیشگیشان در همـه مراحل زندگیم، مهربانانه سپاسگزاری کرده، دست ایشان را میبوسم.
% با استفاده از دستور زیر، امضای شما، به طور خودکار، درج میشود.
\signature
\end{acknowledgementpage}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% کلمات کلیدی پایاننامه را وارد کنید
\keywords{آزمون فازی، داده آزمون، پوشش کد، یادگیری ژرف، شبکه عصبی مکرر.}
%چکیده پایاننامه را وارد کنید، برای ایجاد پاراگراف جدید از \\ استفاده کنید. اگر خط خالی دشته باشید، خطا خواهید گرفت.
%\begin{center}
% \textbf{تولید خودکار داده آزمون در فازرهای قالب فایل}
%\end{center}
\hypertarget{abstractfa}{\fa-abstract{
آزمون فازی (فازینگ) یک فن آزمون پویای نرمافزار است. در این فن با تولید و تزریق مکرر دادههای آزمون بدشکل به نرمافزار تحت آزمون
(\lr{SUT})،
بهدنبال یافتن خطاها و آسیبپذیریهای احتمالی موجود در آن هستیم. برای نیل به این هدف، آزمون فازی نیازمند دادههای آزمون متنوع است.
مشکل اساسی، پیچیده بودن ساختار ورودی برنامههایی است که فایل را بهعنوان ورودی میپذیرند. بررسیها نشان میدهد بسیاری از دادههای آزمون تولیدی در این موارد، مسیرهای محدود و سطحی را میپیمایند؛ زیرا در همان مراحل اولیه بهعلت بدشکل، بودن توسط تجزیهگرِ \lr{SUT} رد میشوند. استفاده از ساختار گرامری فایلها برای تولید دادهها، منجربه افزایش پوشش کد میشود؛ اما، استخراج گرامر برای ساختار فایل، اغلب، دستی صورت میپذیرد که مستلزم صرف هزینه و زمان زیاد و مستعد خطای فراوان است.
%\\
در این پایاننامه، روشی خودکار برای تولید داده آزمون بهصورت ترکیبی ارائه میدهیم. در روش خود، از مدلهای زبانی عصبی (\lr{NLMs}) که با شبکههای عصبی مکرر (\lr{RNNs}) ساخته میشوند، استفاده میکنیم. مدلهای پیشنهادی با فنون یادگیری ژرف، قادر به یادگیری آماری ساختار فایلهای پیچیده و سپس تولید دادههای جدید متنی، بهصورت مبتنی بر گرامر و دادههای دودویی بهصورت مبتنی بر جابهجایی، هستند. فاز (بدشکلسازی) دادههای آزمون، نیز توسط دو الگوریتم فاز جدید، تحت عنوان الگوریتمهای فاز عصبی، که از این مدلها استفاده میکنند، صورت میپذیرد.
%بد شکل سازی دادههای تولید شده نیز توسط الگوریتمهایی که از این مدلها استفاده میکنند صورت میپذیرد.
%\\
از روش پیشنهادی خود، برای تولید داده و سپس آزمون فازی نرمافزار پیچیده \lr{MuPDF} که فایلهای قالبِ سندِ حملپذیر
(\lr{PDF})
را بهعنوان ورودی میپذیرد، استفاده نمودیم. برای آموزش مدلهای مولد، یک پیکره بزرگ از فایلهای
\lr{PDF}
را گردآوری کردیم.
آزمایشهای ما نشان میدهد که دادههای تولید شده با این روش، منجربه افزایش میزان پوشش کد اجرایی
\lr{SUT}
و بهبود بیش از
$7$
درصدی آن، در مقایسه با فازرهای قالب فایل مشهور، مثل \lr{AFL}، میشود. آزمایشها همچنین، بیانگر دقت یادگیری بهترِ
\lr{NLM}های
سادهتر در قیاس با مدل پیچیدهتر کدگذار-کدگشا و نیز شکست این مدل، در میزان پوشش کد \lr{SUT}، حین آزمون فازی، هستند.
%ما همچنین مشاهده کردیم که مدلهای زبانی عصبی ساده مدلهای پیچیدهتر مانند مدل کد-گذار کدگشا را در معیارهای دقت، سرگشتگی و نهایتاً پوشش کد شکست دادند.
\\
}}\label{abstractfa2}
\abstractPage
\newpage\clearpage