Wednesday, April 8, 2015

AquaponicsOS: Hacking Nature's Cycles

Having briefly discussed how one might go building sensors for aquaponic systems, the question remains: how can we leverage this information? After all, if no value can be obtained from it, little sense does it make to go harvesting all this data in the first place.

From a data perspective, aquaponic systems are a collection of environmental time series measures. For example, we could measure a given variable at time {t1,t2,...,tn}. The following list are some possible measures:

           pH in water.
           Dissolved Oxygen in water.
           Nitrate concentration in water.
           Nitrite concentration in water.
           Ammonia concentration in water.
           Plant weight.
           Fish weight.
           Phosphate concentration in water.
           Electrical Consumption.
           Water consumption.
           Light Intensity and Spectrum of LEDs.
           Air and water temperature.
           Humidity.
           Plant species weight distribution.
           Bacteria concentration and type.

This represents a dynamic N-dimensional system. It is highly complex due to the interaction of many, if not all, the variables described. The first objective should be to know the state of the system. For example, one could construct a 3-D plot that mapped pH and Nitrate levels (in x and y axis) to plant growth (in z axis) as represented in Figure 1. In this way, one could have an intuitive idea of where we would want our system to be and how stable different states are.


Figure 1

However cool this sort of visualizations would be for a Vertical Farm owner, we humans are not particularly good at "seeing" in more than 2 or 3 dimensions. Machines, using most of the Machine Learning arsenal available today, are able to navigate this N-dimensional terrains with ease. This would give us an excellent means of understanding not only what state the system is in, but predict where it is going and how it can steered to other desired states using the least energy possible. Using Figure 1 as analogy, how can we climb from the blue zone to the red one? Furthermore, there might be different state spaces for different combinations of plant species and bacteria.

Robotics deals with how to optimize objective functions. For example, it might try to maintain a stick upright by dynamically changing the angles of a robotic arm.



If the state of the Aquaponic system is represented by the stick, what are the actuators we might use to balance the system? In the same way we use sensors to know the state of the system we can remotely use actuators to balance it. The following is a list of possible actuators (Check this report for ideas).


           Light Intensity and Spectrum of LEDs.
           Water Consumption.
           Feed Rate Ratio.
           Bacteria Concentration.
          Aeration.


The key concept of the actuators is that anything that can be automated should be automated. This can be done through a combination of smart design and use of technology.  For example, bacteria concentration could be regulated by diverting water through different "bacteria filters" of varying lengths. In any case, I am not yet in a position where I can know for certain what will work, I am simply suggesting an approach of seeing an aquaponic system through a Robotics/Machine-Learning lens.

In case you are thinking what happens when you only know the variables in the sensors but not the dimensions of the aquaponic systems or its plants, another robotic analogy seems helpful. The following is a robot that learns about its own body and then uses this model to move itself.


This means that a Vertical Farmer could simply connect the sensors and actuators to AquaponicsOS without need to specify his current configuration. AquaponicsOS would learn about the system by initially probing the different configurations and afterwards steer the system to a state of maximum growth. Obviously this is not where we would start but it is a vision of what could be possible. The first configuration would probably be monitoring with some alarm system. Eventually this alarms would be turned into automatic responses.

Given this scenario, it is essential to count with the most amount of data to tune the algorithms. If everyone chooses to lock their data in different silos advances in Vertical Farm automation will be slower than with an open system. In the end, given that Vertical Farms are not competing with each other but with conventional agriculture, the spirit of open data should be embraced by the industry's leaders. If all the available data and software is made open indoor agriculture will be here sooner than later.




No comments:

Post a Comment