ዝርዝር ሁኔታ:

ክትባት ለመውሰድ ወይም ላለመውሰድ? በበሽታ አስመስሎ መንጋ የመከላከል አቅምን የሚመለከት ፕሮጀክት 15 ደረጃዎች
ክትባት ለመውሰድ ወይም ላለመውሰድ? በበሽታ አስመስሎ መንጋ የመከላከል አቅምን የሚመለከት ፕሮጀክት 15 ደረጃዎች

ቪዲዮ: ክትባት ለመውሰድ ወይም ላለመውሰድ? በበሽታ አስመስሎ መንጋ የመከላከል አቅምን የሚመለከት ፕሮጀክት 15 ደረጃዎች

ቪዲዮ: ክትባት ለመውሰድ ወይም ላለመውሰድ? በበሽታ አስመስሎ መንጋ የመከላከል አቅምን የሚመለከት ፕሮጀክት 15 ደረጃዎች
ቪዲዮ: በ Magic The Gathering Arena ውስጥ ከቀይ የመርከብ ወለል ጋር ማበረታቻዎችን እና የጥቃት ተልእኮዎችን እከፍታለሁ 2024, ሀምሌ
Anonim
ክትባት ለመውሰድ ወይም ላለመውሰድ? በበሽታ አስመስሎ መንጋ የመከላከል አቅምን የሚመለከት ፕሮጀክት
ክትባት ለመውሰድ ወይም ላለመውሰድ? በበሽታ አስመስሎ መንጋ የመከላከል አቅምን የሚመለከት ፕሮጀክት

የፕሮጀክቱ አጠቃላይ እይታ

የእኛ ፕሮጀክት የመንጋን ያለመከሰስ ሁኔታ ይመረምራል እናም በማህበረሰቦቻችን ውስጥ የኢንፌክሽን መጠንን ለመቀነስ ሰዎች ክትባት እንዲያገኙ ለማበረታታት ተስፋ ያደርጋል። የክትባታችን እና የክትባት ደረጃቸው መቶኛ በሆነ ቁጥር አንድ ህዝብ እንዴት በሽታን እንደሚጎዳ ፕሮግራማችን ያስመስላል። የክትባት ህዝብ ቁጥር መጨመር የተጎዱ ሰዎችን ቁጥር እንዴት መቀነስ እንደሚቻል በማሳየት የመንጋ ያለመከሰስን ያሳያል።

የግራፍ ንድፈ ሀሳቦችን በመጠቀም ይህንን በማትላብ ውስጥ ሞዴል እናደርጋለን። የግራፍ ንድፈ ሐሳብ በእቃዎች መካከል ያለውን ግንኙነት የሚወክል የሂሳብ መንገድ ነው። በግራፍ ንድፈ ሀሳብ ፣ ግራፎች በጠርዝ (ወይም በመስመሮች) የተገናኙ ጫፎች (ወይም አንጓዎች) አሏቸው። ለኛ ፕሮጀክት ፣ መስቀለኛ መንገዶቹ የሚመለከታቸው ግለሰቦች ናቸው እና ጫፎቻቸው ግንኙነቶቻቸው ናቸው። ለምሳሌ ፣ ሁለት አንጓዎች ከጫፍ ጋር ከተገናኙ ታዲያ እነሱ “ጓደኞች” ናቸው ወይም እርስ በእርስ አንድ ዓይነት ግንኙነት አላቸው ማለት ነው። ይህ ግንኙነት በሽታው እንዲዛመት መንገድ ነው። በሕዝቦች ውስጥ በተገናኙ ግለሰቦች መካከል በሽታ እንዴት እንደሚሰራጭ ለማየት ስለፈለግን የግራፍ ንድፈ -ሀሳብ የእኛን ጽንሰ -ሀሳብ ለመቅረፅ የተጠቀምነው ለዚህ ነው።

የእኛ ፕሮጀክት የሞንቴ ካርሎ ዘዴንም ያካትታል። የሞንቴ ካርሎ ዘዴ የቁጥር ውጤቶችን ለመቀበል ተደጋጋሚ የዘፈቀደ ናሙና የሚፈጥሩ ስልተ ቀመሮች ናቸው። በፕሮጀክታችን ውስጥ ፣ ሰዎች በበሽታው የተጠቁበትን መጠን ለማየት የመጀመሪያውን የክትባት መቶኛ በመቀየር የእኛን ማስመሰል ብዙ ጊዜ ለማሄድ እንጠቀምበታለን።

ሁሉም የፕሮጀክት ኮድ ከታች ተገናኝቷል!

ፒሲ ክሬዲት

የማትላብ አገናኝ ወደ ግራፍ ቲዎሪ

ደረጃ 1 Adjacency Matrix ን ይፍጠሩ

Adjacency Matrix ን ይፍጠሩ
Adjacency Matrix ን ይፍጠሩ
Adjacency Matrix ን ይፍጠሩ
Adjacency Matrix ን ይፍጠሩ

አዲስ ስክሪፕት ይፍጠሩ። እኛ የእኛን 'infectionSim.m' ብለን እንጠራዋለን።

እኛ ተለዋዋጭ ‹NUMOFPEOPLE› እንፈጥራለን። ለማንኛውም ኢንቲጀር እሴት ሊመድቡት ይችላሉ። ይህ በሕዝብዎ ውስጥ ያሉትን ሰዎች ብዛት ይወክላል።

ከአሁን በኋላ ያንን እንገምታለን

NUMOFPEOPLE = 20;

ላልተዛወረው ግራፍ የማትላብን የግራፍ ንድፈ ሃሳብ ተግባሮችን በመጠቀም መጀመሪያ ይጀምሩ።

የበለጠ ለመማር ፍላጎት ካለዎት ስለእሱ የበለጠ በጥልቀት ለማንበብ አገናኝ እዚህ አለ።

www.mathworks.com/help/matlab/math/directed-and-undirected-graphs.html

የአቅራቢያ ማትሪክስ ፈጠረ።

adjMatrix = ዜሮዎች (NUMOFPEOPLE);

ይህ የ 0 ሰከንድ ካሬ ማትሪክስ ይፈጥራል። በማትሪክስ ውስጥ ያለው እያንዳንዱ ረድፍ ሰው ነው። በማትሪክስ ውስጥ ያለው እያንዳንዱ አምድ ሰው ቀኑን ሙሉ የሚያገኘው ሰው ወይም ጓደኛ ነው።

AdjMatrix ለ 20 ሰዎች ምን እንደሚመስል በዓይነ ሕሊናህ ለመሳል ለማገዝ ስእል 100 (ከላይ) ይመልከቱ።

** ከዚህ ነጥብ ጀምሮ NUMOFPEOPLE ከ 20 ጋር እኩል ነው ብለን እንገምታለን። **

ይህንን ተጓዳኝ ማትሪክስ ለማቀድ መሞከር ይችላሉ። ስለእነዚህ ዓይነቶች ማትሪክቶች ማሴር ትንሽ ተጨማሪ መረጃ እዚህ አለ።

ማሳሰቢያ - የአቅራቢያ ማትሪክስ እንዴት እንደሚሰራ።

ለምሳሌ ፦

%በአቅራቢያው ያለውን ማትሪክስ ማድረግ

a = [0, 1, 0, 0, 0; 1, 0, 1, 1, 1; 0, 1, 0, 0, 0; 0, 1, 0, 0, 0; 0, 1, 0, 0, 0] %ሴራ g = ግራፍ (ሀ); %የግራፍ ተግባሩን (የግራፍ ንድፈ ሀሳብ) ምስል (1) በመጠቀም; ሸ = ሴራ (ሰ);

በ “ማስታወሻ” ውስጥ ኮዱን በመጠቀም በአቅራቢያው ባለው ማትሪክስ ውስጥ ጠርዞችን እንዴት ማከል እንደሚቻል ለማየት ምስል 1 (ከላይ) ይመልከቱ።

ደረጃ 2 - ግንኙነቶችን ይፍጠሩ።

ግንኙነቶችን ይፍጠሩ።
ግንኙነቶችን ይፍጠሩ።

አሁን ሰዎች (ጫፎች ወይም አንጓዎች) ተፈጥረዋል ፣ የግንኙነት መረብ (የግራፉ መስመሮች ወይም ጠርዞች) መፍጠር አለብን። ይህ ሰዎች በቀን ውስጥ እንዴት እንደሚገናኙ እና ከሌሎች ሰዎች ጋር እንደሚገናኙ ያስመስላል።

ይህ በብዙ መንገዶች ሊከናወን ይችላል። ይህንን ተግባር ለማጠናቀቅ አንዱ መንገድ እያንዳንዱ ሰው በቀን ውስጥ ምን ያህል ሰዎች እንደሚገናኙ ለመወሰን ለእያንዳንዱ ሰው የዘፈቀደ ቁጥር መመደብ ነው።

numOfFriendsMatrix = randi ([leastFriendsPersonCanHave ፣ mostFriendsPersonCanHave] ፣ 1 ፣ NUMOFPEOPLE) ፤

ይህ እያንዳንዱ ሰው በቀን የሚኖረውን መስተጋብር ብዛት የሚወክል የዘፈቀደ ኢንቲጀር 1 በ 20 ማትሪክስ ያደርገዋል። የዚህ ማትሪክስ ዓምዶች ከእያንዳንዱ ሰው ጋር የሚዛመድ ቁጥር ይሆናል። ለምሳሌ ፣ ቢያንስ ጓደኞቼን ፔርሰንካይን = 2 እና አብዛኞቹን ወዳጆችን ፔርሰንካንን = 5 ብንመድብ ፣ በ 2 እና 5 መካከል የዘፈቀደ እሴቶችን እናገኛለን።

ከራንድ () ጋር ችግር እያጋጠመዎት ነው? ተርሚናል ውስጥ ፣ ይተይቡ

ራንዲ መርዳት

በመቀጠል ፣ በሕዝቡ ውስጥ እያንዳንዱ ሰው በሕዝቡ ውስጥ እንዴት እንደተገናኘ/እንደሚገናኝ የዘፈቀደ ማትሪክስ (“allFriendsmatrix” ይባላል)።

tempMatrix = ;

ቆጠራ = 0; allFriendsMatrix = ; ለ k = 1: NUMOFPEOPLE ርዝመት (tempMatrix) ~ = numOfFriendsMatrix (k) ቆጠራ = ቆጠራ +1; temp = randi ([1, NUMOFPEOPLE]); tempMatrix (ቆጠራ) = temp; ርዝመት (tempMatrix) ~ = 9 tempMatrix = [tempMatrix, NaN] ያበቃል allFriendsMatrix = [allFriendsMatrix; tempMatrix]; tempMatrix = ; ቆጠራ = 0; አበቃ

ስለ ኮድ ጥልቅ ማብራሪያ;

የእያንዳንዱን ሰው ጓደኞች/መስተጋብር ዝርዝር ለመያዝ በመጀመሪያ ባዶ ጊዜያዊ ማትሪክስ እንፈጥራለን። እኛ በ tempMatrix ውስጥ አዲሱን የዘፈቀደ ግንኙነት የት እንደሚጣበቅ የሚከታተል ቆጠራንም እንጀምራለን። በሕዝቡ ውስጥ ላሉት እያንዳንዱ ግለሰብ ይህ እንዲከሰት ለ ‹loops› 20 ጊዜዎች ይሮጣሉ። የእያንዳንዱ ሰው tempMatrix በዘፈቀደ ከተመደበው የግንኙነቶች ብዛት ተመሳሳይ ርዝመት እስከሚሆን ድረስ የመጀመሪያው ዙር loop ይሠራል። በዚህ ሉፕ ውስጥ በሕዝብ ውስጥ ካለው ሰው ጋር የሚዛመድ የዘፈቀደ ቁጥር ተፈጥሯል እና ወደ tempMatrix ውስጥ ይቀመጣል። የእያንዳንዱ የ tempMatrixes ርዝመቶች የተለያዩ ስለሆኑ እነዚህን ሁሉ tempMaticies ሁሉንም ወደ አንድ ማትሪክስ (‹allFriendsMatrix›) ማያያዝ እንድንችል አንዳንድ የናኤን እሴቶችን መፍጠር ያስፈልገን ነበር። ሁለተኛው loop ይህንን ችግር በእያንዳንዱ የ tempMatrix ውስጥ NaN ን በመጨመር ይህንን ችግር ይፈታል። አንድ ጊዜ ሊመደብ የሚችል የጓደኞች የላይኛው ወሰን የነበረው ከ 5 የሚበልጥ ቁጥር ስለሆነ የ ‹‹›››››››››››››››››››። ‹9 ›የሚለው እሴት ተለዋዋጭ ነው እና‹ mostFriendsPersonCanHave ›ከ 9 በላይ በሚሆንበት ጊዜ መለወጥ አለበት/መለወጥ አለበት። የመጨረሻዎቹ ሶስት የኮድ መስመሮች (መጨረሻውን ሳይጨምር) tempMatrix ን ወደ‹ allFriendsMatrix ›ቀጣዩ ረድፍ ውስጥ ያክላል። ከዚያ tempMatrix ን ያጸዳል እና ለሚቀጥለው ሰው ይቆጥራል።

ውፅዓት

በሉፕ (ለመጀመሪያዎቹ ሶስት መስመሮች በፊት) ለመጀመሪያው ሩጫ ውጤቱ መምሰል ያለበት ይህ ነው።

tempMatrix = 16 8 17 16 13 ናኤን ናኤን ናኤን ናኤን

allFriendsMatrix =

16 8 17 16 13 ናኤን ናአን ና 8 8 2 7 11 ናኤን ናአን ና 10 10 13 ናኤን ናኤን ናኤን 11 11 2 2 ናአን ናኤን ናኤን ናኤን 17 10 9 3 1 ናኤን ናኤን 16 16 6 18 10 16 ናኤን ኤን ኤን 2 2 14 14 3 13 ናኤን ናን 8 8 14 14 8 ናኤን ናኤን 7 7 ናኤን 7 7 ናኤን ናኤን 5 18 ናኤን ናኤን ናኤን ናኤን ናኤን 1 7

በመቀጠል እነዚህን ግንኙነቶች ወደ adjMatrix ያክሉ።

ለእያንዳንዱ ረድፍ = 1: NUMOFPEOPLE

ለእያንዳንዱ ኮል = 1: 9 ኢስናን ከሆነ (allFriendsMatrix (eachRow, eachCol)) == 0 adjMatrix (eachRow, allFriendsMatrix (eachRow, eachCol)) = 1; adjMatrix (allFriendsMatrix (እያንዳንዱRow, eachCol), eachRow) = 1; መጨረሻ መጨረሻ መጨረሻ

የኮድ ማብራሪያ

ይህ ድርብ ለሉፕ በእያንዳንዱ ረድፍ እና በ ‹allFriendsMatrix› አምድ ውስጥ ያልፋል። መግለጫው ‹NN› ላልሆኑ እሴቶች ሁሉ የሚሄድ ከሆነ። በመሠረቱ የግራፉን ጠርዞች ወይም መስመሮች ይፈጥራል። ስለዚህ ይህ የሚያደርገው የመጀመሪያው መስመር ሰው 1 ለሰው 16 እና ሰው 16 ለሰው 1. አቅጣጫ ስለሌለው 1 ለሁለቱም መለወጥ አለበት! እኛ ከ 1 እስከ 16 ጠርዝ ብቻ እና ከ 16 እስከ 1. ሊኖረን አይችልም 1. በማትላብ ውስጥ በትክክል እንዲሠራ ሚዛናዊ መሆን አለባቸው።

በእኛ ማስመሰል ውስጥ ሰዎች ከራሳቸው ጋር መስተጋብር መፍጠር እንደማይችሉ አረጋግጠናል። እሴቶቹን በዘፈቀደ ስናደርግ ፣ በአቅራቢያችን ያለው ማትሪክስ ይህንን ስህተቶች የማግኘት ዕድል አለ።

ይህንን በሚከተለው ኮድ እናስተካክለው

ለእያንዳንዱ = 1: NUMOFPEOPLE

adjMatrix (እያንዳንዱ ፣ እያንዳንዱ) = 0; አበቃ

የኮድ ማብራሪያ

ይህ ለሉፕ ሰው 1 ሁሉንም ሰው በማድረግ 1 ሰው 1 ሰው 2 ሰው 2 አለመገናኘቱን ያረጋግጣል። ከላይ ከግራ ወደ ታች ቀኝ ማትሪክስ ሁሉም 0 ናቸው።

ውፅዓት

ለዚህ የአሁኑ ማስመሰል የመጨረሻው adjMatrix ነው። ይህ በግራፉ ውስጥ ያሉትን ሁሉንም መስመሮች (ስእል 2) ይይዛል።

adjMatrix =

0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 1 1 0 1 1 0 0 0 1 0 1 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 0 1 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 0 1 0 1 0 0 0 0 1 1 1 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0

የ ‹adjMatrix› ግራፍን ለማየት ስእል 2 ን ይመልከቱ።

ደረጃ 3 - የበሽታ ስታቲስቲክስን ያክሉ።

አሁን የእርስዎ ፕሮግራም ከዘፈቀደ ሰዎች ስብስብ ጋር ግራፍ መፍጠር እና የዘፈቀደ ግንኙነቶችን መፍጠር ስለሚችል ፣ እነዚህ በሕዝብ ውስጥ ያሉ መስተጋብሮች እንዴት ኢንፌክሽኑን ሊጨምሩ ወይም ሊቀንሱ እንደሚችሉ ለማየት የበሽታውን መረጃ ወይም ስታቲስቲክስ ማስገባት አለብን።

እነዚህን ተለዋዋጮች ይፍጠሩ

unvacc %አይነት: ድርብ; በክትባት ያልተያዙ ሰዎች በበሽታው የመያዝ እድላቸው በመቶኛ ነው

vacc %አይነት: ድርብ; የክትባት ሰዎች የበሽታውን unvacc_perc %የማግኘት ዕድል በመቶኛ - ድርብ; መቶኛ ህዝብ ያልተከተበ init_infect %አይነት: int; መቶኛ ህዝብ ክትባት ሰጥቷል

ቀጥሎ አንዳንድ ስሌቶችን ማድረግ አለብን።

እኛ 3*NUMOFPEOPLE ማትሪክስ የሆነውን ‹infectionMat› እንሰራለን።

vacc_perc = 1-unvacc_perc;

infectionMat = nan (3, NUMOFPEOPLE); ቁጥር = ክብ (vacc_perc * NUMOFPEOPLE); infectionMat (1, 1: ቁጥር) = vacc; infectionMat (1 ፣ ቁጥር+1: መጨረሻ) = unvacc; infectionMat (2 ፣ 1: መጨረሻ) = 0; infectionMat (2, 1: init_infect) = 1;

የኮድ ማብራሪያ

መስመር 1 - ክትባት ያልተከተበ የሕዝብ ብዛት መቶኛ

መስመር 2 - 3*N የሰዎች ማትሪክስ ቁጥር ይፍጠሩ

መስመር 3 - ከክትባት መቶኛ የተከተቡ ሰዎችን ቁጥር ይወቁ

መስመር 4 - ለክትባት ሰዎች ክትባቱን ከመያዝ ጋር ተያይዞ ያለመከሰስ ስጣቸው። ይህ ዋጋ የተመደበው ስለ በሽታው በምርምር ላይ በመመርኮዝ ነው።

መስመር 5 - ለተቀረው ህዝብ (ክትባት ለሌላቸው ሰዎች) መቶኛ ያለመከሰስ ስጣቸው። ይህ ዋጋ የተመደበው ስለ በሽታው በምርምር ላይ በመመርኮዝ ነው።

መስመር 6 - መጀመሪያ ሁሉንም ሰዎች እንዳይበከሉ ያዘጋጁ።

መስመር 7 - በመጀመሪያ በበሽታው ለተያዙ ሰዎች ብዛት ፣ የመጀመሪያዎቹን ባልና ሚስት አምዶች በዚህ መሠረት ይሙሉ።

አሁን ለበሽታው ማስመሰል ሁሉንም መለኪያዎች አዘጋጅተናል ፣ ሰውዬው (ክትባትም ሆነ ክትባት ያልተከተቡ) በበሽታው የመያዝ እድልን በዘፈቀደ እናደርጋለን። በዚህ 'infectionMat' በሦስተኛው ረድፍ ለእያንዳንዱ ሰው በ 0 እና 1 መካከል የዘፈቀደ እሴቶችን በመመደብ በሚቀጥለው ደረጃ ይከናወናል።

ደረጃ 4 - ክትባት ያለው እና ያልተከተበ ሰው በበሽታው የመያዝ እድሉን በዘፈቀደ ያዙ።

በመቀጠልም እያንዳንዱን ሰው የዘፈቀደ ቁጥር ይመድቡ ፣ ይህ ሰውዬው በበሽታው መያዙን ወይም አለመሆኑን ለማወቅ በኋላ ላይ ጥቅም ላይ ይውላል።

ለ w = 1: ርዝመት (infectionMat)

infectionMat (3, w) = ራንድ; አበቃ

የኮድ ማብራሪያ

ይህ ለሉፕ በመጨረሻው ደረጃ ከተፈጠረው ‹infectionMat› ሦስተኛው ረድፍ ጋር ይዛመዳል። 'ራንድ' ለእያንዳንዱ የረድፍ 3 መረጃ ጠቋሚ በ 0 እና 1 መካከል ያለውን እሴት ይመድባል።

ውፅዓት

ኢንፌክሽን አሁን ተጠናቀቀ! ይህ 100% ክትባት ካለው እና 1 ሰው መጀመሪያ በበሽታው ከተያዘ ህዝብ ጋር ነበር።

infectionMat =

አምዶች ከ 1 እስከ 12 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 0.7500 1.0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0869 0.5489 0.3177 0.9927 0.7236 0.5721 0.7172 0.9766 0.4270 0.9130 0.7 0.7500 0.7500 0 0 0 0 0 0 0 0 0 0.0480 0.3593 0.2958 0.6291 0.1362 0.3740 0.8648 0.2503

ረድፍ 1 - በበሽታው የመያዝ እድሉ መቶኛ ነው

ረድፍ 2: ተበክሏል ወይም አልተበከለ (ቡሊያን እሴት)

ረድፍ 3 - በበሽታው ያልተያዘ ሰው በበሽታው ከተያዘ ሰው ጋር መገናኘቱን ለመመርመር የሚያገለግል ቁጥር። በበሽታው ካልተያዘ ሰው በበሽታው ከተያዘ ፣ ይህ ቁጥር ከተራ ቁጥር 1 (ለተመሳሳይ አምድ) ካለው ቁጥር ይበልጣል ፣ ከዚያ በበሽታው ተይዘዋል። ይህንን ተግባር በደረጃ 7 ውስጥ ኮድ እናወጣለን።

ደረጃ 5 - ከመጀመሪያው መረጃ ያልተከተቡ እና በበሽታው የተያዙ ሰዎችን ማትሪክስ ይፍጠሩ።

ሁሉንም በበሽታው የተያዙ ሰዎችን ከበሽታ ማት የሚያከማች “ማትሪክስ ኡንቫክ” እና “ማትሪክስ ተበክሏል” የሚባሉ 2 ማትሪክስ ይፍጠሩ። ያልተከተቡ እና ያልተከተቡ ግለሰቦችን ተፅእኖ በዓይነ ሕሊናችን ለመመልከት በመርዳት በበሽታው የተያዙ ፣ ያልተከተቡ ወይም የተከተቡትን ሰዎች ግራፍ ቀለም እንዲያስቀምጥ ይህ ጥቅም ላይ ይውላል።

እያንዳንዱን አጽዳ

matrixInfected = ; matrixUnvacc = ; ለ h = 1: ርዝመት (infectionMat) ከሆነ ኢንፌክሽንMat (1, h) == unvacc matrixUnvacc = [matrixUnvacc, h]; ለሰው መጨረሻ = 1: NUMOFPEOPLE infectionMat (2, person) == 1 matrixInfected = [matrixInfected, person]; መጨረሻ መጨረሻ

የኮድ ማብራሪያ

ያልተከተቡ እና በበሽታው የተያዙ ሰዎችን ቁጥሮች በቅደም ተከተል ለማከማቸት ሁለት ባዶ ማትሪክስ ይፍጠሩ። ሁለቱም ለሎፕስ 20 ጊዜ ያካሂዳሉ እና መግለጫው ከተረካ ቁጥሩ ወደ ትክክለኛው ማትሪክስ ይታከላል።

ውፅዓት

matrixUnvacc =

ማትሪክስ ተበክሏል =

[1]

ደረጃ 6 - ሴራ የመጀመሪያ ግራፍ።

ሴራ የመጀመሪያ ግራፍ።
ሴራ የመጀመሪያ ግራፍ።

በመቀጠል የአቅራቢያውን ማትሪክስ እናሴራለን።

g = ግራፍ (adjMatrix);

ምስል (1) p = ሴራ (g ፣ 'NodeColor' ፣ 'b' ፣ 'MarkerSize' ፣ 7); ማድመቅ (ገጽ ፣ ማትሪክስ Unvacc ፣ ‘NodeColor’ ፣ ‘g’) ማድመቅ (ገጽ ፣ ማትሪክስ ተበክሏል ፣ ‘ኖድኮለር’ ፣ ‘r’) title_unvacc = unvacc_perc*100; ርዕስ (['ያልተከተቡ ሰዎች መቶኛ' ፣ num2str (title_unvacc) ፣ '%']); አቁም (ፍጥነት)

የኮድ ማብራሪያ

በማትላብ ውስጥ የግራፍ ንድፈ ሀሳብ በተግባሮች ውስጥ ተገንብቷል። የግራፍ () ተግባሩን ስንጠቀም ፣ ‹adjMatrix› ን ወደ ትክክለኛ አቅጣጫ ባልተቀየረ ግራፍ መተርጎም እንችላለን። ከዚያ ምን እንደሚመስል ለማየት የሴራ () ተግባርን በመጠቀም ሴራ መፍጠር አለብን። በማስመሰል ጊዜ ሁሉ የእቅዱን ቀለሞች በቀላሉ መቆጣጠር እና መለወጥ እንድንችል ይህንን ሴራ () ወደ ተለዋዋጭ እናስቀምጠዋለን። ሁሉም ሰዎች (ወይም አንጓዎች) መጀመሪያ ወደ ‹ሰማያዊ› ቀለም ተዘጋጅተዋል። በመቀጠልም ሁሉም ያልተከተቡ ሰዎች ወደ 'አረንጓዴ' ቀለም ተዘጋጅተዋል። ከዚያ በበሽታው የተያዙ ሰዎች ወደ ‹ቀይ› ቀለም ይቀመጣሉ። ክትባቱ ባልተከተቡ ሰዎች በተወሰነው መቶኛ እሴት መሠረት ርዕሱ ተዘጋጅቷል። ለአፍታ ማቆም () ተግባር የማትላብን አፈፃፀም ለጊዜው ያቆማል። በሰከንዶች ውስጥ የሚሰላውን በተለዋዋጭ ፍጥነት እናልፋለን።

በዘፈቀደ ቀለም የተሰየመ ግራፍ ለማየት ስዕል (ከላይ) ይመልከቱ።

በ MatLab ውስጥ ስለ ማድመቂያው () ተግባር የበለጠ ይረዱ።

ደረጃ 7 - የኢንፌክሽን እድገትን ያስመስሉ።

በመቀጠልም ከግንኙነቶች በኋላ (በ adjMatrix ውስጥ ተመዝግቦ) ማን እንደሚበከል ማወቅ እና አንድ ሰው በበሽታ ሲጠቃ ግራፍ ማዘመን አለብን።

በአንድ ቀን ውስጥ ከሰዎች ጋር ከተገናኙ በኋላ የትኞቹ ሰዎች በበሽታው እንደተያዙ ለማወቅ adjMatrix ን ይጠቀሙ።

ለእያንዳንዱ ረድፍ = 1: ርዝመት (adjMatrix)

infectionMat (2 ፣ eachRow) == 1 ለእያንዳንዱCol = 1: ርዝመት (adjMatrix) adjMatrix (እያንዳንዱRow ፣ እያንዳንዱCol) == 1 % እያንዳንዱ ረድፍ = ሰው % eachCol = ጓደኛው % የእያንዳንዱ ሰው ጓደኛ ከሆነ እና በበሽታው እንደተያዙ ይመልከቱ።. infectionMat (3 ፣ eachCol)> infectionMat (1 ፣ eachCol) infectionMat (2 ፣ eachCol) = 1; አድምቅ (ገጽ ፣ እያንዳንዱ ኮል ፣ 'ኖድኮለር' ፣ 'አር') ለአፍታ አቁም (ፍጥነት) መጨረሻ መጨረሻ መጨረሻ መጨረሻ መጨረሻ

The for loop loops በእያንዳንዱ ሰው በኩል። ሰውዬው በበሽታው ከተያዘ እያንዳንዱ ሰው/ጓደኛውን የሚፈትሽበትን እና የጓደኛው የበሽታ መከላከያ ደረጃ ከበሽታው ጥንካሬ የላቀ መሆኑን ይፈትሻል። ቀደም ብለን የፈጠርነው ‘ኢንፌክሽን ማት’ እዚህ ላይ ነው። የእያንዳንዱ የጓደኛ አምድ 1 ኛ እና 3 ኛ ረድፍ ሲነጻጸር እና 3 ኛ ረድፍ የሚበልጥ ከሆነ ጓደኛው ከበሽታው ለማምለጥ በቂ የሆነ በቂ የበሽታ መከላከያ አልነበረውም እና በመጨረሻም በበሽታው ይያዛል። እነሱ በበሽታው ከተያዙ ማድመቂያ () ወደ ቀይ በመጠቀም ወደ ቀለም እንለውጣለን።

አሁን የማስመሰል ኮድዎ መሥራት አለበት! እና ለማንኛውም የህዝብ ብዛት ፣ NUMOFPEOPLE ን ብቻ ይለውጡ!

ደረጃ 8 - በሞንቴ ካርሎ ንድፈ ሃሳብ ይጠቀሙ።

ይህንን አንድ እርምጃ ወደፊት ለመሄድ እና ከአምሳያችን (‹infectionSim.m›) መረጃን ለማውጣት ፣ በበሽታው በተያዙ በበሽታው ባልተያዙ ሰዎች በመቶኛ እና በበሽታው ከተያዙ ሰዎች መካከል ያለውን አዝማሚያ ለማስላት እና ለመሳል ፈልገን ነበር። በበሽታው ከተያዙ የክትባት ሰዎች መቶኛ በበሽታው ከተያዙ ክትባት ከሌላቸው ሰዎች መቶኛ በጣም ያነሰ መሆን አለበት ብለን እንገምታለን።

ደረጃ 9 - አስመስሎ ወደ ተግባር (ፋይል) ('infectionSim.m') ያድርጉ።

ሞንቴ ካርሎ ለማሄድ በበሽታው የተያዙ ሰዎችን መቶኛዎች ለመሳል ያንን ለመጠቀም ብዙ ጊዜ ማስመሰልን ማካሄድ እና መረጃ ማከማቸት እንፈልጋለን።

ተግባሩ እንደሚከተለው ሊዋቀር ይችላል-

የተግባር ውጤት = ኢንፌክሽን ሲም (unvacc ፣ vacc ፣ NUMOFPEOPLE ፣ unvacc_perc ፣ init_infect ፣ ፍጥነት)

አሁን በዋናው ፋይል ውስጥ ስለሚያልፉዎት በማስመሰልዎ ውስጥ ያሉትን ተለዋዋጮች አስተያየት ይስጡ (ይህንን በደረጃ 12 መፃፍ እንጀምራለን)

unvacc ፣ vacc ፣ NUMOFPEOPLE ፣ unvacc_perc ፣ init_infect

አዲሱ ተለዋዋጭ

ፍጥነት

በዋናው ፋይል (Monte_Carlo.m) ውስጥ ይመደባል።

ማሳሰቢያ - ተግባሩን ለማጠናቀቅ በተግባሩ ፋይል ታችኛው ክፍል ላይ ያለውን መጨረሻ አይርሱ!

ደረጃ 10 - በበሽታው የተያዙ እና ያልተከተቡ እና የተከተቡ ሰዎችን መቶኛ ያሰሉ።

ይህ በበሽታው የተያዙ ያልተከተቡ ሰዎችን መቶኛ ያሰላል። ይህ ኮድ በ ‹infectionSim.m› ፋይል ግርጌ ላይ ይሄዳል።

ቁጥር_of_unvacc = 0;

ቁጥር_of_infec_unvacc = 0; %ለ x = 1 በበሽታው የተያዙ ያልተከተቡ ሰዎች መቶኛን ያሰላል - ርዝመት (infectionMat) ኢንፌክሽንMat (1 ፣ x) == unvacc number_of_unvacc = number_of_unvacc+1; infectionMat (1, x) == unvacc & infectionMat (2, x) == 1 number_of_infec_unvacc = number_of_infec_unvacc +1 ከሆነ ያበቃል የፍጻሜው መቶኛ_ወንጀክ_እና_ኢንፌክ = (ቁጥር_of_infec_unvacc / number_of_unvacc)*100;

የኮድ ማብራሪያ

በ loop ውስጥ ከ NUMOFPEOPLE ጊዜ በላይ ይሽከረከራል። በበሽታው ውስጥ ያለው ቁጥር (ቁጥር) ከ unvacc ቁጥር (ማለትም 0.95 == 0.95) ጋር በሚዛመድ ቁጥር ፣ ከዚያም ያልተከተቡ ሰዎች ቁጥር በ 1 ይጨምራል። በበሽታው የተያዙ እና ያልተከተቡ ቁጥር በ 1 ጭማሪ 1. የመጨረሻው መስመር በበሽታው የተያዙ ፣ ያልተከተቡ ሰዎችን ቁጥር በጠቅላላ ያልተከተቡ ሰዎችን ቁጥር ይከፋፍላል። ከዚያ መቶኛ ከዚህ ይሰላል።

ፈተና:

በበሽታው ከተያዙ ሰዎች የክትባት መቶኛን ለማስላት ይሞክሩ! (ፍንጭ - ከዚህ ከላይ ካለው ኮድ ጋር በጣም ተመሳሳይ ነው ፣ ሆኖም ግን አንዳንድ ተለዋዋጮች ተለውጠዋል እና ስሞች ተስተካክለዋል።)

በመቀጠል በጠቅላላው የህዝብ ብዛት መሠረት በበሽታው ከተያዙ ሰዎች መቶኛ ይሰላል

pre_per_infect = cumsum (infectionMat (2,:));

per_infect = (pre_per_infect (1 ፣ NUMOFPEOPLE)/NUMOFPEOPLE)*100;

የኮድ ማብራሪያ

ድምር ድምር የሚሰላው ሰው በበሽታው ከተያዘ ወይም ካልተያዘ 1 እና 0 ሴ የሚያከማችውን የኢንፌክሽን ማት ሁለተኛ ረድፍ በመጠቀም ነው።የኩምሱ () ተግባር ማትሪክስን ስለሚመልስ ፣ በማትሪክስ ('pre_per_infect (1 ፣ NUMOFPEOPLE)')) ውስጥ የመጨረሻውን እሴት እንወስዳለን ፣ ይህም ከ ‹infectionMat (2 ፣:)› የሁሉም እሴቶች ትክክለኛ ድምር መሆን አለበት። ድምርውን በ NUMOFPEOPLE በመከፋፈል እና በ 100 በማባዛት በጠቅላላው ህዝብ ውስጥ በበሽታው የተያዘውን የመጨረሻ መቶኛ እናገኛለን።

ደረጃ 11 በእርስዎ ተግባር ‹infectionSim.m› ውስጥ የውጤት ተለዋዋጭ ይፍጠሩ።

ውፅዓት = [per_infect ፣ percent_of_unvacc_and_infec ፣ percent_of_vacc_and_infec] ፤

የኮድ ማብራሪያ

ተግባሩ በሚጠራበት እና በሚሠራበት ጊዜ ተመልሶ ወደ ዋናው (Monte_Carlo.m) የሚላክ ይህንን መረጃ በውጤት ውስጥ ያከማቹ። ይህ መረጃ ከተከተቡ እና ካልተከተቡ ሰዎች በበሽታው ከተያዙት በመቶኛ ነጥቦችን ለመሳል ያገለግላል።

የእርስዎ 'infectionSim.m' ተግባር አሁን መከናወን አለበት! ሆኖም ፣ እሱ አይሠራም ምክንያቱም አሁንም ዋናውን መፃፍ አለብን!

ደረጃ 12 የማስመሰል የመጀመሪያ ሁኔታዎችን ከተጠቃሚው ለማግኘት ምናሌን ይፍጠሩ።

ተለዋዋጭውን እንዴት እንደተናገርን ያስታውሱ

ፍጥነት

በዋናው ተግባር ውስጥ ይፈጠር እና ያልፋል? ወደ ተግባሩ ለማለፍ እሴቶቹን ማግኘት አለብን። ማስታወሻ ፣ ተግባሩን በሚጠሩበት ጊዜ የእሴቶቹ ቅደም ተከተል አስፈላጊ ነው!

አንዳንድ መልሶች ወደ ተርሚናል እንዲተይቡ ተጠቃሚውን በመጠየቅ ይጀምሩ።

> በሽታ ይምረጡ። ልብ ይበሉ ጉዳዩ አሳሳቢ ነው >> ትክትክ >> ጉንፋን >> ኩፍኝ >> በሽታ ተመርጧል ጉንፋን >> የህዝብ ብዛት መጠን። >> 20 >> 200 >> የሕዝብ ብዛት ተመርጧል 20 >> የማስመሰል ፍጥነት ይምረጡ። >> ፈጣን >> ቀርፋፋ >> ፍጥነት ተመርጧል - ፈጣን

ይህ ኮድ ከዚህ በታች ለተጠቃሚው ምን ዓይነት በሽታ ማየት እንደሚፈልጉ ይጠይቃል።

disp ('በሽታ ይምረጡ። ጉዳዩ ስሜትን የሚነካ መሆኑን ልብ ይበሉ')

fprintf ('ፐርቱሲስ / n ጉንፋን / n ኩፍኝ / n') በሽታ = ግብዓት ('በሽታ ተመርጧል', 's'); isequal (በሽታ ፣ 'ፐርቱሲስ') vacc =.85; %15 %በሽታ unvacc =.20; %80 %ሌላ በሽታ የመያዝ እድል ከተገኘ (በሽታ ፣ 'ጉንፋን') vacc =.75; %25 በመቶ በሽታ unvacc =.31; %69 %ሌላ በሽታ የመያዝ እድል ከተገኘ (በሽታ ፣ 'ኩፍኝ') vacc =.97; %3 በሽታ የመያዝ እድሉ unvacc =.10; %90 %በሽታ የመያዝ እድሉ

ኮድ ማብራሪያ;

የ disp () ተግባር መግለጫውን ወደ ማያ ገጹ ያትማል እንዲሁም የተለያዩ አማራጮችን ያትማል። በዚህ መሠረት በሽታው ይመደባል። ይህ ስሪት በአሁኑ ጊዜ ልክ ያልሆነ ግብዓት አይቆጠርም። ልክ ያልሆነ ግብዓት ስህተት አምጥቶ ፕሮግራሙን ሙሉ በሙሉ ያቆማል። እያንዳንዱ በሽታ ከእሱ ጋር የተዛመዱ ባዶ እና የማይታወቁ እሴቶች አሉት። እነዚህ እሴቶች በዘፈቀደ አይደሉም። ስለ በሽታዎች ስለ ስታቲስቲክስ ምርምር እነዚህን እሴቶች አግኝተናል።

በመቀጠልም ለተመረጠው በሽታ ትልቅ ወይም ትንሽ የህዝብ ብዛት መሞከር ከፈለጉ ተጠቃሚውን መጠየቅ አለብን።

disp ('የህዝብ ብዛት ይምረጡ።')

fprintf ('20 / n200 / n ') ፍጥነት = ግብዓት (' ሕዝብ ተመርጧል ',' s '); isequal (ፍጥነት ፣ '20') Population_size = 20; ሌላ ከሆነ እኩል (ፍጥነት ፣ '200') Population_size = 200; አበቃ

የኮድ ማብራሪያ

ይህ ለተጠቃሚው መግለጫ ያትማል እና ተጠቃሚው ለመሞከር የሚፈልገውን የህዝብ ብዛት እንዲያስገባ ይጠይቃል። ይህ ስሪት በአሁኑ ጊዜ ልክ ያልሆነ ግብዓት አይቆጠርም። ልክ ያልሆነ ግብዓት ስህተት አምጥቶ ፕሮግራሙን ሙሉ በሙሉ ያቆማል። 20 ተመርጧል ምክንያቱም አሁንም በትንሽ ህዝብ ውስጥ ኢንፌክሽን እንዴት እንደሚሰራጭ ጥሩ ሀሳብ የሚሰጥ አነስተኛ የናሙና መጠን ነው። በግራፉ ላይ የተቀረጹት 200 ነጥቦች በጭራሽ ምንም መደራረብ ስለሌላቸው ሁሉም ነገር በቀላሉ ሊታይ እና ሊለያይ ስለሚችል 200 ሰዎች እንደ ትልቅ አማራጭ ተመርጠዋል።

በመቀጠልም የማስመሰልን ፍጥነት ማግኘት አለብን።

disp ('የማስመሰል ፍጥነት ይምረጡ።')

fprintf ('ፈጣን / n ቀርፋፋ / n') ፍጥነት = ግብዓት ('የተመረጠው ፍጥነት' ፣ 's'); isequal ከሆነ (ፍጥነት ፣ ‹ፈጣን›) sim_speed = 0; ሌላ ከሆነ (እኩል ፣ ፍጥነት ፣ “ቀርፋፋ”) sim_speed = 0.25; አበቃ

የኮድ ማብራሪያ

ይህ ሂደት የበሽታውን ዓይነት እና የህዝብ ብዛት ከማግኘት ጋር ተመሳሳይ ነበር። ለፈጣን ፣ ለአፍታ ማቆም አይኖርም። እና ለዝግታ ፣ አስመሳዩን በሚሠራበት ጊዜ ለ loop ውስጥ 0.25 ሰከንድ መዘግየት ይኖራል።

በጣም ጥሩ! አሁን እኛ ከሚያስፈልገን ተጠቃሚ ሁሉም ግብዓቶች አሉን! ያልተከተቡ ሰዎች ለተለያዩ መቶኛዎች መረጃ ለመሰብሰብ እንሂድ።

ደረጃ 13: ያልተከተቡ ሰዎችን % ይምረጡ እና ለተመረጠው መቶኛ ያልተከተቡ እና የተበከሉትን አማካይ ያሰሉ።

ይህ ኮድ ላልተከተቡ ሰዎች 0% ነው።

% ------- % 0 ያልተከተቡ ------------

per_infect_av_0 = ; የእንግዳ_av_0 = ; ለ i = 1:20 ውጭ = ኢንፌክሽን ሲም (unvacc ፣ vacc ፣ population_size ፣ 0 ፣ 1 ፣ sim_speed); per_infect_av_0 = [per_infect_av_0 ፣ ውጭ (1, 1)]; _vvcc_and_infec_av_0 = [ፐርሰንት_unvacc_and_infec_av_0 ፣ ውጭ (1 ፣ 2)] ፤ መጨረሻ አማካይ_ኢንፌክሽን_0 = አማካይ (per_infect_av_0); አማካይ_unvacc_and_infected_0 = አማካይ (በመቶኛ_unvacc_and_infec_av_0);

ኮድ ማብራሪያ;

ለ loop 20 ጊዜ ይካሄዳል። ከተግባሩ የተገኘው ውጤት ፣ infectionSim () ፣ ውጭ ውስጥ ተከማችቷል። የ loop በሄደ ቁጥር ፣ ከዚያ በጠቅላላው ሕዝብ ውስጥ በበሽታው የተያዘው መቶኛ ወደ ማትሪክስ ፣ ‹per_infect_av_0› ላይ ይጨመራል። በተጨማሪም ፣ በክትባት ያልተያዙ እና በበሽታው የተያዙት መቶኛ እንዲሁ በ ‹መቶኛ_of_unvacc_and_infec_av_0› ማትሪክስ ውስጥ በእያንዳንዱ ጊዜ ይታከላል። ባለፉት ሁለት መስመሮች ውስጥ እነዚህ ሁለቱ ከላይ የተጠቀሱት ማትሪክስ ከዚያ በአማካኝ እና በተለዋዋጮች ውስጥ ይከማቻሉ። ለማጠቃለል ፣ መቶኛዎቹ ለእያንዳንዱ ማስመሰል ፣ በአማካይ እና በግራፍ ተከማችተዋል። ሞንቴ ካርሎ አስመስሎ መስራት እና ውጤቱን ለማሳየት አማካይ ዋጋን ለማሳየት ያገለግላል። ለሙከራ ዓላማዎቻችን ፣ ማስመሰያውን 20 ጊዜ ለማሄድ እና እነዚያን እሴቶች በአማካይ እንመርጣለን።

ፈተና:

ለመሞከር ለሚፈልጉት መቶኛዎች ሁሉ ይድገሙ! ይህ እንደ መቶኛ ቁጥሮች ተለዋዋጭ ስሞችን በመለወጥ ሊከናወን ይችላል። እኛ 0%፣ 5%፣ 10%፣ 20%፣ 30%እና 50%ፈተንን።

ፍንጭ ፦

በትክክለኛው ኮድ ውስጥ መለወጥ ያለበት ብቸኛው መስመር ነው

ውጭ = ኢንፌክሽን ሲም (unvacc ፣ vacc ፣ population_size ፣ 0 ፣ 1 ፣ sim_speed);

በአስርዮሽ ቅርፅ ዜሮውን ወደ መቶኛ ይለውጡ። ለምሳሌ ፣ ለ 5% ያልተከተቡ ማስመሰል ፣ 0 በ 0.5 መተካት አለበት።

ደረጃ 14 - ግራፍ - 'በክትባት ባልተከተቡ Vs ውስጥ ያለው የኢንፌክሽን አዝማሚያ። ለተለየ በሽታ ክትባት ተሰጥቷል '

ባልተከተቡ ሰዎች እና ባልተከተቡ ሰዎች ውስጥ የኢንፌክሽን አዝማሚያ ግራፍ ለማድረግ ይህ ኮድ ነው።

graph_mat_y = [አማካኝ_ኢንፌክሽን_0 ፣ አማካይ_ኢንፌክሽን_5 ፣ አማካይ_ኢንፌክሽን_10 ፣ አማካይ_ኢንፌክሽን_20 ፣ አማካኝ_በሽታ_30 ፣ አማካይ_በሽታ_50];

graph_mat_x = [0, 5, 10, 20, 30, 50]; ተዳፋት = (አማካይ_ኢንፌክሽን_5-አማካይ_ኢንፌክሽን_0)/5; line_y = [አማካኝ_ኢንፌክሽን_0 ፣ (ተዳፋት*50)+አማካይ_በሽታ_0]; line_x = [0, 50]; ምስል (2) ሴራ (ግራፍ_mat_x ፣ graph_mat_y); መስመር (line_x ፣ line_y ፣ ‘Color’ ፣ ‘red’ ፣ ‘LineStyle’ ፣’-’) ፤ ርዕስ (['' Trend in Unvaccination for ', በሽታ]); xlabel ('የመጀመሪያ ያልተከተቡ መቶኛ'); ylabel ('የመጨረሻ የተጠቃው መቶኛ')

የኮድ ማብራሪያ

መስመር 1 - በበሽታው ለተያዙት አማካይ አማካኝ y እሴቶች

መስመር 2 - ያልተከተቡ የመጀመሪያ መቶኛ መቶኛ የ x እሴቶች

መስመር 3 - የ 0% እና 5% ቁልቁል ያሰሉ

መስመር 4 - የመስመር y እሴቶችን ያከማቹ። ይህ ከ 0% ወደ 5% ክፍል መቀጠል ነው።

መስመር 5 - የመስመር y እሴቶችን ያከማቹ። ይህ መስመር የግራፉን ርዝመት ያጠፋል።

መስመር 6: ምስል ይፍጠሩ

መስመር 7 - ክትባት ያልተከተላቸውን መቶኛ በበሽታው የተያዙትን የግራፍ x እና y እሴቶችን ያቅዱ።

መስመር 8 - መስመሩን ያቅዱ። ይህ ጥቅም ላይ የሚውለው በመስመራዊ (መስመር) የማይጨምር መሆኑን ለማሳየት ነው።

መስመር 9: ለግራፉ ርዕስ ያዘጋጁ።

መስመር 10-11-ለግራፍ የ x እና y መለያዎችን ያዘጋጁ።

አሁን እርስዎ ማየት ያለብዎት የሕዝቡ ብዛት መቶኛ ክትባት ያልተከተበ ፣ በበሽታው የመያዝ መጠን ከፍተኛ ነው። እንዲሁም ወደ ቀይ የሚቀየሩ አብዛኛዎቹ ነጠብጣቦች አረንጓዴ ነጠብጣቦች መሆናቸውን ያያሉ ፣ ይህም ክትባቱ በተወሰነ ደረጃ እንደሚረዳ ያሳያል! ይህንን ትምህርት እንደወደዱት ተስፋ ያድርጉ። ማንኛውም ጥያቄ ካለዎት አስተያየት ይስጡ!

ደረጃ 15 ፦ የመጨረሻ ምርት - ማስመሰያው ምን ይመስላል

ሁሉም ኮዱ እዚህ ይገኛል

የሚመከር: