Size: px
Start display at page:

Download ""

Transcription

1 TechnicalReportRSTR GaryMcGraw,ChristophMichaelandMichaelSchatz GeneratingSoftwareTestDataby Evolution RSTCorporation Suite#250,21515RidgetopCircle Sterling,VA20166 February9,1998 datageneration.thisresearchextendspreviousworkondynamictestdatageneration wheretheproblemoftestdatagenerationisreducedtooneofminimizingafunction[miller andspooner,1976,korel,1990].inourwork,thefunctionisminimizedbyusingoneof Thispaperdiscussestheuseofgeneticalgorithms(GAs)forautomaticsoftwaretest Abstract twogeneticalgorithmsinplaceofthelocalminimizationtechniquesusedinearlierresearch. thisapproachonanumberofprograms,oneofwhichissignicantlylargerthanthosefor ofprogramcomplexityonthetestdatagenerationproblembyexecutingoursystemona WedescribetheimplementationofourGA-basedsystem,andexaminetheeectivenessof whichresultshavepreviouslybeenreportedintheliterature.wealsoexaminetheeect numberofsyntheticprogramsthathavevaryingcomplexities.

2 1 Introduction Animportantaspectofsoftwaretestinginvolvesjudginghowwellaseriesoftestinputstestsapieceof code.usuallythegoalistouncoverasmanyfaultsaspossiblewithapotentsetoftests,sinceatestseries thathasthepotentialtouncovermanyfaultsisobviouslybetterthanonethatcanonlyuncoverafew. Unfortunately,itisalmostimpossibletopredicthowmanyfaultswillbeuncoveredbyagiventestset.This isnotonlybecauseofthediversityofthefaultsthemselves,butbecausetheveryconceptofafaultisonly vaguelydened.testadequacycriteria,meanttodistinguishgoodtestsetsfrombadones,weredeveloped toaddressthisproblem. Onceatestadequacycriterionhasbeenselected,thequestionthatarisesnextishowtogoaboutcreating atestsetthatisgoodwithrespecttothatcriterion.sincethiscanbediculttodobyhand,thereisaneed forautomatictestdatageneration. Inthispaper,weintroduceGADGET(theGeneticAlgorithmDataGEnerationTool),whichusesatest datagenerationparadigmcommonlyknownasdynamictestdatageneration.dynamictestdatageneration wasoriginallyproposedby[millerandspooner,1976]andtheninvestigatedfurtherby[korel,1990],[fergusonandkorel,1996]and[gallagherandnarasimhan,1997].thisparadigmtreatspartsoftheprogramas functionsthatcanbeevaluatedbyexecutingtheprogram,andwhosevalueisminimalforthoseinputsthat satisfytheadequacycriterion.inthisway,theproblemofgeneratingtestdatareducestothewell-understood problemoffunctionminimization. Theapproachusuallyproposedforperformingthisminimizationisgradientdescent,butgradient-descent suersfromsomewell-understoodweaknesses.thusitisappealingtousemoresophisticatedtechniquesfor functionminimization,suchasgeneticsearch[holland,1975],simulatedannealing[kirkpatricketal.,1983], ortabusearch[glover,1989].inthispaper,weinvestigatetheuseofgeneticsearchtogeneratetestcases byfunctionminimization. Inthepast,automatictestdatagenerationschemeshaveusuallybeenappliedtosimpleprograms(e.g., mathematicalfunctions)usingsimpletestadequacycriteria(e.g.,branchcoverage).randomtestgeneration performsadequatelyontheseproblems.nevertheless,itseemsunlikelythatarandomapproachcouldalso performwellonrealistictest-generationproblems,whichoftenrequireanintensivemanualeort.indeed, ourresultssuggestthatrandomtestgenerationperformspoorlyonrealisticprograms.thebroaderimplicationisthatduetotheirsimplicity,toyprogramsfailtoexposethelimitationsofsometest-datageneration techniques.therefore,suchprogramsprovidelimitedutilitywhencomparingdierenttestgenerationmethods.becausegadgetwasdesignedtoworkonlargeprogramswrittenincandc++,itispossiblefor ustoexaminetheaectsofprogramcomplexityonthedicultyoftestdatageneration. Byusinglargerprograms,wealsouncoverapotentiallyimportantdierencebetweendynamictest datagenerationandotherfunctionminimizationproblems.onthelargerprogramswetested,coincidental discoveryoftestinputssatisfyingnewcriteriawasmuchmorecommonthantheirdeliberatedetection.in fact,theabilityoftestdatageneratorstosatisfycoveragecriteriacoincidentallyseemstoplayanimportant roleindeterminingtheireectiveness. Randomtestgenerationdidnotperformwellinourexperiments,althoughonemightexpectittobe goodatdiscoveringthingsbycoincidence.theguidedsearchperformedbygeneticalgorithmsappearsto begoodatsettingupthecoincidentaldiscoveryoftestssatisfyingnewcriteria.thisislikelyduetothefact that,dependingonitstnessfunction,geneticsearchcanbemadetoconcentrateitseortonfruitfulareas oftheinputspace. 2 Testadequacycriteriaandtestdatageneration Empiricalresultsindicatethattestsselectedonthebasisoftestadequacycriteriaaregoodatuncovering faults[horganetal.,1994,chilenskiandmiller,1994,demilloandmathur,1992].furthermore,testadequacy criteriaareobjectivemeasuresbywhichthequalityofsoftwaretestscanbejudged.neitherofthesebenets canberealizedunlessadequatetestdata(i.e.,testdatathatsatisfytheadequacycriteria)canbefound. Manualgenerationofsuchtestscanbequitetime-consuming,soitwouldbeappealingtohavealgorithms thatcanexamineaprogram'sstructureandgenerateadequatetestsautomatically. Unfortunately,testdatagenerationleadstoanundecidableproblem:itisnotpossibletotakeatest adequacycriterionanddeterminewhetheraninputexiststhatsatisesit.tocircumventthisdilemma, {1{

3 amountofcomputationtimethealgorithmmayexpend).ifnosolutionisfoundbeforetheallotedresources alwayssucceedinndinganadequatetestinput.comparisonsofdierenttestdatagenerationschemesare practicaltestdatagenerationalgorithmsareusuallygivenresourcelimitations(e.g.,limitationsonthe usuallyaimedatdeterminingwhichmethodcanprovidethemostbenetgivenxedresources. beingmorecapableofndingadequatetests.ourresearchspecicallyaddressesthisneed. areexhausted,thenthealgorithmisconsideredtohavefailed.inshort,testgenerationalgorithmsdonot 2.1Codecoverageandtestadequacycriteria Clearly,itisdesirabletohavetestdatagenerationalgorithmsthataremorepowerfulinthesenseof Mosttestadequacycriteriarequirecertainfeaturesofaprogram'ssourcecodetobeexercised.Asimple exampleisacriterionthatsays,\eachstatementintheprogramshouldbeexecutedatleastoncewhenthe programistested."testmethodologiesthatusesuchcriteriaareusuallycalledcoverageanalyses,because certainfeaturesofthesourcecodearetobecoveredbythetests. example,toobtainbranchcoverageofthecodefragment: coverage.thiscriterionrequireseveryconditionalbranchintheprogramtobetakenatleastonce.for Theexamplegivenabovedescribesstatementcoverage.Aslightlymorerenedapproachisbranch if(a>=b){doonething} ofb,andanotherthatcausesthevalueofatobelessthanthatofb.oneeectofthisrequirementisto requiresoneprograminputthatcausesthevalueofthevariableatobegreaterthanorequaltothevalue else {dosomethingelse} ensurethatboththe\doonething"and\dosomethingelse"sectionsoftheprogramareexecuted. inaprogram.weshallrefertothishierarchyasdeninglevelsofcoverage.atthetopofthehierarchy ismultipleconditioncoverage,whichrequiresthetestertoensurethateverypermutationofvaluesforthe Booleanvariablesineveryconditionoccursatleastonce.Atthebottomofthehierarchyisfunctioncoverage whichrequiresonlythateveryfunctionbecalledonceduringtesting(sayingnothingaboutthecodeinside Thereisahierarchyofincreasinglycomplexcoveragecriteriahavingtodowiththeconditionalstatements eachfunction).somewherebetweentheseextremesiscondition-decisioncoverage,whichisthecriterionwe useinourtest-datagenerationexperiments. valuedexpressions,whileadecisionisanexpressionthatinuencestheprogram'sowofcontrol.toobtain condition-decisioncoverage,atestsetmustmakeeachconditionevaluatetotrueforatleastoneofthe tests,andeachconditionevaluatetofalseforatleastoneofthetests.furthermore,thetrueandfalse branchesofeachdecisionmustbeexercised.putanotherway,condition-decisioncoveragerequiresthateach Aconditionisanexpressionthatevaluatestotrueorfalse,butdoesnotcontainanyothertrue/false- onceẇithanyofthesecoveragecriteria,wemustaskwhattodowhenatestsetfailstomeetthechosen branchinthecodebetakenandthateveryconditioninthecodebetrueatleastonce,andfalseatleast criterion.inmostcases,thenextstepistotrytondatestsetthatdoessatisfythecriterion.sinceitcan areusedtoautomatethisprocess. 2.2Previousworkintestdatageneration bequitediculttomanuallysearchfortestinputssatisfyingcertaincriteria,testdatagenerationalgorithms testdatageneration.inthenextthreesubsections,wewilldescribeeachofthesetechniquesinturn.the datagenerationasabaselineforcomparison. counteredarerandomtestdatageneration,symbolic(orpath-oriented)testdatageneration,anddynamic GADGETsystemwedescribeinthispaperisadynamictestgenerator.Inourexperiments,weuserandom Therearemanyexistingparadigmsforautomatictestdatageneration.Perhapsthemostcommonlyen- {2{

4 Randomtestdatagenerationsimplyconsistsofgeneratinginputsatrandomuntilausefulinputisfound Randomtestdatageneration testinputmayhavetosatisfyveryspecicrequirements.insuchacasethenumberofadequateinputsmay Theproblemwiththisapproachisclear:withcomplexprogramsorcomplexadequacycriteria,anadequate beverysmallcomparedtothetotalnumberofinputs,sotheprobabilityofselectinganadequateinputby chancecanbelow. [Korel,1996]foundthatrandomtestgenerationwasoutperformedbyothermethodsevenonsmallprograms wherethegoalwastoobtainstatementcoverage.morecomplexprogramsormorecomplexcoveragesare likelytopresentevengreaterproblemsforrandomtestdatagenerators.nonetheless,randomtestdata generationmakesagoodbaselineforcomparison,becauseitiseasytoimplementandcommonlyreported Thisintuitionisconrmedbyempiricalresults(includingthosereportedinSection5).Forexample Manytestdatagenerationmethodsusesymbolicexecutiontondinputsthatsatisfyanadequacycriterion intheliterature. (e.g.,[clarke,1976,ramamoortyetal.,1976,outt,1991]).symbolicexecutionofaprogramconsistsof 2.2.2Symbolictestdatageneration assigningsymbolicvaluestovariablesinordertocomeupwithanabstract,mathematicalcharacterization ofwhattheprogramdoes.thus,inanidealcase,testcasegenerationcanbereducedtoaproblemofsolving analgebraicexpression. arisesinindeniteloops,wherethenumberofiterationsdependsonanon-constantexpression.toobtain isneverentered,ifititeratesonce,ifititeratestwice,andsoonadinnitum.inotherwords,thesymbolic executionoftheprogrammayrequireaninniteamountoftime. acompletepictureofwhattheprogramdoes,itmaybenecessarytocharacterizewhathappensiftheloop Anumberofproblemsareencounteredinpracticewhensymbolicexecutionisused.Onesuchproblem symbolicallyforonecontrolpathatatime.pathsmaybeselectedbytheuser,byanalgorithm,orthey maybegeneratedbyasearchprocedure.ifonepathfailstoresultananexpressionthatyieldsanadequate testinput,anotherpathistried. Testdatagenerationalgorithmssolvethisprobleminastraightforwardway:theprogramisonlyexecuted otherobstaclestoapracticaltestdatagenerationalgorithmbasedonsymbolicexecution.problemscan arisewhendataisreferencedindirectly,asinthestatement: Loopsarenottheonlyprogrammingconstructsthatcannoteasilybeevaluatedsymbolically;thereare a=b[c+d]/10 fragment: Here,itisunknownwhichelementofthearrayBisbeingreferredtobyB[c+d],becausethevariablescand darenotboundtospecicvalues. Pointerreferencesalsopresentaproblembecauseofthepotentialforaliasing.ConsiderthattheCcode *a=12; resultsinctakingthevalue12unlessthepointersaandbrefertothesamelocation,inwhichcasecis *b=13; assignedthevalue13.sinceaandbarenotboundtonumericvaluesduringsymbolicexecution,thenal c=*a; valueinccannotbedetermined. ofsymbolicallyexecutingrealprograms. referencesarenotatheoreticalimpedimenttotheuseofsymbolicexecution,theycomplicatetheproblem notnormalpracticetoavoidtheseconstructswhenwritingaprogram.thus,althougharrayandpointer Technically,anycomputablefunctioncanbecomputedwithouttheuseofpointersorarrays,butitis {3{

5 2.2.3Dynamictestdatageneration Athirdclassoftestdatagenerationparadigmsisdynamictestdatageneration,introducedin[Millerand Spooner,1976]andexempliedbytheTESTGENsystemof[Korel,1990,Korel,1996]aswellastheADTEST systemof[gallagherandnarasimhan,1997].thisparadigmisbasedontheideathatpartsofaprogram canbetreatedasfunctions.onecanexecutetheprogramuntilacertainlocationinthecodeisreached, recordthevaluesofoneormorevariablesatthatlocation,andtreatthosevaluesasthoughtheywerethe valueofafunction. Forexample,supposethatahypotheticalprogramcontainsthecondition if(pos>=21)... online324,andthatthegoalistoensurethatthetruebranchofthisconditionistaken.wemustndan inputthatwillcausethevariablepostohaveavaluegreaterthanorequalto21whenline324isreached. Asimplewaytodeterminethevalueofposonline324istoexecutetheprogramuptoline324andthen recordthevalueofpos. Letpos324denotethevalueofpos,recordedonline324whentheprogramisexecutedintheinputx. Thenthefunction F(x)=21?pos324;ifpos324<21; 0; otherwise isminimalwhenthetruebranchistakenonline324.thus,theproblemoftestdatagenerationisreduced tooneoffunctionminimization:tondthedesiredinput,wemustndavalueofxthatminimizesf(x). Unfortunately,thisisanoversimplication,becauseline324maynotbereachedforsomeinputs.There are,however,twocommonsolutionstothisproblem.first,onecanamendthedenitionoff(x)sothatit willhaveaverylargevaluewheneverthedesiredconditionisnotreached.second,onecantreattheproblem ofreachingthedesiredlocationasasubproblemthatmustbesolvedbeforetheminimizationoff(x)can commence. IntheTESTGENsystemof[Korel,1990],theminimizationofF(x)beginsbyestablishinganoverall goal,whichissimplythesatisfactionofthetestadequacycriterion.theprogramisexecutedonaseed input,anditsbehavioronthisinputisusedasthebasisofasearchforasatisfactoryinput(thatis,ifthe seedinputisnotsatisfactoryitself). Thesubsequentactiondependsonwhetherthetheexecutionreachesthesection(s)ofcodewherethe adequacycriterionissupposedtohold(forexample,whetheritreachesline324intheexampleabove).ifit does,thenfunctionminimizationmethodscanbeusedtondanadequateinputvalue. Ifthecodeisnotreached,asubgoaliscreatedtobringabouttheconditionsnecessaryforfunction minimizationtowork.thesubgoalconsistsofredirectingtheowofcontrolsothatthedesiredsectionof codewillbereached.thealgorithmndsabranchthatisresponsible(whollyorinpart)fordirectingthe owofcontrolawayfromthedesiredlocation,andattemptstomodifytheseedinputinawaythatwill forcethecontrolofexecutioninthedesireddirection. Thenewsubgoalcanbetreatedinthesamewayasothertestadequacycriteria.Thusthesearchforan inputsatisfyingasubgoalproceedsinthesamewayasthesearchforaninputsatisfyingtheoverallgoal. Likewise,moresubgoalsmaybecreatedtosatisfytherstsubgoal.Thisrecursivecreationofsubgoalsis calledchainingin[korel,1990]and[fergusonandkorel,1996]. Korel'sapproachisadvantageouswhenthereismorethanonepaththatreachesthedesiredlocationin thecode.thetest-data-generationalgorithmisfreetochoosewhicheverpathitwants(aslongasitcan forcethatpathtobeexecuted),andsomepathsmaybebetterthanothers.forexample,supposewewant totakethetruebranchofthecondition if(b>10)... butsupposethatbhasadefaultvalueof3.itmaybethatoneexecutionpathgivesbanewvalue,while adierentpathsimplyleavesthevalueofbalone.aslongasweonlytakethepaththatleavesbwithits defaultvalue,wewillneverbeabletomaketheconditiontrue;nochoiceofinputscanmakethedefault valueofbbeanythingotherthan3.therefore,thetestgenerationalgorithmmustknowhowtoselectthe executionpaththatassignsanewvaluetob.inthetestgensystem,heuristicsareusedtoselectthe paththatseemsmostlikelytohaveanimpactonthetargetcondition. {4{

6 andthegoaloftestdatagenerationistondaninputthatexecutesthedesiredpath.sinceitisknown whichbranchmustbetakenforeachconditiononthepath,alloftheseconditionscanbecombinedina singlefunctionwhoseminimizationleadstoanadequatetestinput.forexample,ifthedesiredpathrequires takingthetruebranchofthecondition IntheADTESTsystemof[GallagherandNarasimhan,1997],anentirepathisspeciedinadvance, if(b>=10)... online11,andtakingthefalsebranchofthecondition online13,thenonecanndanadequatetestinputbyminimizingthefunctionf1(x)+f2(x),where if(c>=8) F1(x)=10?b11;ifb11<10online11; 0; otherwise F2(x)=c13?8;ifc13>8online13; theadtestsystembeginsbytryingtosatisfytherstconditiononthepath,addingthesecondcondition Unfortunately,thisfunctioncannotbeevaluateduntilline10andline13arebothreached.Therefore 0; otherwise onlyaftertherstconditionhasbeensatised.asmoreconditionsarereached,theyareincorporatedin thefunctionthatthealgorithmseekstominimize. ThissystemrequiresinstrumentationoftheAdaprogrambyhand.Oncethecodeisinstrumentedandranges Changetal.,1996].ThisisahybridsystemcombiningrandomtestinganddynamictestingforAdacode. andtypesofinputvariableshavebeenprovided,thesystemcreatestestdatausingrule-basedheuristics. Forexample,valuesofparametersareadjustedaccordingtoonesuchruletoincreaseordecreasebyaxed AnothertestgenerationsystemrelevanttoourworkistheQUEST/Adasystemof[Deasonetal.,1991, constantpercentage.thetestadequacycriterionchosenbychangetal.isbranchcoverage.thesystem createsacoveragetableforeachbranchandmarksthosethathavebeensuccessfullycovered.table1 branchestotargetfortesting.partially-coveredbranchesarealwayschosenovercompletely-non-covered providesanexampleofsuchabranchtable.thetableisconsultedduringanalysistodeterminewhich branches.(thisstrategywillbeexplainedindetailinsection4.1.) Decisiontruefalse 12 Branch 34 X Table1:AsamplecoveragetableafterChang.Thistableisgeneratedfromaprogramowchart.Thetableprovides 56 - X informationregardingthecoveredbranchesanddirectsfuturetestcasegeneration.weadaptthisapproachforour generatoraswell. - coverwhateverconditionsitcanreach.althoughthisisinecientwhenoneonlywantstoexerciseacertain featureofthecodeundertest,itcansavequiteabitofunnecessaryworkifonewantstoobtaincomplete dealingwiththesituationwhereadesiredconditionisnotreached.insteadofpickingaparticularcondition astestgendoes,orpickingaparticularpathlikeadtest,thisstrategyisopportunisticandseeksto Thecoveragetableof[Changetal.,1996]isrelevanttoourresearchbecauseitprovidesastrategyfor coverageaccordingtosomecriterion. Theresearchdescribedinthispaperaddressestwolimitationscommonlyfoundindynamictest-datagenerationsystems.First,manysystemsmakeitdiculttogeneratetestsforlargeprograms,eitherbecausethe 2.3Contributionsofthispaper Weindependentlydevelopedthecoverage-tablestrategy,anduseitinourtest-generationsystem. {5{

7 programmustbeinstrumentedbyhandorbecausetheyonlyworkonsimpliedprogramminglanguages. Second,manysystemsusegradientdescenttechniquestoperformfunctionminimization,andthereforethey canstallwhentheyencounterlocalminima(thisproblemisdescribedbelowingreaterdetail). LimitedprogramcomplexityisadrawbackoftheTESTGENandQUEST/Adasystems.QUEST/Ada requirestheprogramundertesttobeinstrumentedbyhand.testgenonlyallowsprogramswrittenina subsetofthepascallanguage.theproblemwithsuchlimitationsisthattheypreventonefromstudying howthecomplexityofaprogramaectsthedicultyofgeneratingtestdata.theunchallengingdemands ofsimpleprogramscanmakenaveschemeslikerandomtestgenerationappeartoworkbetterthanthey actuallydo. Inthispaper,wereportonGADGET,atestgenerationsystemdesignedforprogramswritteninCor C++.GADGETautomaticallygeneratestestdataforarbitraryC/C++programs,withnolimitationson thepermissiblelanguageconstructsandnorequirementforhand-instrumentation.wereporttestresultsa programcontainingover2000linesofsourcecodeexcludingcomments.toourknowledge,thisisthelargest programforwhichresultshavebeenreported.(although[gallagherandnarasimhan,1997]reportedthat theirsystemhadbeenrunonprogramsaslargeas60,000linesofsourcecode,noresultswerepresented.) TheabilitytogeneratetestsforprogramsusingallC/C++constructshastheaddedbenetofallowingus tostudytheeectsofprogramcomplexityonthedicultyoftestdatageneration. TheGADGETsystemusesgeneticalgorithmstoperformthefunctionminimizationneededduring dynamictestdatageneration.inthisrespectitdiersfromthetestgenandadtestsystems,which usegradientdescent.theadvantageofusinggeneticalgorithmsisthattheyarelesssusceptibletolocal minima,whichcancauseatest-generationalgorithmtohaltwithoutndinganadequateinput. Geneticalgorithmswereusedintestgenerationpreviouslyby[Schultzetal.,1993],butthegoalthere wasnottoachieveacertainlevelofcoverage.instead,thatsystemsoughttoinducebehaviorconsidered likelytomakethesoftwarefail. Themostfrequentlycitedadvantageofgeneticalgorithms,whentheyarecomparedtogradientdescent methods,isthatgeneticalgorithmsarelesslikelytostallinalocalminimum aportionoftheinput spacewheref(x)appearstobeminimalbutisnot.thereisalsoasecondadvantagewhenseveralpathsto thedesirednodeareavailable.unlikegradientdescentmethods,whichmustconcentrateonasinglepath, theimplicitparallelismofgeneticalgorithmsallowsthemtoexaminemanypathsatonce.thispresentsa simplesolutiontothepath-selectionproblemdescribedinsection Certainlimitationsarecommontoalldynamictestgenerationsystems,includingourown.Existing systemsarelimitedtoprogramswhoseinputsarescalartypes.furthermore,wearenotawareofanydynamic test-datagenerationsystemthatcanintelligentlyhandletrue/false-valuedvariablesorenumeratedtypes. Programsusingsuchvariableswithinconditionalstatementsdonotseemtohavebeenusedinpastresearch. (Theproblempresentedbysuchvariableswillbeexaminedinsection5.4.) Inspiteoftheselimitations,oursistheonlydynamictestdatagenerationsystemweknowofthatcanbe runonlargeprograms,andthatatthesametimeusesanoptimizationmethodmorepowerfulthangradient descent.inthispaper,wetakeadvantageofthiscapabilitybyexaminingtheimpactofprogramcomplexity ontheproblemofdynamictestdatageneration. Weexamineafeatureofthedynamictestgenerationproblemthatdoesnothaveananaloginmostother functionminimizationproblems.ifwearetryingtosatisfymanyadequacycriteriaforthesamesoftware,we havetoperformmanyfunctionminimizations,butthefunctionsbeingminimized(sincetheycorrelatewith programsemantics)aresometimesquitesimilar.thatmakesitpossibletosolveoneproblembycoincidence whiletryingtosolveanother.inotherwords,thetestgeneratorcanndinputsthatsatisfyonecriterion eventhoughitissearchingforinputstosatisfyadierentone. Ourresultssuggestthattheserendipitousdiscoveryofinputssatisfyingnewcriteriamaygreatlyinuence thecomplexionofdynamictestdatageneration.itseemsthattheabilitytondgoodtestsbycoincidence playsacrucialroleinthesuccessofadynamictest-datagenerationtechnique.butwhenweexaminethis behaviorinmoredetail(section5.4.3),wewillseethatserendipityofthesortweobserveisfarfromarbitrary. Thisexplainsthefactthatrandomtestgeneration,whichoughttobegoodatndinginputscoincidentally, performspoorlyinourexperiments.theabilityofgeneticalgorithmstoconcentrateonsemantically-relevant partsoftheinputspacethroughevolutionarypressuresseemstogivethemanadvantagewhenitcomesto discoveringnewinputsaccidentally.similaremergentbehaviorofgashasalsobeendocumentedforother kindsofproblems[?]. {6{

8 GADGETdrawsonpastworkindynamictestdatageneration.Itcombinesthefunctionminimization 3andtheuseofacoveragetableafter[Changetal.,1996].Themarriageofthecoverage-tablestrategywith approachof[millerandspooner,1976,korel,1990](thoughusinggastoavoidtheproblemoflocalminima) Geneticalgorithmsfortestdatageneration geneticalgorithmsisparticularlyadvantageousbecausethecoveragetableisacheapalternativetokorel's 3.1Functionminimization maythereforeletusretainsomeoftheadvantagesofexplicitpathselectionwithlesscomputationalcost. path-selectionstrategyandthegacanexaminemanypathsatonce.thecombinedparallel-searchstrategy Theabilitytonumericallyminimizeafunctionvalueisthekeytodynamictestdatageneration.Various numericcomputationalgorithmsareintendedforthispurpose(newton'smethod,etc.),buttheserequire thefunctiontobeberelativelysmooth.thismaynotbethecasewhenthefunctionisonecomputedbyan arbitrarysectionofsomeprogram. ofthesemethodsisgradientdescent,whichmodiestheinputvaluesinsuchawaythatthefunction'svalue alwaysdecreases.theprocessstopswhennofurtherdecreaseinthefunctionvaluecanbeobtainedbyany ofthemodicationsthataretried. Therefore,moregenericmethods,makinglessstringentassumptions,aredesirable.Oneofthesimplest inputvaluearemadeinitiallytodetermineagooddirectionformakinglargermoves.whenanappropriate directionisfound,increasinglylargestepsaretakeninthatdirectionuntilnofurtherimprovementisobtained (inwhichcasethesearchbeginsanewwithsmallinputmodications),oruntiltheinputnolongerreaches thedesiredlocation(inwhichcasethemoveistriedagainwithasmallerstepsize).whennofurtherprogress Theminimizationmethodsuggestedin[Korel,1996]isaformofgradientdescent.Smallchangesinone madeforanyinputvalue. canbemade,adierentinputvalueismodied,andtheprocessterminateswhennomoreprogresscanbe region in which inputs are sought that decrease f(x). f(x) Figure1:Illustrationofalocalminimum.Analgorithmtriestondavalueofxthatwilldecreasef(x),butthere foundaglobalminimumoff. arenosuchvaluesintheimmediateneighborhoodofthecurrentx.thealgorithmmayfalselyconcludethatithas Gradientdescentcanfailifalocalminimumisencountered.Alocalminimumoccurswhennoneofthe global current input x {7{

9 changesofinputvaluesthatarebeingconsideredleadtoadecreaseinthefunctionvalue,andyetthevalue inputvalues(i.e.,asmallsectionofthesearchspace)duetoresourcelimitations.theinputvaluesthatare isnotgloballyminimized.theproblemarisesbecauseitisonlypossibletoconsideralimitednumberof consideredmaysuggestthatanychangeofvalueswillcausethefunction'svaluetoincrease,evenwhenthe currentvalueisnottrulyminimal.thissituationisillustratedinfigure1. notblindlypursuethesteepestgradient.notableamongthesearesimulatedannealing[kirkpatricketal., 1989,Mitchell,1996]).Inthispaper,weapplyageneticalgorithmtotheproblemoftestdatageneration. 1983],tabusearch[Glover,1989,Skorin-Kapov,1990],andgeneticalgorithms[Holland,1975,Goldberg, Theproblemoflocalminimahasledtothedevelopmentoffunctionminimizationmethodsthatdo 3.2Geneticalgorithms Ageneticalgorithm(GA)isarandomizedparallelsearchmethodbasedonevolution.GAshavebeenapplied toavarietyofproblemsandareanimportanttoolinmachinelearningandfunctionoptimization.[goldberg, 1989]and[Mitchell,1996]givethoroughintroductionstoGAsandprovidelistsofpossibleapplicationareas. Themotivationbehindgeneticalgorithmsistomodeltherobustnessandexibilityofnaturalselection. alleles.thestringproducedbytheconcatenationofalltheencodedparametersformsagenotype.each biology,anencodedparametercanbethoughtofasagene,wheretheparameter'svaluesarethegene's aninitialpopulationofindividuals,eachrepresentedbyarandomlygeneratedgenotype.thetnessof genotypespeciesanindividualwhichisinturnamemberofapopulation.thegastartsbycreating InaclassicalGA,eachofaproblem'sparametersisrepresentedasabinarystring.Borrowingfrom individualsisevaluatedinsomeproblem-dependentway(inourcaseindividualsaremoretiftheyseem closertosatisfyinganewcriterion),andthegatriesevolvehighlytindividualsfromtheinitialpopulation. Thethreebasicgeneticoperators:selection,crossover,andmutationcarryoutthesearch. duringeachiteration(generation)untilreachingsometerminationcondition.thebasicalgorithm,where P(t)isthepopulationofstringsatgenerationt,is: Thegeneticsearchprocessisiterative:evaluating,selecting,andrecombiningstringsinthepopulation while(terminationconditionnotsatised)do evaluatep(t) initializep(t) t=t+1 evaluatep(t+1) recombinep(t+1) selectp(t+1)fromp(t) vidual)isbasedonatnessfunctionthatisproblemdependent.determiningtnesscorrespondstothe environmentaldeterminationofsurvivabilityinnaturalselection,andinourcase,itisdeterminedbythe tnessfunctiondescribedinsection Inrststep,evaluation,thetnessofeachindividualisdetermined.Evaluationofeachstring(indi- generation.selectionofastringdependsonitstnessrelativetothatofotherstringsinthepopulation. Mostoften,thetwoindividualsareselectedatrandom,buteachindividual'sprobabilityofbeingchosenis relativetness.itprobabilisticallycullsfromthepopulationindividualshavingrelativelylowtness. proportionaltoitstness.thisisknownasroulette-wheelselection.thus,selectionisdoneonthebasisof Thenextstep,selection,isusedtondtwoindividualsthatwillbematedtocontributetothenext nature.onetypeofsimplecrossoverisimplementedbychoosingarandompointinaselectedpairofstrings (encodingapairofsolutions)andexchangingthesubstringsdenedbythatpointasshowningure3.2. thepermanentlossofalleles.mutationsimplyresultsintheippingofabitswithagenome,butthis Thethirdstepiscrossover(orrecombination),whichllstheroleplayedbysexualreproductionin ippingofbitsonlyoccursinfrequently. Inadditiontoevaluation,selection,andrecombination,geneticalgorithmsusemutationtoguardagainst {8{

10 Crossover Point Parents A B ofpartsfrombothparentsleadingtoinformationexchange. Figure2:Single-pointcrossoverofthetwoparentsAandBproducesthetwochildrenCandD.Eachchildconsists Children population,usuallyleadingthegaawayfromunpromisingareasofthesearchspaceandtowardspromising TheindividualsinthepopulationactasaprimitivememoryfortheGA.Geneticoperatorsmanipulatethe C D ones,withoutthegahavingtoexplicitlyrememberitstrailthroughthesearchspace[rawlins,1991]. genotype(string)tophenotype(pointinsearchspace)isusuallytrivial.forexample,inordertooptimize thefunctionf(x)=x,individualscanberepresentedasbinarynumbersencodedinnormalfashion.in thiscase,tnessvalueswouldbeassignedbydecodingthebinarynumbers.ascrossoverandmutation manipulatethestringsinthepopulationtherebyexploringthespace,selectionprobabilisticallyltersout ItiseasiesttounderstandGAsintermsoffunctionoptimization.Insuchcases,themappingfrom stringswithlowtness,exploitingtheareasdenedbystringswithhightness.notethatthissearch techniqueisnotsubjecttotheproblemsassociatedwithlocalminima,whichweredescribedabove. 4thatourapproachisbasedontheconversionofthetest-datagenerationproblemtoafunctionminimization problem,whichallowsageneticalgorithmtobeapplied.thetwodetailsthatmustbeaddressedarethe Inthissection,wedescribeourapproachtotestdatagenerationbygeneticsearch.Recallfromsection2.2.3 GADGET:GeneticAlgorithmDataGEnerationTool ourtestadequacycriteriontobesatised,andwemustconvertthatcriterionintoafunctionthatcanbe sameasthosedescribedinsection2.2.3:wemustndawaytoreachthecodelocationwherewewant minimized. 4.1Reachingthetargetcondition. Recallthatindynamictestgeneration,functionminimizationcannotbeperformedunlesstheowofcontrol reachesacertainpointinthecode.forexample,ifweareseekinganinputthatexercisesthetruebranch ofaconditioninline954ofaprogram,weneedinputsthatreachline954beforewecanbegintodofunction minimization. concentrateonndingaspecicpathtothedesiredlocation.ourgoalis(amongotherthings)tocoverall branchesinaprogram.thismeanswecansimplydelayourattemptstosatisfyacertainconditionuntilwe havefoundteststhatreachthatcondition. Ourapproachisslightlydierentfromthatof[Korel,1990]and[GallagherandNarasimhan,1997],which 1:if(state_error>state_bndry[0]) 2: Thiscanbeillustratedusingthefollowingcodefragment: 3:elseif((state_error>state_bndry[2])) 4: 5:elseif((state_error<state_bndry[1])) 6: rule_area=area(1.0,(state_bndry[0]-state_bndry[1])); state_weight=rule(state_error,state_bndry[2],state_bndry[0]); state_weight=rule(state_error,state_bndry[3],state_bndry[1]); {9{

11 Theconditiononline5canonlybereachedwhentheconditiononline1andtheconditiononline3are thatcausetherstconditiontobetrueaswellassomethatcauseittobefalse.therefore,whenwehave bothfalse. Inordertoreachtheifconditiononline3,atestcasemustcausetheconditiononline1tobefalse. line3.wearethusreadytobeginlookingfortestcasesthatcoverbothbranchesofthedecisiononline3. achievedbranchcoverageofline1,wewillalreadyhaveatleastonetestcasethatreachestheconditionon Likewise,whenwehavecoveredtheconditiononline3,wewillhavetestcasesthatreachline5,and Ifthegoaloftestgenerationistoexerciseallbranchesinthecode,thentheremustbothbetestcases thereforewewillbereadytobeginlookingfortestcasesthatexercisethebranchesoftheconditiononline5. functionminimizationtothatcondition.ifbothbrancheshavebeentaken,thencoverageissatisedforthat isgeneratedtokeeptrackoftheconditionalbranchesalreadycoveredbyexistingtestcases.ifneither branchofaconditionhasbeentaken,thenthatdecisionhasnotbeenreached,sowearenotreadytoapply conditionandweneednotexamineitfurther.however,ifonlyonebranchofaconditionhasbeenexercised, Thisleadstoatestgenerationapproachsimilartotheoneemployedby[Changetal.,1996].Atable online1hasbeencoveredbecauseboththetrueandfalsebrancheshavebeenexercised.sincethefalse thentheconditionhasbeenreached,anditisappropriatetoapplyfunctionminimizationinsearchofan branchesofthatdecisionhasnecessarilybeenexercised.table3showsasituationwheretheconditionon branchofthatconditionwasexercised,theconditiononline3hasbeenreachedaswell,andoneofthetwo inputthatwillexercisetheotherbranch. line3wasalsofalse,meaningthattheconditiononline5wasreachedandoneofthebranchesofthat Forthecodefragmentshownabove,thesituationisillustratedbyTable2.Inthetable,thecondition conditionhasbeenexercisedȧ Decisiontruefalse 13 X Thistablecanbeautomaticallygeneratedfrom Table2:AsamplecoveragetableafterChang. 5 - thecodefragmentshownabove.suchtablesare X Decisiontruefalse 13 B 5 X- X - tionduringautomatictestdatageneration. usedtodecidewheretoapplyfunctionminimiza- Table3:Asimilartableshowingasituation wheretestshavetakenadierentcombinationof branches. 3,oronethatexercisesthetruebranchonline5.Bothconditionsarereachedandsobotharecandidates forfunctionminimization.table3showsadierentsituationwhereline5wasnotreachedbecauseonlythe truebranchwastakenonline3.inthatcase,wecannotapplyfunctionminimizationonline5because notestcasesreachthere.however,wecanapplyfunctionminimizationatline3.ifwedososuccessfully, InTable2,wemaybeginlookingforatestcasethatexercisesthetruebranchoftheconditiononline wewillndatestthatexercisesthefalsebranchofthatcondition,andthattestwillreachline5.after wehaveobtainedoneormoresuchtests,theconditiononline5willbereachableandwewillbereadyto beginfunctionminimizationatthatpoint. usethegatoperformanewfunctionminimizationforeachconditionwereach.forexample,inthecase illustratedbytable3wewouldusethegatocoverthefalsebranchonline3.withluck,wemaynd online5.ifthishappens,wewillbenished.ontheotherhand,ifourtestcasesonlycoveroneofthe severalteststocoverthisbranch,anditmayevenbethatthesetestscoverbothbranchesofthecondition Aswehavealreadystated,GADGETperformsfunctionminimizationusingageneticalgorithm.We branchesonline5,wewillhavetorunthegaagaintocovertheremainingbranch. example,aninputtotheb737autopilotcomponentweusedtotestthegadgetsystem(seesection5.4) contains186inputvalues,soanindividualisaspeciclistof186variableswhenthegaisgeneratingtests forthatproblem.theseindividualscompetewitheachotheraccordingtonaturalselectionrules.thebest individualsareretainedandbredtogether,whileuselessindividualsareculledfromthepopulation.the TheGAworksbycreatingapopulationofindividualsthatcorrespondtoindividualtestcases.For {10{

12 goodnessortnessofanindividualiscomputedasafunctionofthesourcecode(aswithalldynamictest datagenerationmethods;seesection2.2.3).thegastopsintwosituations:oneinwhichitissuccessful, andanotherinwhichnoforwardprogresshasbeenmadeforaspeciedperiodoftime.inthemostuseful situation,thegastopswhenavalidtestcasemeetingtheminimizationcriteriahasbeendiscovered(e.g., thegastopswhenaconditionitistryingtohitfalseactuallyis).itmayalsostopiftherehasbeenno improvementinoveralltnessforaspeciednumberofgenerations.inthiscase,thegahasfailedand eitheranewruncanbetriedwithanewrandomnumberseed,orelsethegoalcanbechanged. thetestsreachingthatcondition.theinitialpopulationmayalsobecontainsomerandomtestcasesifthe conditionwasnotreachedsucientlyoften. Whenwerunthegeneticalgorithmonagivencondition,ourinitialpopulationoftestcasescontains 4.2Calculationoftnessfunctions. Recallfromsection2.2.3thatdynamictestgenerationinvolvesreducingthetestgenerationproblemtoone ofminimizingatnessfunctionf.therststepistodenef.likemostotherdynamictestgeneration techniques,oursbeginsbyinstrumentingthecodeundertest.thepurposeofthisinstrumentationisto allowustocalculatethetnessfunctionbyexecutingtheinstrumentedcode. tablebelowshowshowf(x)iscalculatedforsometypicalrelationaloperatorswhenweareseekingtotake thetruebranchofacondition(thefunctionsforthefalsebranchareanalogous). Ateachcondition,weaddinstrumentationtoreportF(x)whenexecutionreachesthatcondition.The decisiontype inequality example if(c>=d)... F(x)=d-c;ifdc; tnessfunction true/falsevalueif(c)... if(c==d)...f(x)=jd?cj F(x)=1000;ifc=false; 0; 0; otherwise executedthestatement)thenthetnessfunctiontakesitsworstpossiblevalue. Iftheprogram'sexecutionfailstoreachthedesiredlocation(itterminatesortimesoutwithouthaving otherwise if((c>d)&&(c<f))... canbehandledbyexploitingc/c++shortcircuitevaluation.forexample,thesecondclauseofthecondition Sinceoursystemseekstogeneratecondition/decisionadequatetestsets,conjunctionsanddisjunctions clausemustbothbetrueisreplacedbyacriterionstatingthatthesecondclausemustbereached,and isnotreachedunlesstherstclauseevaluatestotrue,sothecriterionthatstatestherstandsecond mustevaluatetotrue.ifbothclausesarereached,andbothclausestakeonboththevaluetrueandthe valuefalse(asrequiredbycondition/decisioncoverage),thenbothbranchesoftheconditionalbranchwill necessarilyhavebeentaken. 4.3Executioncontrol IntheGADGETsystem,anexecutioncontrollerisinchargeofrunningtheinstrumentedcode,coordinating GAsearches,andcollectingcoverageresultsandnewtestcases.Itbeginsbyexecutingallpreliminary testcases.(thesepreliminarycasescanbesuppliedbytheuserorgeneratedrandomlybytheexecution controller.)afterrunningallinitialtestcases,theexecutioncontrollerusesthecoveragetabletonda conditionthatcanbereached,buthasnotbeencoveredyet(thatis,noinputhasmadethecondition true,orelsenoinputhasmadeitfalse).thegeneticalgorithmisinvokedtomakethisconditiontake havebeencovered). thecondition(thoughtheydidnotgivetheconditionthedesiredvalue,orelsetheconditionwouldalready onthevaluethatwasnotalreadyobserved.thegaisseededwithtestcasesthatcansuccessfullyreach {11{

13 untilallconditionsthathavehadonlyonevalue(eithertrueorfalse)havebeensubjectedtogasearch. TheexecutioncontrollerkeepstrackofallGArunsthatcovernewprogramcode,regardlessofwhether TheGAiscalledagainwiththetaskofndinganinputthatcoversthiscondition.Thisprocesscontinues theexecutioncontrollerusesthecoveragetabletondanewconditionthathasnotbeencoveredcompletely. WhentheGAterminates,eitherbyndingasuccessfultestcaseorbyreachingaterminationcondition, ornottheysatisfythecriterionthatthegaiscurrentlyworkingon.(inotherwords,gadgettakes advantageofallserendipitouscoverages.)thesetestcasesarestoredforlateruse. TheGADGETsystemcurrentlycontainstwoGAimplementations.TherstisastandardGAusingonepointcrossover,alowmutationvalue,andaroulette-wheelselectionoperator.ThiskindofGAisdescribed 4.4Functionminimizationmodules numericalminimizationproblemsthanthestandardga. insection3.2.thesecondgaisadierentialga[storn,1996],whichismorespecicallytailoredfor representedas432=128bits.reproductionproceedsaccordingtothefollowingalgorithm: 1.Everyindividualxreceivesatnessvalue,obtainedasinsection4.2(sincewewantgoodinputsto InthestandardGA,eachinputisrepresentedasabitstring.Forexample,four32-bitintegersare 2.Twoindividualsarechosenatrandomaccordingtotness.Eachindividual'sprobabilityofbeing haveahightness,weuse1=f(x)asthetnessvalue,truncatingitifitbecomestoolarge). 3.Acrossoverpointinthebitstringischosenuniformlyatrandom. chosenisitsthetnessdividedbythesumofalltheindividuals'tnesses.thesameindividualisnot 4.Twonewindividualsarecreatedusingone-pointcrossover,startingwiththetwoparentsselectedin chosentwotimes. 5.Mutationisapplied:eachbitinthenewindividualshasasmallchanceofbeingipped. 6.Thetwomosthighlytofthefourindividuals(twoparentsandtwochildren)areselected. step2. 7.Thetwonewindividualsareaddedtothenextgenerationunlesstheyareidentical.Iftheyareidentical, 8.Steps2{7arerepeateduntilthenewgenerationhassamenumberofindividualsastheprevious arandomly-generatedindividualisaddedaswell. 9.Steps1{9arerepeateduntilaterminationconditionissatised(thetargetlocationishittrue/false, generation.(thisnumberisthepopulationsize,providedasaparametertothegeneticalgorithm.) Reproductionfollowsthealgorithm: ThesecondtypeofGAincorporatedinGADGETisthedierentialGAasreportedin[Storn,1996]. orngenerationshavebeenproducedwithnoimprovementintness.) 2.CreateanewindividualI0accordingtothefollowingplan:ForeachinputvariablevalueinI,copy 1.Foreachindividualinthepopulation,selectaparentI,andthreedierentdistinctindividualsforuse aspotentialmates.callthema,b,andc. 3.Ifallvariablesarecopiedverbatiminstep2,thenforceatleastonevariablevalue(chosenatrandom) thevariablevaluefromitoi060%ofthetime.theremaining40%ofthetime,createanewvariable valueusingtheformulaa+0:5(c?b)andcopyittoi0. 4.IfI0isbetterthanI,thenaddI0tothenewgeneration,otherwiseaddItothenewgeneration. 5.Repeatuntilthenewgenerationhassamenumberofindividualsasthepreviousgeneration.(This tobecreatedbythea+0:5(c?b)rule. numberisthepopulationsize.) {12{

14 generatorplaysfundamentallythesameroleasthega,butitcreatesnewinputvaluesentirelyatrandom. 6.Repeatuntilaterminationconditionissatised(eitherthetargetlocationishittrue/false,orN Thesevaluesaretestedtoseeiftheysatisfyanyoftheadequacycriteriabysimplyusingthemasinputsto InadditiontotheGAs,wealsoimplementedarandomtestcasegenerationmodule.Therandomtestcase generationshaveexecutedwithnotnessimprovement.) resourcesareexhausted. arestorediftheyincreasecoverage.thisisrepeateduntilallcoveragecriteriaaremetortheallocated theprogramandrecordingthecoverageobtained(withnotnesscalculation,ofcourse).successfulguesses 5randomtestgenerationperformonincreasinglycomplexsyntheticprograms.Thethirdexperimentshows Inthissection,wereportonfoursetsoftestdatagenerationexperiments.Therstsetofexperimentsinvolves programsthatcalculatesimplenumericfunctions.thesecondexperimentinvestigateshowthegasand Experimentalresults theimpactthatcoveragelevelhasonempiricalresults.finally,wepresentresultsobtainedbyanalyzinga real-worldautopilotcontrolprogramcalledb Simpleprograms Webeganourexperimentationonasetofsimplefunctionsmuchlikethosereportedintheliterature[DeMillo andoutt,1993,changetal.,1996,fergusonandkorel,1996].theprogramsanalyzedwere: Binarysearch Numberofdaysbetweentwodates Bubblesort Insertionsort Computingthemedian Euclideangreatestcommondenominator Warshall'salgorithm Triangleclassication Quadraticformula Theseprogramsareroughlyofthesamecomplexity,averaging30linesofcodeandallhavingrelatively and[fergusonandkorel,1996];inthosepapers,randomtestgenerationalsoperformednearlyaswellas bothapproacheshavethesameeectiveness.theseresultsresemblethosereportedin[changetal.,1996] moresophisticatedtechniquesonsimpleprograms. simpledecisions. Randomtestcasegenerationhastheupperhandintheseexperimentsbecauseitinvolvessignicantly Fortheseprograms,randomtestdatagenerationneveroutperformsgeneticsearch,thoughsometimes lesscomputation.however,ineverycaseoneofthegasperformsthebestoverall.table4showsthe results.thenumbersreportedinthetablerepresentthehighestcoverageobtainedduringaseriesofve runs. classicationisshownbelow.(thecommentsontherightmarginwillbeusedlatertoshowwhichinputs satisedwhichconditions.)notethatmanydecisionsonlycontainasinglecondition. ItisusefultoanalyzeasampleprogramtounderstandwhattheGAsaredoing.ThecodeforTriangle {13{

15 Program Binarysearch Bubblesort1 Bubblesort2 random 80 GA 70 dierential-ga Numberofdaysbetweentwodates Euclideangreatestcommondenominator Insertionsort 87.5 Computingthemedian 92.3 Quadraticformula Table4:Acomparisonofthreetestdatagenerationapproachesonsimpleprograms.Thedierential-GAexhibits Warshall'salgorithm Triangleclassication thebestperformanceoverall,butnotbyasignicantamount.thesedatarepresentthehighestcoverageobtained byeachmethodduringaseriesofveruns. #include<stdio.h> inttriang(inti,intj,intk){ //4ifnotatriangle //3iftriangleisequilateral //2iftriangleisisosceles //1iftriangleisscalene //returnsoneofthefollowing: if(i==j)tri+=1; inttri=0; if(i==k)tri+=2; if((i<=0) (j<=0) (k<=0))return4; //g //h //acd if(j==k)tri+=3; if(tri==0){ //i returntri; } elsetri=1; if((i+j<=k) (j+k<=i) (i+k<=j))tri=4;//be (tri>3)tri=3; //f//bef returntri; } elsetri=4; elseif((tri==3)&&(j+k>i))tri=2; elseif((tri==2)&&(i+k>j))tri=2; elseif((tri==1)&&(i+j>k))tri=2; //h voidmain(){ if(t==1) intt=triang(a,b,c); inta,b,c; scanf("%d%d%d",&a,&b,&c); printf("enter3integersforsidesoftriangles\n"); }Figure3showshowthethreedierentsystems standardga,dierentialga,andrandomtestgeneration performonthetriangleprogramshownabove. resultslargelyfromthisphenomenon;lessexertionwasrequiredofthegabecausesomanycriteriawere whentheyweretryingtosatisfyadierentcriterion.infact,theshorterexecutiontimeofthestandardga coveredserendipitously.wendthistobearecurringphenomenoninourexperiments,andhavemoreto AninterestingresultoftheseexperimentswasthattheGAsoftensatisedonetestcriterionbycoincidence elseif(t==4)printf("thisisnotatriangle\n"); elseif(t==3)printf("triangleisequilateral\n"); elseif(t==2)printf("triangleisisosceles\n"); printf("triangleisscalene\n"); //abcdegi //h //f {14{

16 % covered triangle GA differential random triangleprogram.thegraphshowshowperformance(intermsofthepercentageofcriteriasatised)improves asthenumberofrunsincreases.randomtestgenerationhitsitspeakearly,butfailstoimproveafterthat.the Figure3:AconvergencegraphcomparingtheperformanceofthetwoGAsandrandomtestgenerationonthe pointwisemeanperformanceoververunsforeachsystem. dierentialgahasabetterperformanceandexecutesforalongeramountoftime,butthestandardgahasthe bestperformanceoverall,coveringabout93%ofthecodeonaverageinabout8,000runs.thecurvesrepresentthe runs x sayaboutitinsection5.4. RunnumberKeyInteger1 234 bac Integer2 Integer dgef Table5:AtableofsampleinputcasesgeneratedbythestandardGAfortriangle.Thesedatacanbemappedto hi conditionalexpressionsinthecodeshownaboveusingthekeyeld beinganalyzedwasrelativelysimple.in[changetal.,1996],randomtestdatagenerationwasreported canbemappedtothesourcecodeshownabovebyusingthelettersshowninthecomments. tocover93:4%oftheconditionsonaverage.althoughitsworstperformance onaprogramcontaining11 AsampleofresultsobtainedbytheGAtestdatagenerationalgorithmisshowninTable5.Thesedata decisionpoints was45:5%,itoutperformedmostoftheothertestgenerationschemesthatweretried.only symbolicexecutionhadbetterperformancefortheseprograms.[fergusonandkorel,1996]reportsoneleven Ourresultsforrandomtestcasegenerationresemblethosereportedelsewhereforcaseswherethecode achieving100%statementcoverageforveprograms,andaveraging76%coverageontheothersix. programsaveragingjustover100linesofcode.overall,randomtestdatagenerationwasfairlysuccessful, {15{

17 Itisalsointerestingtocompareourresultswiththoseobtainedby[Korel,1996]forthreeslightlylarger programs.again,simplebranchcoveragewasthegoal.randomtestgenerationachieved67%,68%,and 79%coverage,respectively,onthethreeprogramsanalyzed.Symbolictestgenerationachieved63%,60%, and90%coverage,whiledynamictestgenerationachieved100%,99%,and100%coverage. Theseresultsshowacommontrend:randomtestgenerationhasatleastanadequateperformanceon suchprograms,butforlargerprogramsormoredemandingcoveragecriteria,itsperformancedeteriorates. Theprogramsusedin[Korel,1996]werelargerthanthoseusedin[Changetal.,1996],andrandomtest generationhadpoorerperformanceonthelargerprograms. Theresultsreportedinthissectionusesmallprogramsthoughourtest-adequacycriterionismore stringent.insomecases(likethetriangleprogram)randomtestgenerationisfarlessadequateeventhough resourcelimitationswerenotatellingfactor:thenal90%oftherandomly-generatedtestsfailedtosatisfy anynewcoveragecriteria.inoursubsequentexperimentsonlargerprograms,wendthistobeacontinuing trend:programsize,programcomplexity,andcoveragelevelalldecreasethepercentageofadequacycriteria thatcanbesatisedusingrandomtestgeneration. Sincethepercentageofadequacycriteriasatisedbyrandomtestgenerationactuallygoesdownwhen theprogramsbecomemorecomplex,thesuggestionisthatsomethingaboutlargeprograms,otherthanthe sheernumberofconditionsthatmustbecovered,makesitdiculttogeneratetestdataforthem.thisis conrmedinourlaterexperiments;afterexaminingtheeectsofprogramcomplexityinthenextsection, weinvestigatetherolethatcoveragelevelplaysinthisresultinsection5.3.insection5.4weexaminethe performanceoftest-datagenerationtechniquesonamedium-sizedreal-worldprogram. 5.2Theroleofcomplexity Inoursecondsetofexperiments,wecreatedsyntheticprogramswithconditionsanddecisionswhosecharacteristicswecontrolled.Thetwocharacteristicswewereinterestedincontrollingwere:1)howdeeply conditionalclauseswerenested(wecallthisthenestingfactor),and2)thenumberofbooleanconditionsin eachdecision(whichwecallconditionfactor).forexample,aprogramwithnonestedconditionalclauses wouldlooklikethebeginningpartofthetriangleprogram,inthatifstatementsarenotnestedinsideother ifstatements.thenatureoftheconditionalexpressionsineachconditionalclauseiscontrolledbythesecondparameter.thedecision((i<=0) (j<=0) (k<=0))fromthetriangleprogramranksas a3onthisscalebecauseitcontainsthreeconditions.wecanclassifyprogramsaccordingtotheircomplexity withafunctioncompl(nest,cond)wherenestisthenestingfactorandcondistheconditionfactor.inourexperiments,programsweregeneratedwithallcomplexitiescompl(nest,cond),nest2f0;3;5g;cond2f1;2;3g. ThisexperimentreportsresultsofthedierentialGA.OurresultsshowthatneitherofthetwoconditionsaloneaccountfordierencedbetweenrandomandGA-basedtestgeneration.Infact,alltechniques performedsimilarlyforthesetscompl(;1)andcompl(0;).themostinterestingbehaviorisobservedby increasingthenestingcomplexityatthesametimeastheconditioncomplexity(thecomplexitiescompl(0;1), compl(3;2),andcompl(5;3)). Figures4{6showthreegraphsrepresentingconvergencebehaviorofthetwotypesofsystems.TheGA showsremarkablybetterperformancethanrandomtestdatagenerationonthecomplexcases.themore complextheprograms,thebetterthegaperformswithrespecttorandomtestdatageneration. 5.3Theimpactofcoveragelevel Theaectofcoveragelevel thatis,thedicultyofsatisfyinganadequacycriterion onthediculty ofautomaticallygeneratingtestdataisdemonstratedwiththefollowingexperiment.figure7showshow coveragelevelsaectthesuccessofdierenttestdatagenerationmethods.thegureshowsresultsfor theb737program(seesection5.4),butthisbehaviorisobservedinallexperiments.ingeneral,alltest datagenerationtechniquesperformedbestonfunctioncoverage,whichwasourleastdemandingcriterion. Performancedeterioratedforallthreetechniqueswhenmoredemandingcoveragecriteriawereused.Additionally,experimentswithmoredicultcoveragecriteriawerebetterabletodiscriminatebetweenourthree testgenerationtechniques. Notethattheleastamountofdiscriminationisshowninthefunctioncoveragecondition,andthemostin theconditiondecisioncoveragecondition.clearly,deeperlevelsofcoverageanalysisarehardertoachieve. {16{

18 % covered Nesting Complexity (1,1) random GA Figure4:RandomandGAperformrelativelyequallyonthenon-complexprogram.compl(0,1) runs % covered Nesting Complexity (2,2) Figure5:Ascomplexityincreases,theGAbeginstodobetter.compl(3,2). GA random runs x % covered Nesting Complexity (3,3) GA Figure6:Highcomplexityprogramsarehardforbothgenerators,buttheGAoutperformsrandombyevenmore. random runs x compl(5,3). {17{

19 % covered b737 coverage level differential function coverage random function coverage differential branch coverage differential C/D coverage testadequacycriteria.highercoveragelevelssuchascdcincreasediscriminabilitybetweenapproachesandprovide Figure7:ConvergencegraphcomparingperformanceoftheGAandrandomtestdatagenerationusingdierent random branch coverage betteranalysisdata. random C/D coverage b737:real-worldcontrolsoftware runs x Inthisstudy,weusedtheGADGETsystemonb737,aCprogramwhichispartofanautopilotsystem. Thiscodehas69decisionpointsand2046sourcelinesofcode(excludingcomments).Itwasgeneratedby acasetool. weremadeusingeachmethod.forthetwogeneticalgorithms,wemadesomeattempttotuneperformance byadjustingthenumberofindividualsinthepopulationandthenumberofgenerationsthathadtoelapse withoutanyimprovementbeforethegaswouldgiveup.thegoalofthisne-tuningwastomaximizethe percentageofconditionscovered,whilekeepingtheexecutiontimelow. WegeneratedtestsusingthestandardGA,thedierentialGA,andrandomtestdatageneration.Tenruns ationstoelapsewhennoimprovementintnesswasseen.forthedierentialgaweusedpopulationsof 25individualseach,andallowed20generationstoelapsewhentherewasnoimprovementintness(the smallernumberofindividualsallowsmoregenerationstobeevaluatedwithagivennumberofprogram executions,andwefoundthatthedierentialgatypicallyneededmoregenerationsbecauseitconverges Forthestandardgeneticalgorithm,weusedpopulationsof100individualseach,andallowed15gener- moreslowlythanthestandardga).asbefore,weattemptedtogeneratetestcasesthatsatisfyconditiondecisioncoverage.notethataconditionalstatementmaycontainseveralconditions,andcondition-decision coveragerequireseachoftheseconditionstotakeonbothpossiblevalues.thisisastrongercriterionthan branch-adequacy,whichonlyrequiresthatthetrueandfalsebranchesoftheconditionalstatementbe executed. wepermittedthesamenumberofprogramexecutionsaswasusedbythegeneticsearch.thisamountsto thousandsofrandomtests,oneforeachtimethetnessfunctionwasevaluatedduringgeneticsearch.note, onceeachtimethetnessfunctionisevaluatedforsometestcase.inthecaseofrandomtestgeneration, datagenerationtothesameprogram.theprogramforwhichtestdataarebeinggeneratedmustbeexecuted First,wetriedtoachievecondition-decisioncoveragewiththeGADGET.Next,weappliedrandomtest however,thatrandomtestgenerationstopsmakingprogressveryquickly. showthebest,worst,andpointwisemeanperformanceovertenseparaterunsofeachsystem. ThebestperformanceisseenononeofthetenstandardGAruns.Inthisrun,geneticsearchwasableto Figure8showstheconvergencegraphcomparinggeneticandrandomtestdatageneration.Thegraphs {18{

20 % covered b737 GA best, worst, mean diff. GA best GA differential random diff. GA mean diff. GA worst Figure8:Convergencegraphcomparingperformanceofthreesystemsontheb737code.Threecurvesareshown foreachsystem.theyrepresentthebestperformance,thepointwisemeanovertenruns,andtheworseperformance TheGAsbothshowmuchbetterperformancethanrandomtestdatageneration,withthestandardGAgenerally random best, worst, & mean outperformingthedierentialga runs x 10 3 achievemorethan93%cdccodecoverage signicantlybetterthanrandomtestgeneration,whichonly achieved55%coverage.overall,thestandardgaperformsbest,withameanperformancenoticeablyhigher thanthatofthedierentialga,andfarabovethatofrandomtestgeneration.therewaslittlevariabilityin theperformanceofthestandardgaandalmostnoneintheperformanceoftherandomtestgenerator,but populationweusedforthedierentialga.(withfewerindividualsinthepopulation,itislesslikelythat thedierentialgaexhibitedsurprisingvariabilitybetweenruns.thismayhavebeencausedbythesmaller Here,asinourotherexperiments,mostinputswerediscoveredserendipitously.(Notethatwhenatest 5.4.1Detailedanalysisofmodelruns statisticaluctuationsintnesswillcanceleachotherout.) criterionissatisedserendipitously,itoftenhappensbeforethegeneticalgorithmmakesaconcertedattempt tosatisfythatcriterion.therefore,thefactthatmanycriteriaweresatisedbychancedoesnotimplythat dierentgaimplementations.aquicklookatpartsofthesourcecodeelucidatesthisbehavior.wewill notsatisedatall.inthisrespect,theb737experimentsshedsomelightonthetruebehaviorofthetwo thegawouldhavefailedtosatisfythemotherwise.) rstexplainatypicalindividualrunofthestandardgaandthendiscussthedierentialga. Thefactthatmostinputswerediscoveredbyluckmeansthatmostcriterianotsatisedbychancewere executionsofb737,thisrunsoughttosatisfyadequacycriteriaontwelvedierentconditionsinthecode. Ofthesetwelveattempts,onlyonewassuccessful.Theremainingelevenattemptsshowedlittleforward areclosetothemeanvalueofallcoverageresultsproducedbythestandardgaonb737.inits11,409 progressduringtengenerationsofevolution. TheexecutionofthestandardGAweexamineasamodelwasselectedbecauseitscoverageresults criteriaotherthantheonesitwasworkingonatthetime.thehighcoveragelevelthatwasnallyattained wasmostlyduetothosefourteeninputs.indeed,themostsuccessfulexecutionshavetheshortestrun-times preciselybecausesomanyinputswerefoundserendipitously manyconditionshadalreadybeencovered bychancebeforethegawasreadytobeginworkingonthem.(aswehavestatedalready,thisdoesnot Whilemakingtheseattempts,however,theGAcoincidentallydiscoveredfourteenteststhatsatised {19{

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Ordinary Level

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Ordinary Level UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS General Certificate of Education Ordinary Level *4274470357* MATHEMATICS (SYLLABUS D) 4024/11 Paper 1 October/November 2012 2 hours Candidates answer

More information

http://www.castlelearning.com/review/teacher/assignmentprinting.aspx 5. 2 6. 2 1. 10 3. 70 2. 55 4. 180 7. 2 8. 4

http://www.castlelearning.com/review/teacher/assignmentprinting.aspx 5. 2 6. 2 1. 10 3. 70 2. 55 4. 180 7. 2 8. 4 of 9 1/28/2013 8:32 PM Teacher: Mr. Sime Name: 2 What is the slope of the graph of the equation y = 2x? 5. 2 If the ratio of the measures of corresponding sides of two similar triangles is 4:9, then the

More information

Analysis of Binary Search algorithm and Selection Sort algorithm

Analysis of Binary Search algorithm and Selection Sort algorithm Analysis of Binary Search algorithm and Selection Sort algorithm In this section we shall take up two representative problems in computer science, work out the algorithms based on the best strategy to

More information

Practical Applications of Evolutionary Computation to Financial Engineering

Practical Applications of Evolutionary Computation to Financial Engineering Hitoshi Iba and Claus C. Aranha Practical Applications of Evolutionary Computation to Financial Engineering Robust Techniques for Forecasting, Trading and Hedging 4Q Springer Contents 1 Introduction to

More information

Collections.sort(population); // Método de ordenamiento

Collections.sort(population); // Método de ordenamiento import java.util.collections; import java.util.linkedlist; import java.util.random; public class GeneticAlgorithms static long BEGIN; static final boolean _DEBUG = true; LinkedList population

More information

Introduction To Genetic Algorithms

Introduction To Genetic Algorithms 1 Introduction To Genetic Algorithms Dr. Rajib Kumar Bhattacharjya Department of Civil Engineering IIT Guwahati Email: rkbc@iitg.ernet.in References 2 D. E. Goldberg, Genetic Algorithm In Search, Optimization

More information

Paper Reference. Edexcel GCSE Mathematics (Linear) 1380 Paper 4 (Calculator) Friday 10 June 2011 Morning Time: 1 hour 45 minutes

Paper Reference. Edexcel GCSE Mathematics (Linear) 1380 Paper 4 (Calculator) Friday 10 June 2011 Morning Time: 1 hour 45 minutes Centre No. Candidate No. Paper Reference 1 3 8 0 4 H Paper Reference(s) 1380/4H Edexcel GCSE Mathematics (Linear) 1380 Paper 4 (Calculator) Higher Tier Friday 10 June 2011 Morning Time: 1 hour 45 minutes

More information

6 Creating the Animation

6 Creating the Animation 6 Creating the Animation Now that the animation can be represented, stored, and played back, all that is left to do is understand how it is created. This is where we will use genetic algorithms, and this

More information

Unit 3 Boolean Algebra (Continued)

Unit 3 Boolean Algebra (Continued) Unit 3 Boolean Algebra (Continued) 1. Exclusive-OR Operation 2. Consensus Theorem Department of Communication Engineering, NCTU 1 3.1 Multiplying Out and Factoring Expressions Department of Communication

More information

Algebra III. Lesson 33. Quadrilaterals Properties of Parallelograms Types of Parallelograms Conditions for Parallelograms - Trapezoids

Algebra III. Lesson 33. Quadrilaterals Properties of Parallelograms Types of Parallelograms Conditions for Parallelograms - Trapezoids Algebra III Lesson 33 Quadrilaterals Properties of Parallelograms Types of Parallelograms Conditions for Parallelograms - Trapezoids Quadrilaterals What is a quadrilateral? Quad means? 4 Lateral means?

More information

Math 461 Fall 2006 Test 2 Solutions

Math 461 Fall 2006 Test 2 Solutions Math 461 Fall 2006 Test 2 Solutions Total points: 100. Do all questions. Explain all answers. No notes, books, or electronic devices. 1. [105+5 points] Assume X Exponential(λ). Justify the following two

More information

College of information technology Department of software

College of information technology Department of software University of Babylon Undergraduate: third class College of information technology Department of software Subj.: Application of AI lecture notes/2011-2012 ***************************************************************************

More information

A Simple Inventory System

A Simple Inventory System A Simple Inventory System Section 1.3 Discrete-Event Simulation: A First Course Section 1.3: A Simple Inventory System customers. demand items.. facility. order items.. supplier Distributes items from

More information

www.pioneermathematics.com

www.pioneermathematics.com Problems and Solutions: INMO-2012 1. Let ABCD be a quadrilateral inscribed in a circle. Suppose AB = 2+ 2 and AB subtends 135 at the centre of the circle. Find the maximum possible area of ABCD. Solution:

More information

VEHICLE IDENTIFICATION, SERIAL NUMBER FRAME STAMP AND VEHICLE DATA PLATE LOCATIONS

VEHICLE IDENTIFICATION, SERIAL NUMBER FRAME STAMP AND VEHICLE DATA PLATE LOCATIONS TAYLOR-DUNN 2114 WEST BALL ROAD ANAHEIM, CA 92804 DOCUMENT #: BUL-08-02-004 DATE: 2/14/2008 REVISION: A VEHICLE IDENTIFICATION, SERIAL NUMBER FRAME STAMP AND VEHICLE DATA PLATE LOCATIONS This document

More information

Planar Graphs. Complement to Chapter 2, The Villas of the Bellevue

Planar Graphs. Complement to Chapter 2, The Villas of the Bellevue Planar Graphs Complement to Chapter 2, The Villas of the Bellevue In the chapter The Villas of the Bellevue, Manori gives Courtel the following definition. Definition A graph is planar if it can be drawn

More information

4. How many integers between 2004 and 4002 are perfect squares?

4. How many integers between 2004 and 4002 are perfect squares? 5 is 0% of what number? What is the value of + 3 4 + 99 00? (alternating signs) 3 A frog is at the bottom of a well 0 feet deep It climbs up 3 feet every day, but slides back feet each night If it started

More information

You must have: Ruler graduated in centimetres and millimetres, protractor, compasses, pen, HB pencil, eraser, calculator. Tracing paper may be used.

You must have: Ruler graduated in centimetres and millimetres, protractor, compasses, pen, HB pencil, eraser, calculator. Tracing paper may be used. Write your name here Surname Other names Edexcel IGCSE Centre Number Mathematics A Paper 3H Monday 6 June 2011 Afternoon Time: 2 hours Candidate Number Higher Tier Paper Reference 4MA0/3H You must have:

More information

TEST A CHAPTER 6, EQUATIONS, INEQUALITIES, PROBLEM SOLVING. 1. Factor x 2-5x + 6. 2. Factor x 2-4x - 5.

TEST A CHAPTER 6, EQUATIONS, INEQUALITIES, PROBLEM SOLVING. 1. Factor x 2-5x + 6. 2. Factor x 2-4x - 5. TEST A CHAPTER 6, EQUATIONS, INEQUALITIES, PROBLEM SOLVING. Factor x 2-5x + 6. 2. Factor x 2-4x - 5. 3. Solve: (x + 2)(x - 3) = 0 x(x - 3)(x + 4) = 0 4. Solve by factoring: x 2 + x + 2 = 0. 5. Solve by

More information

MasterofAppliedScienceinInformationTechnology DepartmentofComputerScience 31stMay1997 RMIT

MasterofAppliedScienceinInformationTechnology DepartmentofComputerScience 31stMay1997 RMIT thatadaptstobinaryandrealcodedoperators. AHybridGeneticAlgorithm Aminorthesissubmittedinpartialfulllment oftherequirementsforthedegreeof GeoreyWayneWOODS by MasterofAppliedScienceinInformationTechnology

More information

Lab 4: 26 th March 2012. Exercise 1: Evolutionary algorithms

Lab 4: 26 th March 2012. Exercise 1: Evolutionary algorithms Lab 4: 26 th March 2012 Exercise 1: Evolutionary algorithms 1. Found a problem where EAs would certainly perform very poorly compared to alternative approaches. Explain why. Suppose that we want to find

More information

HOMEBANKING ISSUE WITH INTERNET EXPLORER

HOMEBANKING ISSUE WITH INTERNET EXPLORER HOMEBANKING ISSUE WITH INTERNET EXPLORER Internet Explorer has made a change in their latest upgrade that has caused an issue when viewing balances and histories in Homebanking. If you are able to log

More information

1MA0/4H Edexcel GCSE Mathematics (Linear) 1MA0 Practice Paper 4H (Calculator) Set A Higher Tier Time: 1 hour 45 minutes

1MA0/4H Edexcel GCSE Mathematics (Linear) 1MA0 Practice Paper 4H (Calculator) Set A Higher Tier Time: 1 hour 45 minutes 1MA0/4H Edexcel GCSE Mathematics (Linear) 1MA0 Practice Paper 4H (Calculator) Set A Higher Tier Time: 1 hour 45 minutes Materials required for examination Ruler graduated in centimetres and millimetres,

More information

Most popular response to

Most popular response to Class #33 Most popular response to What did the students want to prove? The angle bisectors of a square meet at a point. A square is a convex quadrilateral in which all sides are congruent and all angles

More information

Algorithms and Data Structures Written Exam Proposed SOLUTION

Algorithms and Data Structures Written Exam Proposed SOLUTION Algorithms and Data Structures Written Exam Proposed SOLUTION 2005-01-07 from 09:00 to 13:00 Allowed tools: A standard calculator. Grading criteria: You can get at most 30 points. For an E, 15 points are

More information

Homework # 3 Solutions

Homework # 3 Solutions Homework # 3 Solutions February, 200 Solution (2.3.5). Noting that and ( + 3 x) x 8 = + 3 x) by Equation (2.3.) x 8 x 8 = + 3 8 by Equations (2.3.7) and (2.3.0) =3 x 8 6x2 + x 3 ) = 2 + 6x 2 + x 3 x 8

More information

Master s Theory Exam Spring 2006

Master s Theory Exam Spring 2006 Spring 2006 This exam contains 7 questions. You should attempt them all. Each question is divided into parts to help lead you through the material. You should attempt to complete as much of each problem

More information

Algebra 1 Course Information

Algebra 1 Course Information Course Information Course Description: Students will study patterns, relations, and functions, and focus on the use of mathematical models to understand and analyze quantitative relationships. Through

More information

Baltic Way 1995. Västerås (Sweden), November 12, 1995. Problems and solutions

Baltic Way 1995. Västerås (Sweden), November 12, 1995. Problems and solutions Baltic Way 995 Västerås (Sweden), November, 995 Problems and solutions. Find all triples (x, y, z) of positive integers satisfying the system of equations { x = (y + z) x 6 = y 6 + z 6 + 3(y + z ). Solution.

More information

Everybody is in the cloud. But not in yours! TGA Systems. Specialized in private cloud communication

Everybody is in the cloud. But not in yours! TGA Systems. Specialized in private cloud communication Everybody is in the cloud. But not in yours! TGA Systems. Specialized in private cloud communication Quality is no happenstance! It is the result of careful planning, paired with innovative technology

More information

Chapter 8 Geometry We will discuss following concepts in this chapter.

Chapter 8 Geometry We will discuss following concepts in this chapter. Mat College Mathematics Updated on Nov 5, 009 Chapter 8 Geometry We will discuss following concepts in this chapter. Two Dimensional Geometry: Straight lines (parallel and perpendicular), Rays, Angles

More information

Limits and Continuity

Limits and Continuity Math 20C Multivariable Calculus Lecture Limits and Continuity Slide Review of Limit. Side limits and squeeze theorem. Continuous functions of 2,3 variables. Review: Limits Slide 2 Definition Given a function

More information

March 29, 2011. 171S4.4 Theorems about Zeros of Polynomial Functions

March 29, 2011. 171S4.4 Theorems about Zeros of Polynomial Functions MAT 171 Precalculus Algebra Dr. Claude Moore Cape Fear Community College CHAPTER 4: Polynomial and Rational Functions 4.1 Polynomial Functions and Models 4.2 Graphing Polynomial Functions 4.3 Polynomial

More information

Arithmetic Coding: Introduction

Arithmetic Coding: Introduction Data Compression Arithmetic coding Arithmetic Coding: Introduction Allows using fractional parts of bits!! Used in PPM, JPEG/MPEG (as option), Bzip More time costly than Huffman, but integer implementation

More information

USING THE EVOLUTION STRATEGIES' SELF-ADAPTATION MECHANISM AND TOURNAMENT SELECTION FOR GLOBAL OPTIMIZATION

USING THE EVOLUTION STRATEGIES' SELF-ADAPTATION MECHANISM AND TOURNAMENT SELECTION FOR GLOBAL OPTIMIZATION 1 USING THE EVOLUTION STRATEGIES' SELF-ADAPTATION MECHANISM AND TOURNAMENT SELECTION FOR GLOBAL OPTIMIZATION EFRÉN MEZURA-MONTES AND CARLOS A. COELLO COELLO Evolutionary Computation Group at CINVESTAV-IPN

More information

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. Exam Name MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) The JDK command to compile a class in the file Test.java is A) java Test.java B) java

More information

Chapter 8 - Power Density Spectrum

Chapter 8 - Power Density Spectrum EE385 Class Notes 8/8/03 John Stensby Chapter 8 - Power Density Spectrum Let X(t) be a WSS random process. X(t) has an average power, given in watts, of E[X(t) ], a constant. his total average power is

More information

The Heat Equation. Lectures INF2320 p. 1/88

The Heat Equation. Lectures INF2320 p. 1/88 The Heat Equation Lectures INF232 p. 1/88 Lectures INF232 p. 2/88 The Heat Equation We study the heat equation: u t = u xx for x (,1), t >, (1) u(,t) = u(1,t) = for t >, (2) u(x,) = f(x) for x (,1), (3)

More information

GA as a Data Optimization Tool for Predictive Analytics

GA as a Data Optimization Tool for Predictive Analytics GA as a Data Optimization Tool for Predictive Analytics Chandra.J 1, Dr.Nachamai.M 2,Dr.Anitha.S.Pillai 3 1Assistant Professor, Department of computer Science, Christ University, Bangalore,India, chandra.j@christunivesity.in

More information

Hoover High School Math League. Counting and Probability

Hoover High School Math League. Counting and Probability Hoover High School Math League Counting and Probability Problems. At a sandwich shop there are 2 kinds of bread, 5 kinds of cold cuts, 3 kinds of cheese, and 2 kinds of dressing. How many different sandwiches

More information

The Applications of Genetic Algorithms in Stock Market Data Mining Optimisation

The Applications of Genetic Algorithms in Stock Market Data Mining Optimisation The Applications of Genetic Algorithms in Stock Market Data Mining Optimisation Li Lin, Longbing Cao, Jiaqi Wang, Chengqi Zhang Faculty of Information Technology, University of Technology, Sydney, NSW

More information

Certificate Authorities and Public Keys. How they work and 10+ ways to hack them.

Certificate Authorities and Public Keys. How they work and 10+ ways to hack them. Certificate Authorities and Public Keys How they work and 10+ ways to hack them. -- FoxGuard Solutions Www.FoxGuardSolutions.com melkins@foxguardsolutions.com Version.05 9/2012 1 Certificate Use Overview

More information

AS part of the development process, software needs to

AS part of the development process, software needs to Dynamic White-Box Software Testing using a Recursive Hybrid Evolutionary Strategy/Genetic Algorithm Ashwin Panchapakesan, Graduate Student Member, Rami Abielmona, Senior Member, IEEE, and Emil Petriu,

More information

A binary search tree is a binary tree with a special property called the BST-property, which is given as follows:

A binary search tree is a binary tree with a special property called the BST-property, which is given as follows: Chapter 12: Binary Search Trees A binary search tree is a binary tree with a special property called the BST-property, which is given as follows: For all nodes x and y, if y belongs to the left subtree

More information

Sample Test Questions

Sample Test Questions mathematics College Algebra Geometry Trigonometry Sample Test Questions A Guide for Students and Parents act.org/compass Note to Students Welcome to the ACT Compass Sample Mathematics Test! You are about

More information

OPTIMAL SELECTION BASED ON RELATIVE RANK* (the "Secretary Problem")

OPTIMAL SELECTION BASED ON RELATIVE RANK* (the Secretary Problem) OPTIMAL SELECTION BASED ON RELATIVE RANK* (the "Secretary Problem") BY Y. S. CHOW, S. MORIGUTI, H. ROBBINS AND S. M. SAMUELS ABSTRACT n rankable persons appear sequentially in random order. At the ith

More information

Guidance produced jointly by BIS, the UK Association of Notified Bodies and. March 2014

Guidance produced jointly by BIS, the UK Association of Notified Bodies and. March 2014 LEIA TECHNICAL GUIDANCE NOTE No. 25 The Lifts Regulations 1997 (SI 1997 No. 831) Schedule 1, Essential Health and Safety Requirement (EHSR) 2.2; Guidance on application and on applying to BIS for derogation.

More information

Solutions of Equations in One Variable. Fixed-Point Iteration II

Solutions of Equations in One Variable. Fixed-Point Iteration II Solutions of Equations in One Variable Fixed-Point Iteration II Numerical Analysis (9th Edition) R L Burden & J D Faires Beamer Presentation Slides prepared by John Carroll Dublin City University c 2011

More information

f(x) = g(x), if x A h(x), if x B.

f(x) = g(x), if x A h(x), if x B. 1. Piecewise Functions By Bryan Carrillo, University of California, Riverside We can create more complicated functions by considering Piece-wise functions. Definition: Piecewise-function. A piecewise-function

More information

SAT Math Facts & Formulas Review Quiz

SAT Math Facts & Formulas Review Quiz Test your knowledge of SAT math facts, formulas, and vocabulary with the following quiz. Some questions are more challenging, just like a few of the questions that you ll encounter on the SAT; these questions

More information

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS TEST DESIGN AND FRAMEWORK September 2014 Authorized for Distribution by the New York State Education Department This test design and framework document

More information

hp calculators HP 12C Net Present Value Cash flow and NPV calculations Cash flow diagrams The HP12C cash flow approach Practice solving NPV problems

hp calculators HP 12C Net Present Value Cash flow and NPV calculations Cash flow diagrams The HP12C cash flow approach Practice solving NPV problems Cash flow and NPV calculations Cash flow diagrams The HP12C cash flow approach Practice solving NPV problems How to modify cash flow entries Cash Flow and NPV calculations Cash flow analysis is an extension

More information

ALGEBRA 2 CRA 2 REVIEW - Chapters 1-6 Answer Section

ALGEBRA 2 CRA 2 REVIEW - Chapters 1-6 Answer Section ALGEBRA 2 CRA 2 REVIEW - Chapters 1-6 Answer Section MULTIPLE CHOICE 1. ANS: C 2. ANS: A 3. ANS: A OBJ: 5-3.1 Using Vertex Form SHORT ANSWER 4. ANS: (x + 6)(x 2 6x + 36) OBJ: 6-4.2 Solving Equations by

More information

Tikesh Ramtohul WWZ, University of Basel 19 th June 2009 (COMISEF workshop, Birkbeck College, London)

Tikesh Ramtohul WWZ, University of Basel 19 th June 2009 (COMISEF workshop, Birkbeck College, London) Tikesh Ramtohul WWZ, University of Basel 19 th June 2009 (COMISEF workshop, Birkbeck College, London) T.Ramtohul : An Automated Trading System based on Recurrent Reinforcement Learning, Birkbeck College,

More information

Summary. Instructions HBK EL-505, INJURY COMPENSATION, DECEMBER 1995 FORMS

Summary. Instructions HBK EL-505, INJURY COMPENSATION, DECEMBER 1995 FORMS OWCP Form CA-3 Instructions Report of Termination of Disability and/or Payment Summary Purpose The purpose of this form is to notify the OWCP of the following: a. Disability from injury or illness has

More information

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE Subodha Kumar University of Washington subodha@u.washington.edu Varghese S. Jacob University of Texas at Dallas vjacob@utdallas.edu

More information

CHAPTER 18 Programming Your App to Make Decisions: Conditional Blocks

CHAPTER 18 Programming Your App to Make Decisions: Conditional Blocks CHAPTER 18 Programming Your App to Make Decisions: Conditional Blocks Figure 18-1. Computers, even small ones like the phone in your pocket, are good at performing millions of operations in a single second.

More information

a b c d e You have two hours to do this exam. Please write your name on this page, and at the top of page three. GOOD LUCK! 3. a b c d e 12.

a b c d e You have two hours to do this exam. Please write your name on this page, and at the top of page three. GOOD LUCK! 3. a b c d e 12. MA123 Elem. Calculus Fall 2015 Exam 2 2015-10-22 Name: Sec.: Do not remove this answer page you will turn in the entire exam. No books or notes may be used. You may use an ACT-approved calculator during

More information

ALGEBRA I (Common Core) Thursday, January 28, 2016 1:15 to 4:15 p.m., only

ALGEBRA I (Common Core) Thursday, January 28, 2016 1:15 to 4:15 p.m., only ALGEBRA I (COMMON CORE) The University of the State of New York REGENTS HIGH SCHOOL EXAMINATION ALGEBRA I (Common Core) Thursday, January 28, 2016 1:15 to 4:15 p.m., only Student Name: School Name: The

More information

Cambridge International Examinations Cambridge International General Certifi cate of Secondary Education

Cambridge International Examinations Cambridge International General Certifi cate of Secondary Education Cambridge International Examinations Cambridge International General Certifi cate of Secondary Education *3753884750* MATHEMATICS 0580/23 Paper 2 (Extended) May/June 2014 1 hour 30 minutes Candidates answer

More information

ECONOMIC GENERATION AND SCHEDULING OF POWER BY GENETIC ALGORITHM

ECONOMIC GENERATION AND SCHEDULING OF POWER BY GENETIC ALGORITHM ECONOMIC GENERATION AND SCHEDULING OF POWER BY GENETIC ALGORITHM RAHUL GARG, 2 A.K.SHARMA READER, DEPARTMENT OF ELECTRICAL ENGINEERING, SBCET, JAIPUR (RAJ.) 2 ASSOCIATE PROF, DEPARTMENT OF ELECTRICAL ENGINEERING,

More information

Boolean Algebra (cont d) UNIT 3 BOOLEAN ALGEBRA (CONT D) Guidelines for Multiplying Out and Factoring. Objectives. Iris Hui-Ru Jiang Spring 2010

Boolean Algebra (cont d) UNIT 3 BOOLEAN ALGEBRA (CONT D) Guidelines for Multiplying Out and Factoring. Objectives. Iris Hui-Ru Jiang Spring 2010 Boolean Algebra (cont d) 2 Contents Multiplying out and factoring expressions Exclusive-OR and Exclusive-NOR operations The consensus theorem Summary of algebraic simplification Proving validity of an

More information

Subject Access Request Form Data Protection Act 1998 Application for Access to Personal Information. December 2013

Subject Access Request Form Data Protection Act 1998 Application for Access to Personal Information. December 2013 Subject Access Request Form Data Protection Act 1998 Application for Access to Personal Information December 2013 CONTACTS Please return this completed form to: Information Governance Digital Services

More information

The Utah Basic Skills Competency Test Framework Mathematics Content and Sample Questions

The Utah Basic Skills Competency Test Framework Mathematics Content and Sample Questions The Utah Basic Skills Competency Test Framework Mathematics Content and Questions Utah law (53A-1-611) requires that all high school students pass The Utah Basic Skills Competency Test in order to receive

More information

ON CERTAIN DOUBLY INFINITE SYSTEMS OF CURVES ON A SURFACE

ON CERTAIN DOUBLY INFINITE SYSTEMS OF CURVES ON A SURFACE i93 c J SYSTEMS OF CURVES 695 ON CERTAIN DOUBLY INFINITE SYSTEMS OF CURVES ON A SURFACE BY C H. ROWE. Introduction. A system of co 2 curves having been given on a surface, let us consider a variable curvilinear

More information

San Jose Math Circle April 25 - May 2, 2009 ANGLE BISECTORS

San Jose Math Circle April 25 - May 2, 2009 ANGLE BISECTORS San Jose Math Circle April 25 - May 2, 2009 ANGLE BISECTORS Recall that the bisector of an angle is the ray that divides the angle into two congruent angles. The most important results about angle bisectors

More information

LAB : PAPER PET GENETICS. male (hat) female (hair bow) Skin color green or orange Eyes round or square Nose triangle or oval Teeth pointed or square

LAB : PAPER PET GENETICS. male (hat) female (hair bow) Skin color green or orange Eyes round or square Nose triangle or oval Teeth pointed or square Period Date LAB : PAPER PET GENETICS 1. Given the list of characteristics below, you will create an imaginary pet and then breed it to review the concepts of genetics. Your pet will have the following

More information

2015 Chapter Competition Solutions

2015 Chapter Competition Solutions 05 Chapter Competition Solutions Are you wondering how we could have possibly thought that a Mathlete would be able to answer a particular Sprint Round problem without a calculator? Are you wondering how

More information

Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province

Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province Ran Cao 1,1, Yushu Yang 1, Wei Guo 1, 1 Engineering college of Northeast Agricultural University, Haerbin, China

More information

Performance Measures for Machine Learning

Performance Measures for Machine Learning Performance Measures for Machine Learning 1 Performance Measures Accuracy Weighted (Cost-Sensitive) Accuracy Lift Precision/Recall F Break Even Point ROC ROC Area 2 Accuracy Target: 0/1, -1/+1, True/False,

More information

A Genetic Algorithm Processor Based on Redundant Binary Numbers (GAPBRBN)

A Genetic Algorithm Processor Based on Redundant Binary Numbers (GAPBRBN) ISSN: 2278 1323 All Rights Reserved 2014 IJARCET 3910 A Genetic Algorithm Processor Based on Redundant Binary Numbers (GAPBRBN) Miss: KIRTI JOSHI Abstract A Genetic Algorithm (GA) is an intelligent search

More information

Large induced subgraphs with all degrees odd

Large induced subgraphs with all degrees odd Large induced subgraphs with all degrees odd A.D. Scott Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, England Abstract: We prove that every connected graph of order

More information

Taylor and Maclaurin Series

Taylor and Maclaurin Series Taylor and Maclaurin Series In the preceding section we were able to find power series representations for a certain restricted class of functions. Here we investigate more general problems: Which functions

More information

Real Roots of Univariate Polynomials with Real Coefficients

Real Roots of Univariate Polynomials with Real Coefficients Real Roots of Univariate Polynomials with Real Coefficients mostly written by Christina Hewitt March 22, 2012 1 Introduction Polynomial equations are used throughout mathematics. When solving polynomials

More information

Random Variate Generation (Part 3)

Random Variate Generation (Part 3) Random Variate Generation (Part 3) Dr.Çağatay ÜNDEĞER Öğretim Görevlisi Bilkent Üniversitesi Bilgisayar Mühendisliği Bölümü &... e-mail : cagatay@undeger.com cagatay@cs.bilkent.edu.tr Bilgisayar Mühendisliği

More information

Near Optimal Solutions

Near Optimal Solutions Near Optimal Solutions Many important optimization problems are lacking efficient solutions. NP-Complete problems unlikely to have polynomial time solutions. Good heuristics important for such problems.

More information

Hybrid Evolution of Heterogeneous Neural Networks

Hybrid Evolution of Heterogeneous Neural Networks Hybrid Evolution of Heterogeneous Neural Networks 01001110 01100101 01110101 01110010 01101111 01101110 01101111 01110110 01100001 00100000 01110011 01101011 01110101 01110000 01101001 01101110 01100001

More information

16 21 Linear vs. Exponential.notebook May 14, 2014. LT 1c: I can compare linear vs. exponential change.

16 21 Linear vs. Exponential.notebook May 14, 2014. LT 1c: I can compare linear vs. exponential change. LT 1c: I can compare linear vs. exponential change. The Situation: You have $1,000 saved. Now, you need to figure out which bank you want to invest your money in. You can choose from the following two

More information

Software Development. Chapter 7. Outline. 7.1.1 The Waterfall Model RISKS. Java By Abstraction Chapter 7

Software Development. Chapter 7. Outline. 7.1.1 The Waterfall Model RISKS. Java By Abstraction Chapter 7 Outline Chapter 7 Software Development 7.1 The Development Process 7.1.1 The Waterfall Model 7.1.2 The Iterative Methodology 7.1.3 Elements of UML 7.2 Software Testing 7.2.1 The Essence of Testing 7.2.2

More information

Quadrilateral Geometry. Varignon s Theorem I. Proof 10/21/2011 S C. MA 341 Topics in Geometry Lecture 19

Quadrilateral Geometry. Varignon s Theorem I. Proof 10/21/2011 S C. MA 341 Topics in Geometry Lecture 19 Quadrilateral Geometry MA 341 Topics in Geometry Lecture 19 Varignon s Theorem I The quadrilateral formed by joining the midpoints of consecutive sides of any quadrilateral is a parallelogram. PQRS is

More information

A Brief Study of the Nurse Scheduling Problem (NSP)

A Brief Study of the Nurse Scheduling Problem (NSP) A Brief Study of the Nurse Scheduling Problem (NSP) Lizzy Augustine, Morgan Faer, Andreas Kavountzis, Reema Patel Submitted Tuesday December 15, 2009 0. Introduction and Background Our interest in the

More information

FEGYVERNEKI SÁNDOR, PROBABILITY THEORY AND MATHEmATICAL

FEGYVERNEKI SÁNDOR, PROBABILITY THEORY AND MATHEmATICAL FEGYVERNEKI SÁNDOR, PROBABILITY THEORY AND MATHEmATICAL STATIsTICs 4 IV. RANDOm VECTORs 1. JOINTLY DIsTRIBUTED RANDOm VARIABLEs If are two rom variables defined on the same sample space we define the joint

More information

TAKE-AWAY GAMES. ALLEN J. SCHWENK California Institute of Technology, Pasadena, California INTRODUCTION

TAKE-AWAY GAMES. ALLEN J. SCHWENK California Institute of Technology, Pasadena, California INTRODUCTION TAKE-AWAY GAMES ALLEN J. SCHWENK California Institute of Technology, Pasadena, California L INTRODUCTION Several games of Tf take-away?f have become popular. The purpose of this paper is to determine the

More information

Decision Mathematics D1 Advanced/Advanced Subsidiary. Tuesday 5 June 2007 Afternoon Time: 1 hour 30 minutes

Decision Mathematics D1 Advanced/Advanced Subsidiary. Tuesday 5 June 2007 Afternoon Time: 1 hour 30 minutes Paper Reference(s) 6689/01 Edexcel GCE Decision Mathematics D1 Advanced/Advanced Subsidiary Tuesday 5 June 2007 Afternoon Time: 1 hour 30 minutes Materials required for examination Nil Items included with

More information

A Robust Method for Solving Transcendental Equations

A Robust Method for Solving Transcendental Equations www.ijcsi.org 413 A Robust Method for Solving Transcendental Equations Md. Golam Moazzam, Amita Chakraborty and Md. Al-Amin Bhuiyan Department of Computer Science and Engineering, Jahangirnagar University,

More information

SIMS 255 Foundations of Software Design. Complexity and NP-completeness

SIMS 255 Foundations of Software Design. Complexity and NP-completeness SIMS 255 Foundations of Software Design Complexity and NP-completeness Matt Welsh November 29, 2001 mdw@cs.berkeley.edu 1 Outline Complexity of algorithms Space and time complexity ``Big O'' notation Complexity

More information

CASCADING IF-ELSE. Cascading if-else Semantics. What the computer executes: What is the truth value 1? 3. Execute path 1 What is the truth value 2?

CASCADING IF-ELSE. Cascading if-else Semantics. What the computer executes: What is the truth value 1? 3. Execute path 1 What is the truth value 2? CASCADING IF-ELSE A cascading if- is a composite of if- statements where the false path of the outer statement is a nested if- statement. The nesting can continue to several levels. Cascading if- Syntax

More information

STCE. Fast Delta-Estimates for American Options by Adjoint Algorithmic Differentiation

STCE. Fast Delta-Estimates for American Options by Adjoint Algorithmic Differentiation Fast Delta-Estimates for American Options by Adjoint Algorithmic Differentiation Jens Deussen Software and Tools for Computational Engineering RWTH Aachen University 18 th European Workshop on Automatic

More information

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Journal of Al-Nahrain University Vol.15 (2), June, 2012, pp.161-168 Science Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Manal F. Younis Computer Department, College

More information

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,

More information

PCHS ALGEBRA PLACEMENT TEST

PCHS ALGEBRA PLACEMENT TEST MATHEMATICS Students must pass all math courses with a C or better to advance to the next math level. Only classes passed with a C or better will count towards meeting college entrance requirements. If

More information

Chapter 7. Functions and onto. 7.1 Functions

Chapter 7. Functions and onto. 7.1 Functions Chapter 7 Functions and onto This chapter covers functions, including function composition and what it means for a function to be onto. In the process, we ll see what happens when two dissimilar quantifiers

More information

2010 Solutions. a + b. a + b 1. (a + b)2 + (b a) 2. (b2 + a 2 ) 2 (a 2 b 2 ) 2

2010 Solutions. a + b. a + b 1. (a + b)2 + (b a) 2. (b2 + a 2 ) 2 (a 2 b 2 ) 2 00 Problem If a and b are nonzero real numbers such that a b, compute the value of the expression ( ) ( b a + a a + b b b a + b a ) ( + ) a b b a + b a +. b a a b Answer: 8. Solution: Let s simplify the

More information

Triangle deletion. Ernie Croot. February 3, 2010

Triangle deletion. Ernie Croot. February 3, 2010 Triangle deletion Ernie Croot February 3, 2010 1 Introduction The purpose of this note is to give an intuitive outline of the triangle deletion theorem of Ruzsa and Szemerédi, which says that if G = (V,

More information

Algorithms. Margaret M. Fleck. 18 October 2010

Algorithms. Margaret M. Fleck. 18 October 2010 Algorithms Margaret M. Fleck 18 October 2010 These notes cover how to analyze the running time of algorithms (sections 3.1, 3.3, 4.4, and 7.1 of Rosen). 1 Introduction The main reason for studying big-o

More information

Text-to-Speech and Read Aloud Decision Guidelines Page 1

Text-to-Speech and Read Aloud Decision Guidelines Page 1 Text-to-Speech and Read Aloud Decision Guidelines Page 1 Guidelines for Choosing Text-to-Speech or Read Aloud for Smarter Balanced ELA Summative and Interim Assessment Reading Passages for Students with

More information

Number of objects. 16 32 64 128 256 512 1k 2k 4k 8k 16k 32k 64k 128k256k512k 1m 2m 4m 8m

Number of objects. 16 32 64 128 256 512 1k 2k 4k 8k 16k 32k 64k 128k256k512k 1m 2m 4m 8m GarbageCollectionforLargeMemoryJava AndreasKrallandPhilippTomsich Applications InstitutfurComputersprachen,TechnischeUniversitatWien Argentinierstrae8,A{1040Wien,Austria tolarge,data-intensivescienticapplicationsallocatingmemoryinthe

More information

OPTIMIZATION PROBLEM FORMULATION AND SOLUTION TECHNIQUES

OPTIMIZATION PROBLEM FORMULATION AND SOLUTION TECHNIQUES V OPTIMIZATION PROBLEM FORMULATION AND SOLUTION TECHNIQUES 5.1 Introduction There are many cases in practical applications where the variables of optimization are not continuous. Some or all of the variables

More information

Lecture 24: Saccheri Quadrilaterals

Lecture 24: Saccheri Quadrilaterals Lecture 24: Saccheri Quadrilaterals 24.1 Saccheri Quadrilaterals Definition In a protractor geometry, we call a quadrilateral ABCD a Saccheri quadrilateral, denoted S ABCD, if A and D are right angles

More information