நிலைமாற்றத்தின் போது ஏற்படும் முழுமையாக்கப் பிழைகள்

பவேரியாவில், \(2{,}33\) என்ற ஒட்டுமொத்த சராசரி தரம் ஜிம்னாசியத்திற்கு \(2{,}34\) அவ்வாறு செய்வதில்லை. இந்தத் தெளிவான எல்லையில், இரண்டு முழுமையாக்கும் செயல்பாடுகளின் வரிசையானது ஒரு குழந்தை எந்தப் பக்கம் விழுகிறது என்பதைத் தீர்மானிக்க முடியும். குந்தர் ஃபெல்பிங்கர் இந்த முழுமையாக்கும் விளைவின் சாத்தியமான பின்விளைவுகளை ஒரு வலைப்பதிவில் விவாதிக்கிறார் . வெறும் ஆர்வத்தின் காரணமாக, மாதிரியில் அனுமதிக்கப்பட்ட அனைத்து தரக் கலவைகளிலும் அதன் விளைவுகளை நானே கணக்கிட்டேன்.


எனது மையக் கேள்வி இதுதான்: முழுப் பாட மதிப்பெண்களுக்கு ஆரம்பத்திலேயே முழுமையாக்குவது, முழுமையாக்கப்படாத பாடச் சராசரிகளைப் பயன்படுத்திச் செய்யப்படும் கணக்கீடுகளை விட, பள்ளிக் கணக்கீடுகளில் எவ்வளவு அடிக்கடி ஒரு மாறுபட்ட வகையை ஏற்படுத்துகிறது? மேலும், (அங்கு பரிந்துரைக்கப்பட்டுள்ளபடி) தனிப்பட்ட பாடங்களின் சராசரிகள் ஆரம்பத்தில் ஒரே ஒரு தசம இடத்திற்கு மட்டும் முழுமையாக்கப்பட்டால் என்ன மாற்றங்கள் ஏற்படும் என்பதைக் காண்பது சுவாரசியமாக இருக்கும்.

பவேரிய தொடக்கப் பள்ளி ஒழுங்குமுறைகளின் பிரிவு 6-இன் படி, ஜெர்மன், கணிதம், மற்றும் உள்ளூர் மற்றும் பொதுப் பாடங்களில் பெற்ற மதிப்பெண்களிலிருந்து சராசரி தரம் கணக்கிடப்படுகிறது. செயல்படுத்தும் ஒழுங்குமுறைகள், \(2{,}33\) வரையிலும், \(2{,}66\) வரையிலும் வரம்புகளைக் குறிப்பிடுகின்றன. பின்வரும் கணக்கீட்டு மாதிரியில், ஒவ்வொரு ஒட்டுமொத்த சராசரியும் இரண்டு தசம இடங்களுக்குச் சுருக்கப்பட்டு, மீண்டும் முழுமையாக்கப்படுவதில்லை. எனவே, உதாரணமாக...

\[
\frac{2{,}33+2{,}34+2{,}34}{3}=2{,}3366\ldots \longrightarrow 2{,}33.
\]

வகைப்படுத்துதலுக்கு இது மிக முக்கியமானது: \(2{,}3366\ldots\) என்பது \(2{,}34\) ஆக மாறாமல், \(2{,}33\) ஆக மாறுகிறது, எனவே இது இலக்கணப் பள்ளிக்கு இன்னும் போதுமானதாக உள்ளது.

ஆரம்ப உள்ளீடு, அனுமானிக்கப்பட்ட பாடவாரியான சராசரி மதிப்புகளான \(1{,}6\) , \(2{,}6\) , மற்றும் \(2{,}6\) ஆகியவற்றைக் கொண்டு முன்கூட்டியே முழுமையாக்குதலை விளக்குகிறது. இவற்றிலிருந்து, முழுமையான தரங்களான \(2\) , \(3\) , மற்றும் \(3\) முதலில் பெறப்படுகின்றன. அவற்றின் சராசரி

\[
\frac{2+3+3}{3}=2{,}6666\ldots \longrightarrow 2{,}66,
\]

இதன் பொருள், அந்த மாணவர் நேரடி இலக்கணப் பள்ளி சேர்க்கைக்குத் தகுதி பெறமாட்டார் என்பதாகும். இருப்பினும், முழு மதிப்பெண்களாக மாற்றாமல், இந்தக் கற்பனையான எடுத்துக்காட்டில் கிடைக்கும் முடிவு...

\[
\frac{1{,}6+2{,}6+2{,}6}{3}=2{,}2666\ldots \longrightarrow 2{,}26.
\]

இரண்டாவது எடுத்துக்காட்டில், முழுமையாக்குதல் எதிர் திசையில் செயல்படுகிறது: \(2{,}4\) , \(3{,}4\) மற்றும் \(2{,}4\) ஆகியவை முழு நோட்டு மதிப்புகளான \(2\) , \(3\) மற்றும் \(2\) ஆக மாறுகின்றன, அதிகாரப்பூர்வமாக \(2{,}33\) . இருப்பினும், முழுமையாக்கப்படாத மதிப்புகள் \(2{,}73\) என்ற மதிப்பை அளிக்கின்றன. இந்த எடுத்துக்காட்டுகள் இந்த விளைவைத் தெளிவாக விளக்குகின்றன. இருப்பினும், இது எவ்வளவு அடிக்கடி நிகழ்கிறது அல்லது வேறுபட்ட முழுமையாக்கும் முறையின் விளைவுகள் என்னவாக இருக்கும் என்பதை அவை இன்னும் வெளிப்படுத்தவில்லை.

எனவே, எனது கணக்கீட்டிற்கு நான் ஒரு தெளிவான முடிவு வெளியைப் பயன்படுத்துகிறேன். ஒவ்வொரு பாடத்தின் சராசரியும் அதனுள் உள்ள \(501\) மதிப்புகளில் ஒன்றாக இருக்கலாம்.

\[
1{,}00,\, 1{,}01,\, 1{,}02,\, \ldots, \, 5{,}99, \, 6{,}00
\]

வைத்துக்கொள்வோம். ஜெர்மன், கணிதம், மற்றும் உள்ளூர் மற்றும் பொதுப் படிப்புகளின் வரிசைப்படுத்தப்பட்ட அனைத்து சேர்க்கைகளுக்கும் நான் சமமான முக்கியத்துவம் அளிக்கிறேன். எனவே, உள்ளன

\[
501^3=125\,751\,501
\]

நிகழ்வுகள். எனவே இந்த மாதிரி தெளிவானது, ஆனால் செயற்கையானது: இது சமமாகப் பரவப்பட்ட பாட சராசரிகள், மூன்று பாடங்களின் சார்பின்மை மற்றும் நூற்றில் ஒரு பங்கு அளவிலான படிநிலைகள் ஆகியவற்றை அனுமானிக்கிறது. இது பவேரிய ஆரம்பப் பள்ளி குழந்தைகளின் உண்மையான பரவலைப் பிரதிபலிக்கவில்லை.

மூன்று பொருள் சராசரிகள் \(d,m,h\) க்கு நாம் எழுதுவது

\[
A(d,m,h)=\frac{\left\lfloor 100\cdot\frac{d+m+h}{3}\right\rfloor}{100}
\]

ஒட்டுமொத்த சராசரியை இரண்டு தசம இடங்களுக்குச் சுருக்கியுள்ளோம். இப்போது மூன்று கணக்கீட்டு முறைகளை ஒப்பிடுவோம்.:

[
\begin{aligned}
A_0 &= A(\operatorname{round}(d),\operatorname{round}(m),\operatorname{round}(h)),\\
A_1 &= A(\operatorname{round}_1(d),\operatorname{round}_1(m),\operatorname{round}_1(h)),\\
A_\mathrm{ref} &= A(d,m,h).
\end{aligned}
]

\(A_0\) என்பது முழு மதிப்பெண்களைப் பயன்படுத்தி செய்யப்படும் கணக்கீட்டையும், \(A_1\) என்பது ஒரு தசம இடத்துடன் கூடிய முன்மொழிவையும், மற்றும் \(A_\mathrm{ref}\) என்பது மாதிரியினுள் உள்ள முழுமையாக்கப்படாத குறிப்பையும் குறிக்கிறது. உதாரணமாக, இந்தக் கணக்கீட்டை ரஸ்டில் (Rust ) நேரடியாகச் செயல்படுத்தலாம்.:

const SCHOOL_GYMNASIUM: i32 = 0;
const SCHOOL_REALSCHULE: i32 = 1;
const SCHOOL_MITTELSCHULE: i32 = 2;
const FLOAT_TOLERANCE: f64 = 1e-9;

#[derive(Clone, Copy, Default)]
struct Statistic {
    conflict_count: u64,
    total_count: u64,
}

fn determine_school(average: f64) -> i32 {
    if average <= 2.33 {
        return SCHOOL_GYMNASIUM;
    }
    if average <= 2.66 {
        return SCHOOL_REALSCHULE;
    }
    SCHOOL_MITTELSCHULE
}

fn calculate_average(note_deutsch: f64, note_mathe: f64, note_hsu: f64) -> f64 {
    let average = (note_deutsch + note_mathe + note_hsu) / 3.0;
    ((average + FLOAT_TOLERANCE) * 100.0).floor() / 100.0
}

fn round_to_whole_grade(grade: f64) -> f64 {
    grade.round()
}

fn round_to_one_decimal(grade: f64) -> f64 {
    (grade * 10.0).round() / 10.0
}

fn normalize_grade(grade: f64) -> f64 {
    (grade * 100.0).round() / 100.0
}

fn percentage(count: u64, total: u64) -> f64 {
    count as f64 / total as f64 * 100.0
}

fn main() {
    let mut combination_count = 0;
    let mut official_reference_conflicts = 0;
    let mut official_proposal_conflicts = 0;
    let mut proposal_reference_conflicts = 0;
    let mut statistics = [Statistic::default(); 4];

    let mut note_deutsch = 1.0;
    while note_deutsch <= 6.0 {
        let mut note_mathe = 1.0;
        while note_mathe <= 6.0 {
            let mut note_hsu = 1.0;
            while note_hsu <= 6.0 {
                combination_count += 1;

                let official_average = calculate_average(
                    round_to_whole_grade(note_deutsch),
                    round_to_whole_grade(note_mathe),
                    round_to_whole_grade(note_hsu),
                );
                let proposed_average = calculate_average(
                    round_to_one_decimal(note_deutsch),
                    round_to_one_decimal(note_mathe),
                    round_to_one_decimal(note_hsu),
                );
                let reference_average =
                    calculate_average(note_deutsch, note_mathe, note_hsu);
                let official_school = determine_school(official_average);
                let proposed_school = determine_school(proposed_average);
                let reference_school = determine_school(reference_average);

                if official_average == 3.0 {
                    statistics[0].total_count += 1;
                    if reference_school != SCHOOL_MITTELSCHULE {
                        statistics[0].conflict_count += 1;
                    }
                }
                if official_average == 2.66 {
                    statistics[1].total_count += 1;
                    if reference_school == SCHOOL_GYMNASIUM {
                        statistics[1].conflict_count += 1;
                    }
                }
                if official_average == 2.33 {
                    statistics[2].total_count += 1;
                    if reference_school != SCHOOL_GYMNASIUM {
                        statistics[2].conflict_count += 1;
                    }
                }
                if official_average == 2.66 {
                    statistics[3].total_count += 1;
                    if reference_school == SCHOOL_MITTELSCHULE {
                        statistics[3].conflict_count += 1;
                    }
                }

                if official_school != reference_school {
                    official_reference_conflicts += 1;
                }
                if official_school != proposed_school {
                    official_proposal_conflicts += 1;
                }
                if proposed_school != reference_school {
                    proposal_reference_conflicts += 1;
                }

                note_hsu = normalize_grade(note_hsu + 0.01);
            }
            note_mathe = normalize_grade(note_mathe + 0.01);
        }
        note_deutsch = normalize_grade(note_deutsch + 0.01);
    }

    println!(
        "official/reference: {}%",
        percentage(official_reference_conflicts, combination_count)
    );
    println!(
        "official/proposal: {}%",
        percentage(official_proposal_conflicts, combination_count)
    );
    println!(
        "proposal/reference: {}%",
        percentage(proposal_reference_conflicts, combination_count)
    );
    for (index, statistic) in statistics.iter().enumerate() {
        println!(
            "#{}: {}% ({}/{})",
            index + 1,
            percentage(statistic.conflict_count, statistic.total_count),
            statistic.conflict_count,
            statistic.total_count
        );
    }
}

சிறிய சகிப்புத்தன்மையில் calculate_average போன்ற ஒரு மதிப்பைத் தடுக்கிறது \(2{,}67\) அதன் இரும மிதவை எண் பிரதிநிதித்துவம் காரணமாக, அது தவறாகக் கருதப்பட்டது \(2{,}669999\ldots\) துண்டிக்கப்படுகிறது. normalize_grade மேலும், இது ஒவ்வொரு சுழல் மதிப்பையும் மீண்டும் ஒரு நூறாம் வரிசைக் கட்டத்திற்குக் குறைக்கிறது. குறைந்தபட்சம் இரண்டு வெவ்வேறு சாத்தியமான சராசரி மதிப்புகள் உள்ளன. \(1/300\) தவிர; சகிப்புத்தன்மை \(10^{-9}\) எனவே, இது எந்தவொரு உண்மையான எல்லைக்குட்பட்ட வழக்கையும் மாற்றாத அளவுக்கு மிகச் சிறியதாக உள்ளது.

நிரல் தொகுக்கப்பட்டு தொடங்கப்பட்டது

rustc -O calc.rs && ./calc

இந்த நிரல் அனைத்து \(125\,751\,501\) சேர்க்கைகள் வழியாகச் சென்று திரும்புகிறது.:

ஒப்பீடுபகுதி
முழு மதிப்பெண்கள் மற்றும் முழுமையாக்கப்படாத பாட சராசரிகள்\(10{,}4411\,\%\)
முன்மொழிவுடன் ஒப்பிடும்போது முழு மதிப்பெண்கள் ஒரு தசம இடத்துடன் கொடுக்கப்பட்டுள்ளன.\(10{,}1521\,\%\)
முழுமையாக்கப்படாத நிபுணர் சராசரிகளுடன் ஒப்பிடும்போது ஒரு தசம இடத்துடன் கூடிய முன்மொழிவு\(0{,}6615\,\%\)

என்னைப்பொறுத்த மைய மதிப்பு என்பது \(10{,}4411\,\%\): பத்தில் ஒரு சேர்க்கைக்கும் மேற்பட்டவற்றில், ஆரம்பத்திலேயே முழு தரங்களாக மாற்றுவது, மாற்றப்படாத ஒப்பீட்டுப் பள்ளி வகையிலிருந்து வேறுபட்ட கணக்கிடப்பட்ட பள்ளி வகைக்கு வழிவகுக்கிறது. இந்த விகிதமானது, தேர்ந்தெடுக்கப்பட்ட மாதிரிக்குள் உள்ள மாற்றத்தின் விளைவை மட்டுமே விவரிக்கிறது.

முந்தைய முறையுடன் ஒப்பிடும்போது, ஒரு தசம இடத்துடன் கூடிய நிபுணர் சராசரிகளுக்கு மாறுவது, அனைத்து மாதிரி நிகழ்வுகளிலும் \(10{,}1521\,\%\) இல் வேறுபட்ட வகைப்பாட்டிற்கு வழிவகுக்கும். இருப்பினும், மூன்றாவது ஒப்பீடு மிக முக்கியமானது: முழுமையாக்கப்படாத குறிப்புடன் ஒப்பிடும்போது, ஒரு தசம இடத்தைக் கொண்ட முறையானது \(0{,}6615\,\%\) மட்டுமே மாறுபட்ட நிகழ்வுகளைக் கொண்டுள்ளது. இதனால், குறிப்பிலிருந்து ஏற்படும் விலகல் குறைகிறது.

\[
1-\frac{0{,}6615}{10{,}4411}\approx 93{,}7\,\%.
\]

என்னைப் பொறுத்தவரை, தற்போதைய கணக்கீட்டு முறையின் கேள்விக்குரிய விளைவு இதுதான்: அனுமானிக்கப்பட்ட பாடவாரியான அடைவுகள் மாறாமல் இருக்கின்றன; முழுமையாக்கப்படும் நேரம் மட்டுமே கணக்கிடப்பட்ட பள்ளி வகையை மாற்ற முடியும். ஒரு தசம இடத்துடன் கணக்கிடுவது இந்த விளைவை முழுமையாக நீக்காவிட்டாலும், அது மாதிரிக்குள் அதை கணிசமாகக் குறைக்கிறது.

இருப்பினும், உண்மையில் எத்தனை குழந்தைகள் பாதிக்கப்படுகிறார்கள் என்பதை இந்தப் புள்ளிவிவரங்கள் நமக்குத் தெரிவிப்பதில்லை. மதிப்பெண் பட்டியல் தரங்கள் இயந்திரத்தனமாக முழுமையாக்கப்பட்ட சராசரிகளாக உருவாக்கப்படுவதில்லை; கல்விசார் செயல்திறன் சீராகப் பரவியிருப்பதும் இல்லை, சார்பற்றதும் இல்லை; மேலும், பள்ளியின் வகையைத் தேர்ந்தெடுப்பது இந்த மூன்று புள்ளிவிவரங்களை மட்டுமே சார்ந்திருப்பதில்லை. எனது கணக்கீடு ஒரு குறிப்பிட்ட கேள்விக்குப் பதிலளிக்கிறது: நூறில் ஒரு பங்கு மதிப்புகளின் அனைத்துக் கலவைகளும் சம நிகழ்தகவுடன் இருக்கும்போது, முழுமையாக்குதல் கணக்கிடப்பட்ட தரத்தை எவ்வளவு அடிக்கடி மாற்றுகிறது?

இறுதியாக, அசல் பதிவுடன் ஒரு ஒப்பீடு: அங்கு குறிப்பிடப்பட்டுள்ள ஒட்டுமொத்த விகிதமான சுமார் \(10\,\%\) எனது \(10{,}4411\,\%\) க்கு நெருக்கமாக உள்ளது. இருப்பினும், \(1/6 \approx 17\,\%\) " \(3{,}00\) உடன் மேல்நிலைப் பள்ளியைத் தவறவிட்டவர்கள்", " \(2{,}33\) உடன் இலக்கணப் பள்ளியைத் தவறவிட்டவர்கள்", " \(2{,}66\) உடன் இலக்கணப் பள்ளியில் தேர்ச்சி பெற்றவர்கள்", மற்றும் " \(2{,}66\) உடன் மேல்நிலைப் பள்ளியில் தேர்ச்சி பெற்றவர்கள் \(1{,}4615\,\%\) \(59{,}6096\,\%\) \(1{,}2023\,\%\) \(62{,}9395\,\%\) ஆகியவற்றைப் பெறுகிறேன்.

இந்த நான்கு மதிப்புகளும் வெவ்வேறு அளவிலான குறிப்புக் குழுக்களைக் கொண்ட நிபந்தனை நிகழ்தகவுகள் ஆகும். வேறுவிதமாக வரையறுக்கப்பட்ட மாதிரி வெளி இல்லாமல் \(1/6\) ஐ வருவிக்க முடியாது. எனவே எனது கணக்கீடு முழுமையாக்கும் விளைவை உறுதிப்படுத்துகிறது, ஆனால் இந்தத் தனிப்பட்ட நிகழ்தகவுகளை அல்ல. எப்படியாயினும், பாதிக்கப்பட்ட குழந்தைகளின் உண்மையான எண்ணிக்கை குறித்த கூற்றுகளுக்கு, உண்மையான தரப் பரவல்கள் மற்றும் அவற்றின் சார்புநிலைகள் தேவைப்படும்.

மீண்டும்