Cub Codes [Episode 2]: Paper Consumption Model

 

A Sustainable Future(ASF) is an organization that specializes in climate change. Through this initiative they made a Paper Consumption Model and a student-led Paper Consumption Program. Their ever growing organization inspires change in the ever so developing world we live in today.  ASF is initiated from high school statistics study on paper usage, evolving into a national project with over 150 student ambassadors worldwide. The project leverages statistical analysis and technology including sinusoidal and quadratic regression to create sustainable printing practices tailored for schools. Their work has resulted in the development of a user-friendly interface for schools to access and implement personalized paper consumption plans.

ASF website provides a platform with resources including data cleaning tools and research templates to support schools across the globe in adopting the PCM for localized action. WISTEM translated this model to be easily put into your home terminal in the language C++. The way the PCM works in the C++ version is it estimates paper consumption throughout a 12-month period peaking during the middle of the year(this is assumed for June to be simple) and tapering off towards the beginning and end of the year. The “cPC” function calculates the estimated paper consumption for any given month based on the sinusoidal wave that peaks in June and has its lowest point in the off-peak months. 

WARNING!! This is a basic model as WISTEM didn’t spend months on this project like ASF. We didn’t provide in your C++ version specific details like department needs, holidays, and other factors ASF model has included. Both are provided below and we highly encourage you to check on the explain page of ASF PCM.

Code Copy Example
#include <iostream>
#include <cmath>

const double PI = 3.14159265358979323846;
const int MAX_MONTH = 12;
const int PEAK_CONSUMPTION_MONTH = 6; // Assuming June is the peak consumption month
const double MAX_CONSUMPTION = 10000.0; // Maximum paper consumption in peak month
const double MIN_CONSUMPTION = 2000.0; // Minimum paper consumption in off-peak months

double cPC(int month) {
        // Adjust month to fit sinusoidal model starting at 0
        double adjustedMonth = (month - 1) * (2 * PI / MAX_MONTH);
        double consumption = (std::sin(adjustedMonth - PI / 2) + 1) / 2 * (MAX_CONSUMPTION - MIN_CONSUMPTION) + MIN_CONSUMPTION;
        return consumption;
}

int main() {
        std::cout << "ASF Paper Consumption Model (Simplified)\n";
        for (int month = 1; month <= MAX_MONTH; ++month) {
                double c = cPC(month);
                std::cout << "Estimated paper consumption for month " << month << ": " << c << " sheets\n";
        }
        return 0;
}
 
Women in STEM