DOC PREVIEW
GT LCC 6310 - LCC 6310 LECTURE NOTES

This preview shows page 1-2-3-4-5-6 out of 18 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 18 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

LCC 6310 Computation as an Expressive MediumOutlineBraitenberg VehiclesVehicleVehicle 1Vehicle 1: CowardVehicle 2Vehicle 2: AggressiveVehicle 3Vehicle 3: LoveVehicle 4Vehicle 4: ExplorerClasses in codeVehiclesGroundSourcesExtensionsProject ideasLCC 6310Computation as an Expressive MediumLCC 6310Computation as an Expressive MediumLecture 10Lecture 10OutlineOutline•Braitenberg vehiclesBraitenberg vehicles•Concept behind vehicles•Introduce several vehicles•Look through major code sections•Talk about possible project ideasBraitenberg VehiclesBraitenberg Vehicles•Valentino BraitenbergValentino Braitenberg•Vehicles: Experiments in Synthetic Psychology•Neuro-psychologist interested in how primitive neural structures can give rise to complex behavior•He developed a simple model of robots with sensors and motors to show how complex behavior can arise from simple mechanisms•We're interested in his vehicles as a simple We're interested in his vehicles as a simple autonomous agent framework we can play withautonomous agent framework we can play with•Build ecosystems of interacting agents and sensory sourcesVehicleVehicleSensorsWheel and motorWiresSensory sourceVehicle 1Vehicle 1Sensors (light sensors) connected directly to motor on same sideWhat will happen when light is to side?Directly in front?Vehicle 1: CowardVehicle 1: CowardSteers away from sourceCharges source directly in frontRests in darknessVehicle 2 Vehicle 2Sensors connected directly to motor on opposite sideWhat will happen when light is to side?Directly in front?Vehicle 2: Aggressive Vehicle 2: AggressiveSensors connected directly to motor on opposite sideTurns towards sourceand chargesCharges source directly in frontRests in darknessVehicle 3Vehicle 3Sensors connected through inverter to same sideWhat will happen when light is to side?Directly in front?----Vehicle 3: LoveVehicle 3: LoveSensors connected through inverter to same side----Turns towards sourceand restsMove toward source and restMoves in darknessVehicle 4Vehicle 4Sensors connected through inverter to opposite sideWhat will happen when light is to side?Directly in front?----Vehicle 4: ExplorerVehicle 4: ExplorerSensors connected through inverter to opposite side------Turns away from sourceRotates away (unless exactly on target)Moves in darknessClasses in codeClasses in code•ClassesClasses•Vehicle•Includes logic for movement•Wheel•The flapping things on the vehicle•Sensor•The “eyes” on the vehicle – how much they glow indicates activation (+ inverter)•Source•The light sources •Vehicle draws itself, plus wheel and sensorVehicle draws itself, plus wheel and sensorVehiclesVehicles•All vehicles are currently vehicles of the same typeAll vehicles are currently vehicles of the same type•Initialized in setup()•Up/down arrow displays/hides vehicles•To create multiple types of vehicles, subclass Vehicle instead of commenting in and out different doSenseLogic() methods•Loop() repeatedly calls move() and draw() methods Loop() repeatedly calls move() and draw() methods on vehicleon vehicle•To change the way the vehicle looks, change the draw() methods•move() contains call to doSenseLogic(), which contains the relationship between sensors and wheelsGroundGround•The ground (background) is a BImage - different sources change The ground (background) is a BImage - different sources change the pixels of the groundthe pixels of the ground•This is the mechanism for summing different sources togetherThis is the mechanism for summing different sources together•updateGround() sums light sources to produce background pixels•Sensing takes place by asking the ground what the summed Sensing takes place by asking the ground what the summed sense value is (rather than by directly asking the sources)sense value is (rather than by directly asking the sources)•Ground will need to be modified to handle multiple source typesGround will need to be modified to handle multiple source types• Separate by color (r, g, b), but then can only have three•Better – lay multiple sensory grounds on top of each other•Transparency will make them all visible•Different sensor types will look at different grounds (sound, light sources, etc.)SourcesSources•The only source currently implemented is light sourcesThe only source currently implemented is light sources•Strength determines brightness•Max_radius determines how far out influence extends•Sources only draw the little circle in the middle Sources only draw the little circle in the middle •The light gradient around them is actually in the ground•getReading() is used by ground to sample a light getReading() is used by ground to sample a light source (to determine how much a light source effects a source (to determine how much a light source effects a given pixel)given pixel)ExtensionsExtensions•Make vehicles also be sources (vehicles start Make vehicles also be sources (vehicles start following each other, are repelled by each other, etc.)following each other, are repelled by each other, etc.)•Implement other sources (e.g. sound, smell…), other Implement other sources (e.g. sound, smell…), other objects in the world objects in the world •Add more complex sensor response curves Add more complex sensor response curves (everything we’ve looked at so far is linear) (everything we’ve looked at so far is linear) •Add more interactions between different types of Add more interactions between different types of vehiclesvehiclesProject ideasProject ideas•Braitenberg vehicles provide a simple framework for Braitenberg vehicles provide a simple framework for exploring autonomous behavior in computational exploring autonomous behavior in computational ecosystemsecosystems•Text machines – autonomous words and letters Text machines – autonomous words and letters •Drawing machines – brush interacts with vehicles, spawns Drawing machines – brush interacts with vehicles, spawns vehicles, vehicles interact with each othervehicles, vehicles interact with each other•Ecosystem responds to data (sources represent web data, Ecosystem responds to data (sources represent web data, vehicles spawned in response to data, etc.)vehicles spawned in response to data, etc.)•Miniature worlds – alien, aesthetically interesting worldsMiniature worlds – alien, aesthetically interesting


View Full Document

GT LCC 6310 - LCC 6310 LECTURE NOTES

Documents in this Course
Load more
Download LCC 6310 LECTURE NOTES
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view LCC 6310 LECTURE NOTES and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view LCC 6310 LECTURE NOTES 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?