User Tools

Site Tools


T-720-ATAI-2018 Main

T-720-ATAI-2018 Bratienberg Assignment


The purpose of this exercise is to play with emergence, agent-environment interaction, control architectures, and system complexity.
Return a URL to your runnable code.
by midnight (23:59) Sep. 13 (the evening before Friday's class next week).
Optionally you may return a short explanatory description of your system and the result.
Your task is to modify the Braitenberg Vehicles Scratch simulation (Links to an external site.)Links to an external site.. You may choose to do ONE of these modifications:

  • a. Group Behaviors. Vehicles search for lights ("food"). Put lights on Vehicles so that Vehicles start to form groups. Make it so that they self-organize into groups that form long snakes. Can you make them create circles instead of snakes - or squares?
  • b. Dynamic Environment. Food grows and rots; disappears when eaten. Vehicles search for food, and when they find it they eat it, at which point their control architecture changes in some way and makes them do other things, until they get hungry again, at which point their old control structure returns and they start to search for food again.
  • c. Memory & Learning. Vehicles search for food. There are three kinds of edibles, one being poison, one being normal food, and the third being super-food which gives them triple energy (with side effects for their behavior). Their architecture may be simple but it is augmented with memory that enables them to learn to avoid poison and prefer super-food. NOTE: If you choose this option you may request to return the assignment on Sep. 21st.

If you think there are some parameters that would be fun to experiment with you may choose to make them tunable at the beginning of the simulation.
Make your demo as interesting as you can make it!


    • The red bird is an agent that maintains a memory of which blue birds it has eaten. The red bird selects which target it tries to go for based on a exploration/exploitation epsilon constant. If the bird selects to exploration it's target becomes the closest blue bird to it. If the bird select exploitation it targets the closest blue bird in of the type that has had the largest average score. The red bird only eats untill it's full, it is full when it's food score is above 800. The blue birds spawn in a of a random type [1-9] and a random score [1-100]*type. Therefore eventually the red bird will always go for blue birds of type 9 eventually. The blue birds decrease in value and size over time. (The simulation has a small UI bug where the whole screen is not displayed. This happened in exporting from unity to WebGL.)
    • I kind of gave up on this. I tried having the food disappear when a robot touched it but once one food is gone the robot stops looking for other foods and I have no idea why. I tried making the food rot: turning yellow, then red (and the idea was a robot should avoid red foods) and then finally disappear. I could make the food change color but still, the problem of robots not recognizing foods once one food had disappeared remained.
    • b. Dynamic Environment: The food starts out green, and starts rotting as soon as robots touch it. Robots that eat green food become “happy” and jump around. The food then turns orange, and eventually red (rotten). If the robots eat rotten food, they shrink in size and only regain their original size once they eat green food again.
    • I choosed modification b! This is the try to give the project the environment of the sea. The robots are sharks who try to eat fishes. These fishes need to grow to a certain size, before they can be eaten. The movement itself was not modified and kept the way it was in the original Braitenberg Vehicles project. I got the feeling that after a certain time, the phrases the agents say start to stack and that they stay way longer than they should, but I did not find a way to fix it.
    • Það var áhugavert að sjá að þegar þú valdir mörg vélmenni þá enduðu þau oft á því að hreyfa sig sem ein einning, sem sagt öll vélmennin hreyfðu sig í takt við að elta ljósin. Ég fékk virknina ekki í lag að þeir sjái eingöngu ákveðið svæði fyrir framan sig. En ég náði að laga ljósa virknina svo núna er rétt ljós fjarlægt úr listanum þegar robot snertir það. En það er eingöngu hægt að vera með tvö ljós í gangi í einu, því scratch leyfir þeir eingöngu að fjarlægja stök fremst og aftast úr lista. Það var áhugaverð reynsla að sjá hversu hamlaður maður varð þegar verkfæra kistan sem maður er vanur að hafa er takmörkuð til þess að passa í drag and drop umhverfi. Ýmislegt sem er vanalega einfalt varð mjög flókið t.d. að skrifa langar jöfnur, bæði var það mjög tímafrekt og erfitt að fá yfirsýn yfir jöfnuna.
    • There are still some bugs, can't seem to make the robots forget about earlier positions of food. Or something. They behave strangely.
    • In this assignment I adapted the Braitenberg vehicls according to the modifications describedin b, the dynamic environment: Food grows and rots; disappears when eaten. Vehicles searchfor food, and when they find it they eat it, at which point their control architecture changes insome way and makes them do other things, until they get hungry again, at which point theirold control structure returns and they start to search for food again. The vehicle is designed as the robot ”Eve” and the food are flowers that Eve wants to eat. Theflowers are growing and can only be eaten when they are fully grown. As soon as Eve touchesa fully grown flower when she is hungry she eats it and is not hungry anymore for 10 seconds.When she is hungry again she searches for more flowers to eat.As soon as the flowers are fully grown they live for 20 seconds and rot afterwards. A new flowerwill grow as soon a flower dies and every 20 seconds a new flower starts to grow.
  • Atli - granted extension until next Thursday.
    • TBD


/var/www/ailab/WWW/wiki/data/pages/public/t-720-atai/atai-18/braitenberg_assignment.txt · Last modified: 2018/09/14 11:15 by thorisson