During my week of work experience I have made 2 models. I had little experience with programming (other than python and scratch work we did in school) however Ken and Howard have helped me make my models in behaviour composer.
The first of them is called knights vs monsters. It is a simple simulation of knights trying to kill all the monsters. There are currently 3 types of monsters that are different from each other - a normal green monster which usually come in large numbers to swarm the knights , an armed red monster which is more powerful than a normal monster but come in small numbers and the special pink reproducters. Reproducters make clones of themselves and of different monster types - but there must already be at least one of the types of monster it spawns in. The world consists of blue and green patches. Monsters and knights can only walk on green tiles. If they attempt to walk on a blue tile they will turn around and jump to a random adjacent green tile.
Here is an image of my work in net logo:
As you can see there are a lot of sliders on my model. This is as you can customise a lot of the variables on the monsters and knights - such as knight health , monster damage , delay between reproduction chance and many more. There are also 2 graphs present on my work. One of them is for the total population of the monsters and knights and the other one is for the percentages of monsters per type, so you can see out of the total monster population what percentage of it is normal green monsters.
Here is an image of my model in behaviour composer:
I have made sure most (if not all) if my work has a comment so it is easy to see what is going on or happening in each behaviour or part of my model. This allows you - the viewer - take a look at my work and understand exactly what is happening so you can improve or change the model in some way.
The second model I have done was a game based on snake where you have to walk around collecting white pellets to get points and grow in size. It works mostly in the same way snake does but if run in a circle and hit your own body parts you don't lose. The patches change color as there are invisible turtles on every patch and when the snake you control meets with a invisible turtle it causes the turtle to change the patch color it is standing on , until changing it back to black after a certain duration. I have made the duration longer based on the score you have , making it look like your snake is bigger the more you eat, just like in the real game. When a pellet is eaten your score increases by 1 and another pellet spawns randomly on the map.
Here is a image of my work in net logo:
I have added a monitor to keep track of your score and I have keys which you can click on (or press the binded key) to make the snake move in a direction. I have 1 slider on my work, called "the-speed". This variable changes the speed of the snake. The snake is colored in lime and there is a blue border which will kill the snake if it is touched. In the middle of each side there are 3 patch wide holes which you can go through to end up on the other side.
My thoughts about behaviour composerI think behaviour composer is an amazing tool to help students learn the basics of agent based modelling. I think this as the tool is very easy to use , and if you learn the basics you have a lot of power to create a lot of things. For example, before I came here for my work experience I knew very little about programming and nothing about net logo, however after following the tutorials on the website I had learned a lot about behaviour composer. This allowed me to make my 2 models (1 of which I had not fully completed). In my experience I had not come across any bugs so it is safe to say the program is very well made and stable. I think behaviour composer can be used in schools in many subjects , such as in geography to show tourism and corrosion, biology to show the spread of pathogens, physics to show heat conduction and how radiation travels, chemistry to show diffusion and much more.
Overall my opinion on behaviour composer is very positive and I would recommend it to anyone who wants to learn about agent based modelling or even programming (as you can look at the code in net logo if you wish to).