Skip to content

Instantly share code, notes, and snippets.

View CapacitorSet's full-sized avatar

Giulio Muscarello CapacitorSet

View GitHub Profile
"use strict";
var async = require("async"),
net = require("net"),
TelegramBot = require('node-telegram-bot-api');
var q = async.queue((item, cb) => {
console.log(item);
mandaComando(item, cb);
});
int i;
void segwrite(int n);
void loop() {
if (digitalRead( 9)) { i--; goto nextstep; }
if (digitalRead(10)) { i++; goto nextstep; }
return;
nextstep:
if (i < 0) i = 0;
2 popolazioni in rapporto: prede, predatori
ciascuno con tassi di natalità e mortalità
Variabili: caccia controllata (introduce cacciatori), cibo per le prede (nota: portanza = qtà max di animali su un territorio date le sue risorse), nuovi predatori
nota di giulio: a ogni tick una preda può consumare 1J, o magari un lavoro variabile per-preda, per spostarsi, quindi a seconda della pendenza...
Prede possono scappare, evolversi (perché hanno un fattore secondo il quale scappano dalle prede (genetic programming), quanto sono efficienti, quanto sono fertili, a che età si riproducono, quale algo di pathfinding), stesso per i predatori
ambiente con "colline" che rallentano/velocizzano il movimento, ostacoli insuperabili
@CapacitorSet
CapacitorSet / Element.java
Last active August 29, 2015 14:16
Simulates an element of the system
public class Element {
public mortality;
public boolean alive;
public int age;
public Point position;
public void tick() {
updateMortality();
if (alive) {
age++;
if (random(0,1)<mortality) {
import math
G = 1
class Vector:
dX = 0
dY = 0
dZ = 0
def build(self, x1, y1, z1, x2, y2, z2):
self.dX = math.fabs(x1 - x2)