teaching statement 2019 - penn engineeringrahulm/papers/... · teaching statement rahul mangharam...

Post on 28-Jun-2020

18 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

TeachingStatement

RahulMangharamhttp://www.seas.upenn.edu/~rahulm/teaching/

Myteachinggoalmirrorsmyinter-disciplinaryapproachtowardsresearch:Iaimtoensurethatstudentscultivate a holistic view of life-critical and safety-critical system development by drawing strongerconnections between real-time and embedded systems, control systems, formal methods and hands-onplatform development. I design courses that have a significant experimental component, where studentsworkinteamstodevelopsizabledistributedembeddedsystemsthatintegrateconceptsacrosselectricalandcomputerengineering,computerscience,bioengineeringandmechanicalengineering.Theseincludebuildingtest-beds for energy-efficientbuildingheating/cooling systems, electric vehiclepowertrain systems,Heart-on-a-Chipmedicaldevices,biofeedbackcontrolsystemsandleader-followerquadrotoraircraftsystems1.

By emphasizing learning by doing, I aim to develop students’ confidence in deconstructing a designproblem, iterating over several inefficient designs, presenting intermediate results, and incorporatingcreativity in engineering solutions. In following this design-driven approach, every student is continuallymakingdecisionsonhowtopartitionfunctionalitytodifferentsub-systems,howtokeepthingssimple,howtodefinecleanandgenericinterfacesathardware/softwareboundariesandfinallyhowtodemonstratethecoreideaswithintheoperationalsysteminaneffectiveway.Thisemphasisondevelopinghands-oncriticalthinkingskillsformsthebedrockofmyteachingapproach.

Intherestofthisstatement,IwillsummarizetheAutonomousSystems,EmbeddedSystemsandModel-basedEmbeddedSystemscoursesIhavedevelopedatPennanddiscussplansforabroadercurriculumonModel-basedDesignofSystems. Iwilldescribemyefforts indevelopingcross-schoolcollaborationswithinPenn,studentand facultybased teachingevents,andestablishingPennasarecognized forceacrossglobalengineeringcommunities.

A.DevelopingEmbeddedSystemsProgramsatPenn

Since2008,Ihavebeenpartofthefoundingcommitteeforestablishingtheembeddedsystemscurriculumat Penn through the development of the Computer Engineering (CMPE) undergraduate program and,separately,theMastersinEmbeddedSystems(EMBS)program(1stsuchprograminthenation).Since2015,Ihave served as the EMBS Program Director. Both programs have been tremendously popular, with highqualitystudents.EmbeddedSystemsgraduates,whowereundermysupervision,duringandaftertakingmycourses, have gone on to pursue graduate studies in Stanford (Kevin Conley and Jeff Kiske), Georgia Tech(MattHale),Duke(AshleighThomas),UCLA(PaulMartin),CMU(UtsavDrolia),MIT(MaxLi),amongothers.

Priorto2008,veryfewtechnologycompaniesrecruitedfromtheESEDepartmentandthathaschangedtremendously with both programs. Students joined SpaceX, Tesla Motors, NASA (Langley), GoogleX Labs,BOSCHResearch, Intel, Nvidia, Qualcomm, etc. Students graduating from the Autonomous Systems coursewereverysuccessful ingettingtopplacementsinTeslaAutoPilotgroup,Honda’sandNvidia’sAutonomousVehicles group, Rivian’s electric drivetrain group, Aurora’s and Zoox’smotion planning and control team,nuro’s software infrastructure team, among others. This is a testament that the students are nationallycompetentwithabroadanddeepskillsetofmodel-basedanddata-drivensystemdesign.

Throughthe60+undergraduatesand80+MastersstudentsthatIhaveadvised,Ihavecometoappreciatethe need to balance theory and skill development. As we refined the curriculum, our goal was to ensurestudentsnot only get solid foundations inbecoming “PlatformArchitects” across the computing stack, butalsobecameskilled in“SystemsThinking” fordebugginganddevelopingcomplexsystemswithperception,planningandcontrolpipelines.B.AutonomousSystemsCurriculumDevelopment

Inordertofacilitateresearchandeducationinautonomoussystems,Idevelopedanopen-sourceresearchplatformofhigh-performanceautonomousracingcarsthatare1/10th-scaleofFormula-1carsandcanreacha top speed of 50mph. F1/10 [http://f1tenth.org/] enables awide range ofmachine learning engineeringwith perception, planning, control and coordination modules. In addition to the platform hardware, my

1ForareallyexcitingcompilationofESE350projectvideos,seehttp://tinyurl.com/ese350videos

teachingteamdevelopedanAVsoftwarestackandasetofsimulatorsasplug-and-playreplacementsforthe1/10th-scaleplatformitself.Thecoursecoversfivemodulesandincludethreeracesforevaluation:

1.IntroductiontoROS,F1/10&theSimulator:Introductiontoself-drivinghardwareandfullsoftwarestack,automatic emergency braking, LiDAR, rigid body transformations, Laplace domain dynamics, and PIDcontrolforwallfollowing.

2. Driving using Reactive Methods & RACE!: Build a vehicle, tune the electronic speed controller, andimplementreactivedrivingmethodssuchas‘followthegap’andcompleteRace1.

3. AVMapping& Localization: Understand the key elements of SLAMby implementing scanmatching andparticle filters; use Google Cartographer SLAM; implement pure pursuit driving; complete Race 2 usingmaps.

4. AV Planning: Learn Moral Decision Making for autonomous systems; implement planning with rapidlyexploring random trees (RRT), and understanding model-predictive control (MPC) for racelineoptimization.

5. Learning & Vision: Design and implement algorithms for object detection and pose estimation,reinforcementlearningandvisualfeatureextraction.

6. F1/10 Grand Prix: Race 3 will include a project to implement racing strategies which combine fastperception,agileplanningandaggressivecontrolforraceoptimization.

In addition to teaching the course at Penn, we have organized 5 international autonomous racing

competitionsformulti-vehicleracing.Threemoreraceshavebeenscheduledfor2020atCPSweek(SydneyinApril),IFACWorldCongress(BerlininJuly)andEmbeddedSystemsWeek(ShanghaiinOctober).Thecoursehadbeenopen-sourcedandnow isbeing taught at severaluniversities including:OregonStateUniversity,UVA,N.ArizonaUniversity, ClemsonUniversity,UTAustin, TUVienna, etc. F1/10has over59+universitycommunitypartnersforresearchandeducation.Itissupportedbya$1.5MMNSFCISECommunityResearchInfrastructureawardand industrialpartnerssuchasNational Instruments,Nvidia, Intel,etc.Drivingat thelimitsofvehicleperformancehelpsusacceleratethedevelopmentofsafeautonomousvehicles.C.ESE350IntroductiontoEmbeddedSystems

Thiscourseintroducestheuseofmicrocontrollers,sensorsandactuatorsinbuildingreal-timeembeddedsystems that interactwith thephysicalworld.Withanapproach focusedheavilyon learningbydoing, thelabsaredesignedtobeinteractive,fun,yetchallenging.Thestudentsbuild:• ArduinofromScratch–inthefirst2weeksstudentsbuildtheentireArduinoonabreadboardandare

introducedtopowermanagement,bootloaders,memorylayouts,andcircuitswithover36components• Build a musical instrument with Sensors and actuators - to learn timers, analog-to-digital conversion

interrupts,analogcircuits• InteractiveHand-heldPongGameSystem–learntointerfacetouchscreens,LCDsandmotionsensorsto

makeafunandinteractivegamesystem• BalanceBot-developaself-balancingbotusingsteppermotors,motordrivers,anIMUandinterfaceit

withaZigbeewirelessremote.Implementcontrolsforstabilityandpositioncontrolandrace!

The lab exercises beginwithwell-defined instructionswhere the students initially program the 16-bit

microcontrollers hardware in C at the bare metal. The labs progressively get more open-ended and thestudents’ progress to use programming libraries and eventually work with embedded operating system(using32-bitARMmultiprocessors).Thisensuresthebasicsofhardware-softwareinterfacesarelearned,andallowthestudentstograduallyabstractawaythelow-leveldetailsformoresystem-widethinking.

Thefinal4weeksfeatureaprojectwherestudentsareaskedtobuildcreativelyonthefoundationstheyhave learned by designing and developing an embedded system of their own. Examples of such systemsinclude tele-operated leader-follower quadrotors, body sensor games based on hacked Nintendo/Segaconsolegames,electro-mechanicalchess,connect-4andbasketballshootoutmachines,sphericalrobots,etc.ProjectsfromESE350havewonover16nationalandinternationalawards.(b)ESE519Real-TimeandEmbeddedSystems

This core graduate course covers the concepts, theory, and tools necessary to understand, design, andbuildreal-timeandconcurrentembeddedsystems.Thecourseisspreadacrossfivemajormodulesstartingwithanintroductiontonetworkedembeddedsystems,real-timeschedulingtheory,concurrentprogramminganddistributedsystemstheory,life-criticalsystemsandcasestudiesinembeddedsystemfailures.Fivelabsintroduceprogrammingwithareal-timeoperatingsystem(RTOS);networkedoperationacrossdistributedembedded systems; development of routingprotocols; anddesignof safety-critical systems. Each group isgivenasetofwirelessembeddednodes,32-bitembeddedmulti-processorboards(700MHzand1GHz)andavarietyofsensorsandactuators.Finalprojectshaveincluded:• Energy-efficientbuildingautomationsystems,whichintegratesensing,distributedcontrolsandbuilding

automationalgorithmsforheatingandcoolinginHVACsystems.• Automotiveembeddedsystems that integratecontrol systems for traction, stability,anti-lockbraking,

andadaptivecruisecontrolwithahardware-in-looptest-bed.• Robot-soccerwithmulti-robotconsensusprotocolsfordefense/offense,usingcomputervision• Implementationofnewwirelessprotocols(ISA100.11a)forindustrialcontrolandautomationStudentprojectsfromESE519haveresultedinover12internationalconferencepublicationsanddemosinvenues such as ACM/IEEE Cyber-Physical Systems Week, ACM Embedded Systems Week, ACM BuildingSystemsSymposiumandtheIEEEReal-TimeSystemsSymposium(RTSS).D.Model-basedSystemsCurriculumDevelopmentI routinely experiment with new course concepts. To translate our research into teaching, I developed acourseonfoundationsforModel-basedDesignforCyber-PhysicalSystems.Thiscourseallowsthestudenttojourney from specifications to models to implementations to integration for rigorous system design ofcontrols, computation and communicationtoanswerthefollowingquestions:• Whatdoesittaketodesignandimplement

life-critical software in an implantablecardiacdefibrillator?

• How to certify that a car in autonomouscruisecontrolmodewilldriveitselfsafely?

• Howdoyoudevelopandtunecontrolsforskyscrapers that have complexinteractions with the environment,occupantsandequipment?

This course focuses on modeling for verification, testing and control of such safety-critical systems. Thecourseis50%theorycoveringthefoundationsoftemporallogic,controlsandfalsificationand50%practicalskill development with the use of industry standard tools in verification, testing and model-baseddevelopment (Matlab/Simulink, EnergyPlus, UPPAAL). In three month-long modules, we cover in-depthmodelingofimplantablecardiacmedicaldevicesoftwareandsystems,testingofadvanceddriverassistancesoftwareinautomotivecontrollersanddata-drivenmodelingandcontrolofbuildings.Thiscourseprovidesthefoundationsandtoolsforacareerfocusinmodel-baseddesignofembeddedsystems.

top related