Predator-Prey-Rectangular

Predator-Prey-Rectangular preview image

1 collaborator

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by everyone
Model was written in NetLogo 6.0 • Viewed 86 times • Downloaded 12 times • Run 0 times
Download the 'Predator-Prey-Rectangular' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

globals[ decrease-energy]
turtles-own[energy]

breed [ovejas oveja]
breed [lobos lobo]
breed [hojas hoja]

to setup
  ca
  ask patches [set pcolor white]
  ;; forma de las razas
  set-default-shape ovejas "sheep"
  set-default-shape lobos "wolf"
  set-default-shape hojas "leaf"

  ; decremento energía en cada tick

  set decrease-energy 3

  ; Mundo Incial , poblar con las tres especias al azar de manera uniforme

  ask n-of num-agentes patches [
    sprout 1 [
       set color black
       set breed one-of (list ovejas lobos hojas)
    ]
  ]
    ; energia inicial de los agentes

  ask lobos [set energy 15]
  ask ovejas [set energy 10]
  ask hojas [set energy 5]
  reset-ticks
end 

to go
  ; comportamiento hojas
  comp-hojas
  ; comportamiento ovejas
  comp-ovejas
  ; comportamieto lobos
  comp-lobos
  tick
end 

to comp-hojas
  ask hojas [
    set energy energy - .1  ; decrementar energía
  if energy <= 0 [die] ; muere si energía es muy baja
  ]

  ; espacio vacio con más de tres vecinos hojas genera una hoja
  ask patches with [ count  turtles-here = 0]
  [ ;set pcolor blue
    if count vecinos-hojas >= 3 [ sprout 1 [ set breed hojas set color green]] ; marca las parcelas con un agente generico
  ]
  ask turtles with [color = green] [ set breed hojas set color red]
end 

to comp-ovejas
  ask ovejas [
    set energy energy - decrease-energy  ; decrementar energía
  if energy <= 0 [die] ; muere si energía es muy baja
  ]


ask ovejas with [ count vecinos-hojas > 0]  ;OJO TENR CUIDADO SI DOS OVEJAS DEBEN IR A UNA HOJA
    [ set color blue
      let parcelaHoja one-of vecinos-hojas
      if parcelaHoja != nobody
      [let laHoja one-of turtles-on parcelaHoja
        set energy energy + [energy] of laHoja
         ask laHoja [die]   ; la hoja queda consumida por la oveja
         ask patch-here [ sprout 1 [set breed ovejas set energy 10 set color red]]
          move-to parcelaHoja  ; se mueve donde está la hoja

      ]


       ]
end 

to comp-lobos
  ask lobos [
    set energy energy - decrease-energy  ; decrementar energía
  if energy <= 0 [die] ; muere si energía es muy baja
  ]
  let lobos-cerca-a-ovejas lobos with [count vecinos-ovejas > 0]
  let lobos-lejos-de-ovejas lobos with [ count vecinos-ovejas = 0]
; si el lobo no tiene ovejas como vecinos se mueve a un sitio contiguo vacio o que tenga hojas


ask lobos-cerca-a-ovejas  ;OJO TENR CUIDADO SI DOS lobos DEBEN IR A UNA misma oveja
    [ ;set color blue
      let parcelaOveja one-of vecinos-ovejas
      if parcelaOveja != nobody
      [let laOveja one-of turtles-on parcelaOveja
        set energy energy + [energy] of laOveja
         ask laOveja [die]   ; la oveja queda consumida por el lobo
         ask patch-here [ sprout 1 [set breed lobos set energy 15 set color red]]
          move-to parcelaOveja  ; se mueve donde está la oveja

      ]


       ]

ask lobos-lejos-de-ovejas [mover-lobo]
end 

to mover-oveja
  ask ovejas with [ count vecinos-hojas = 0]
[
let posibleLugar one-of neighbors with [ parcela-vacia]
if posibleLugar != nobody  [ move-to posibleLugar]




]
end 

to mover-lobo
  ask lobos with [ count vecinos-ovejas = 0]
[
let posibleLugar one-of neighbors with [ parcela-vacia]
ifelse posibleLugar != nobody
  [ move-to posibleLugar]
  [
    let posibleLugar2 one-of neighbors with [parcela-con-hoja]
    if posibleLugar2 != nobody [move-to posibleLugar2] ; moverse a una parcela con hojas si es posible
]


]
end 





; reportes

to-report vecinos-hojas
  report ( neighbors with [ any? hojas-here ])
end 

to-report vecinos-ovejas
  report ( neighbors with [ any? ovejas-here ])
end 

to-report vecinos-lobos
  report ( neighbors with [ any? lobos-here ])
end 

to-report parcela-vacia
  report count turtles-here = 0
end 

to-report parcela-con-hoja
  report count hojas-here > 0
end 

There is only one version of this model, created about 5 years ago by Alfonso Meléndez.

Attached files

File Type Description Last updated
Predator-Prey-Rectangular.png preview Preview for 'Predator-Prey-Rectangular' about 5 years ago, by Alfonso Meléndez Download

This model does not have any ancestors.

This model does not have any descendants.