আমি সুপারিশ করতে চাই যে গুরুত্বপূর্ণ জিনিসটি হ'ল শারীরিক বাস্তববাদী, শক্তি ব্যয়ের ব্যবহারিকভাবে কার্যকর মডেল বিকাশ করা । কাঁচা ডেটার যে কোনও ভিজ্যুয়ালাইজেশন সম্পন্ন করতে পারে তার চেয়ে ব্যয়ের পরিবর্তনগুলি সনাক্ত করতে এটি আরও ভাল কাজ করবে। এসও-তে প্রস্তাবিত সমাধানের সাথে এটির তুলনা করে , আমাদের কাছে ডেটাতে একটি বক্রতা ফিট করার এবং একটি অর্থবহ পরিসংখ্যান বিশ্লেষণের মধ্যে পার্থক্যের মধ্যে খুব সুন্দর কেস স্টাডি রয়েছে ।
(এই পরামর্শটি দশক আগে আমার নিজের পরিবারের ব্যবহারের সাথে এই জাতীয় মডেলটি ফিট করার এবং সেই সময়ের মধ্যে পরিবর্তনগুলি ট্র্যাক করার জন্য এটি প্রয়োগ করার উপর ভিত্তি করে Note নোট করুন যে একবার মডেল ফিট হয়ে গেলে, এটি ট্র্যাকিংয়ের উদ্দেশ্যে সহজেই একটি স্প্রেডশিটে গণনা করা যায়) পরিবর্তন হয়, তাই স্প্রেডশিট সফ্টওয়্যারটির (ইন) সক্ষমতা দ্বারা আমাদের সীমাবদ্ধ বোধ করা উচিত নয়))
এই ডেটাগুলির জন্য, এই জাতীয় শারীরিকভাবে প্রশ্রয়যোগ্য মডেল একটি সহজ বিকল্প মডেলের তুলনায় শক্তির ব্যয় এবং ব্যবহারের নিদর্শনগুলির একদম পৃথক চিত্র উত্পাদন করে (মাসিক গড় তাপমাত্রার তুলনায় একটি চতুষ্কোণ ন্যূনতম-বর্গক্ষেত্রের দৈনিক ব্যবহারের উপযুক্ত)। ফলস্বরূপ, সহজ মডেলটিকে শক্তি ব্যবহারের নিদর্শনগুলি বোঝার, পূর্বাভাস দেওয়ার বা তুলনা করার জন্য একটি নির্ভরযোগ্য সরঞ্জাম হিসাবে বিবেচনা করা যায় না।
বিশ্লেষণ
শীতল নিউটনের ল বলছেন যে, একটি ভাল আন্দাজ মতো এই হিটিং খরচ (সময় একটি ইউনিট সময়ে) সরাসরি বাহিরে তাপমাত্রার মধ্যে পার্থক্য সমানুপাতিক হওয়া উচিত ভিতরে তাপমাত্রা । আনুপাতিকতার যে ধ্রুবক হতে পারে । কুলিংয়ের ব্যয়ও একই পরিমাণের সাথে তাপমাত্রার পার্থক্যের সাথে আনুপাতিক হওয়া উচিত - তবে অভিন্ন নয় - সমানুপাতের ধ্রুবক । (এগুলির প্রত্যেকটি বাড়ির অন্তরক ক্ষমতা এবং সেইসাথে উত্তাপ এবং শীতলকরণের দক্ষতার দ্বারা নির্ধারিত হয়))টিটি0- αβ
Unit এবং (যা ইউনিট সময়কালে প্রতি ডিগ্রি প্রতি কিলোওয়াট (বা ডলার হিসাবে প্রকাশ করা হয়) নির্ধারণ করা সর্বাধিক গুরুত্বপূর্ণ বিষয়গুলির মধ্যে রয়েছে যেগুলিαβ আমাদের ভবিষ্যতের ব্যয়ের পূর্বাভাস দিতে সক্ষম করে পাশাপাশি এর কার্যকারিতা পরিমাপ করে ঘর এবং তার শক্তি সিস্টেম।
যেহেতু এই ডেটাগুলি মোট বিদ্যুতের ব্যবহার, সেগুলিতে নাইট-হিটিং ব্যয় যেমন আলো, রান্না, কম্পিউটিং এবং বিনোদন অন্তর্ভুক্ত। আগ্রহের এই গড় বেস শক্তি ব্যবহারের প্রতি একক হিসাব (প্রতি ইউনিট সময়), যা আমি বলব : এটি যখন কতটা শক্তি সঞ্চয় করতে পারে তার উপর একটি তল সরবরাহ করে এবং যখন পরিচিত মাত্রার দক্ষতা উন্নতি করা হয় তখন ভবিষ্যতের ব্যয়ের পূর্বাভাসগুলি সক্ষম করে । (উদাহরণস্বরূপ, চার বছর পরে আমি 30% বেশি দক্ষ বলে দাবি করে একটি চুল্লি প্রতিস্থাপন করেছি - এবং সত্যই এটি ছিল))γ
অবশেষে, একটি (স্থূল) সন্নিকট হিসাবে আমি ধরে নেব যে সারা বছর ধরে ঘরটি প্রায় ধ্রুবক তাপমাত্রা তে বজায় থাকে । (আমার ব্যক্তিগত মডেলটিতে আমি শীতকালে এবং গ্রীষ্মের জন্য দুটি তাপমাত্রা যথাক্রমে ধরে নিই - তবে এখনও উভয়কে নির্ভরযোগ্যভাবে অনুমান করার জন্য এই উদাহরণে পর্যাপ্ত পরিমাণে তথ্য নেই এবং তারা যেভাবেই হোক খুব কাছাকাছি থাকবে)) এটি জেনে মান একটি সামান্য ভিন্ন তাপমাত্রায় ঘর রক্ষণাবেক্ষণের ফলাফলগুলি মূল্যায়নে সহায়তা করে যা একটি গুরুত্বপূর্ণ শক্তি সাশ্রয়ী বিকল্প।টি0টি0≤টি1
তথ্যগুলি এককভাবে গুরুত্বপূর্ণ এবং আকর্ষণীয় জটিলতা উপস্থাপন করে : বাইরের তাপমাত্রা ওঠানামা করার সময় তারা পিরিয়ডগুলিতে মোট ব্যয় প্রতিবিম্বিত করে - এবং তারা প্রচুর ওঠানামা করে, সাধারণত প্রতি মাসে তাদের বার্ষিক পরিসরের প্রায় এক-চতুর্থাংশ। আমরা দেখতে পাব, এটি ঠিক বর্ণিত সঠিক অন্তর্নিহিত তাত্ক্ষণিক মডেল এবং মাসিক মোটের মানগুলির মধ্যে যথেষ্ট পার্থক্য তৈরি করে । প্রভাবটি বিশেষত মধ্যবর্তী মাসগুলিতে উচ্চারণ করা হয়, যেখানে উভয় (বা উভয়ই) হিটিং এবং কুলিং সঞ্চালিত হয়। যে কোনও মডেল যা এই প্রকরণটির জন্য অ্যাকাউন্ট করে না, ভুলভাবে "ভাবেন" জ্বালানি ব্যয়টি বেসের হারে হওয়া উচিতγ গড় তাপমাত্রা সহ যে কোনও মাসে টি0তবে বাস্তবতা অনেক আলাদা is
আমাদের (স্বাচ্ছন্দ্যে) মাসিক তাপমাত্রা ওঠানামা সম্পর্কে তাদের ব্যাপ্তিগুলি ছাড়াই বিশদ তথ্য নেই। আমি বাস্তবের এমন পদ্ধতির সাহায্যে হ্যান্ডলিংয়ের প্রস্তাব দিচ্ছি, তবে সামান্য কিছুটা অসঙ্গতিপূর্ণ। চরম তাপমাত্রা ব্যতীত, প্রতি মাসে সাধারণত তাপমাত্রায় ধীরে ধীরে বৃদ্ধি বা হ্রাস অনুভব করা হয়। এর অর্থ আমরা বিতরণটিকে প্রায় অভিন্ন হতে পারি। যখন ইউনিফর্ম ভেরিয়েবলের ব্যাপ্তির দৈর্ঘ্য হয়এল, যে পরিবর্তনশীল একটি মান বিচ্যুতি আছে s = এল /6-√। আমি এই সম্পর্ক ব্যবহার রেঞ্জ (থেকে রূপান্তর করতে Avg. Low
করতে Avg. High
) স্ট্যান্ডার্ড ডেভিয়েশন হয়। তবে তারপরে, মূলত একটি সুন্দর আচরণের মডেলটি অর্জনের জন্য, আমি সাধারণ বিতরণগুলি ব্যবহার করে (এই আনুমানিক এসডি এবং প্রদত্ত অর্থ সহ Avg. Temp
) ব্যবহার করে এই ব্যাপ্তির শেষের প্রান্তটি হ্রাস করব ।
শেষ অবধি, আমাদের অবশ্যই একটি সাধারণ ইউনিট সময়ের সাথে ডেটা মানক করতে হবে। যদিও এটি ইতিমধ্যে চলকটিতে উপস্থিত Daily kWh Avg.
রয়েছে, এটি যথাযথতার অভাব রয়েছে, তাই হারিয়ে যাওয়া নির্ভুলতা ফিরে পাওয়ার জন্য দিনটিকে সংখ্যার দ্বারা ভাগ করে দিন total
সুতরাং, ইউনিট-সময় শীতলকরণের মডেল ওয়াই এর বাইরের তাপমাত্রায় টি হয়
y(t)=γ+α(t−t0)I(t<t0)+β(t−t0)I(t>t0)+ε(t)
কোথায় I সূচক ফাংশন এবং εএই মডেলটিতে অন্যথায় স্পষ্টভাবে ক্যাপচার না করা সমস্ত কিছু উপস্থাপন করে। এটি অনুমান করার জন্য চারটি পরামিতি রয়েছে:α,β,γ, এবং t0। (আপনি যদি সত্যই নিশ্চিত হনt0 আপনি এটির মূল্য নির্ধারণের চেয়ে এটির মান ঠিক করতে পারেন))
রিপোর্ট একটি সময় সময়কালে মোট খরচx0 প্রতি x1 যখন তাপমাত্রা t(x) সময়ের সাথে পরিবর্তিত হয় x সুতরাং হবে
Cost(x0,x1)=∫x1x0y(t)dt=∫x1x0(γ+α(t(x)−t0)I(t(x)<t0)+β(t(x)−t0)I( T ( x এর ) >টি0) + ε ( টি ( এক্স ) ) )টি'( x ) dএক্স ।
মডেলটি যদি কিছু ভাল হয় তবে ওঠানামা ε ( টি ) একটি মান গড় করা উচিত ε¯শূন্যের কাছাকাছি এবং এলোমেলোভাবে মাসে মাসে পরিবর্তিত হবে। ওঠানামা প্রায় অনুমান করাটি ( এক্স ) গড়ের সাধারণ বিতরণ সহ টি¯ (মাসিক গড়) এবং স্ট্যান্ডার্ড বিচ্যুতি গুলি (টি¯) (যেমনটি আগে মাসিক পরিসীমা থেকে দেওয়া হয়েছিল) এবং সংহতগুলি ফলন করে
Y¯(টি¯) = γ+ ( β)- α ) এস (টি¯)2φগুলি(টি¯-টি0) + (টি¯-টি0) ( β+ ( α - β))Φগুলি(টি0-টি¯) ) +ε¯(টি¯) ।
এই সূত্রে, Φগুলি শূন্য গড় এবং মানক বিচ্যুতিগুলির একটি সাধারণ পরিবর্তনের সংশ্লেষক বিতরণ গুলি (টি¯); φ এটি এর ঘনত্ব
মডেল ফিটিং
এই মডেলটি যদিও ব্যয় এবং তাপমাত্রার মধ্যে একটি অ-লাইন সম্পর্ক প্রকাশ করে, তবুও ভেরিয়েবলগুলির মধ্যে লিনিয়ার α , β, এবং γ। তবে এটি যেহেতু এটি অনলাইনারটি0, এবং টি0জানা নেই, আমাদের একটি ননলাইনার ফিটিং পদ্ধতি দরকার। উদাহরণস্বরূপ, আমি কেবল এটি ধরে নিয়ে একটি সম্ভাবনা ম্যাক্সিমাইজারে ( R
গণনার জন্য ব্যবহার করে ) ফেলেছিε¯ গড় শূন্য এবং সাধারণ মানের বিচ্যুতির সাধারণ বিতরণ সহ স্বতন্ত্র এবং অভিন্নরূপে বিতরণ করা হয় σ।
এই তথ্যগুলির জন্য, অনুমানগুলি হ'ল
(α^,β^,γ^,টি0^,σ^) = ( - 1.489 , 1.371 , 10.2 , 63.4 , 1.80 ) ।
এর অর্থ:
গরম করার জন্য ব্যয় প্রায় 1.49 কেডব্লিউএইচ / দিন / ডিগ্রি এফ।
শীতল করতে খরচ প্রায় 1.37 কেডাব্লুএইচ / দিন / ডিগ্রি এফ। কুলিংটি আরও কিছুটা দক্ষ।
বেস (নন-হিটিং / কুলিং) শক্তি ব্যবহার usage 10.2কিলোওয়াট ঘন্টা / দিন। (এই সংখ্যাটি মোটামুটি অনিশ্চিত; অতিরিক্ত তথ্য এটি আরও নিচে নামাতে সহায়তা করবে))
বাড়ির কাছাকাছি একটি তাপমাত্রায় রক্ষণাবেক্ষণ করা হয় 63,4 ডিগ্রি এফ।
মডেলটিতে স্পষ্টভাবে গণনা করা হয়নি এমন অন্যান্য প্রকরণগুলির একটি মানক বিচ্যুতি রয়েছে 1.80 কিলোওয়াট ঘন্টা / দিন।
আত্মবিশ্বাসের ব্যবধান এবং এই অনুমানগুলিতে অনিশ্চয়তার অন্যান্য পরিমাণগত অভিব্যক্তিগুলি সর্বোচ্চ সম্ভাবনার যন্ত্রপাতি সহ মানক উপায়ে পাওয়া যায় can
কল্পনা
এই মডেলটি চিত্রিত করার জন্য, নিম্নলিখিত চিত্রটি ডেটা, অন্তর্নিহিত মডেল, মাসিক গড়ের সাথে ফিট করে এবং একটি স্বল্প স্বল্প বর্গক্ষেত্রের চতুর্ভুজ ফিট pl
মাসিক ডেটা অন্ধকার ক্রস হিসাবে দেখানো হয়। যে অনুভূমিক ধূসর রেখাগুলিতে তারা শুয়ে থাকে তা মাসিক তাপমাত্রার ব্যাপ্তিগুলি দেখায়। আমাদের অন্তর্নিহিত মডেল, নিউটনের আইনকে প্রতিফলিত করে, এটি একটি তাপমাত্রায় লাল এবং নীল রেখার অংশগুলির মিটিং দ্বারা দেখানো হয়টি0। আমাদের উপাত্তগুলিতে উপযুক্ত কোনও বক্ররেখা নয় , কারণ এটি তাপমাত্রার সীমার উপর নির্ভর করে। এটি পৃথক কঠিন নীল এবং লাল পয়েন্ট হিসাবে প্রদর্শিত হয়। (তবুও, যেহেতু মাসিক রেঞ্জগুলি খুব বেশি পৃথক হয় না, এই বিন্দুগুলি একটি বক্ররেখাকে সন্ধান করে বলে মনে হয় - প্রায় ড্যাশড চতুর্ভুজ বক্ররেখার সমান)) অবশেষে, ড্যাশযুক্ত বক্ররেখাটি চৌকোটি ন্যূনতম স্কোয়ারগুলি মাপসই হয় (অন্ধকার ক্রসগুলিতে )।
অন্তর্নিহিত (তাত্ক্ষণিক) মডেল থেকে বিশেষত মাঝারি তাপমাত্রায় ফিটগুলি কতটা ছাড়বে তা লক্ষ্য করুন! এটি মাসিক গড়ের প্রভাব। (প্রতিটি অনুভূমিক ধূসর বিভাগে লাল এবং নীল রেখার উচ্চতাগুলি "গন্ধযুক্ত" হওয়ার কথা চিন্তা করুন extreme চরম তাপমাত্রায় সবকিছুই লাইনগুলিতে কেন্দ্রিক হয় তবে মধ্য তাপমাত্রায় "ভি" এর দুটি দিকই একসাথে গড় হয়, প্রয়োজনটি প্রতিফলিত করে কিছু সময় গরম করার জন্য এবং মাসে অন্য সময়ে শীতল করার জন্য))
মডেল তুলনা
দুটি মানানসই - এক এখানে কঠোর পরিশ্রমের সাথে বিকশিত হয়েছে এবং সহজ, সহজ, চতুর্ভুজ ফিট - একে অপরের সাথে এবং ডেটা পয়েন্টগুলির সাথে উভয়ই ঘনিষ্ঠভাবে সম্মত হন। চতুর্ভুজ ফিটটি তেমন ভাল নয় তবে এটি এখনও শালীন: এর সমন্বিত গড় অবশেষ (তিনটি প্যারামিটারের জন্য)2,07 কেডব্লিউএইচ / দিন, যেখানে নিউটনের আইন মডেলের অ্যাডজাস্টেড গড় অবশিষ্টাংশ (চার পরামিতির জন্য) 1.97kWh / দিন, প্রায় 5% কম। আপনি যা করতে চান তা যদি ডেটা পয়েন্টগুলির মাধ্যমে একটি বক্ররেখার পরিকল্পনা করে তবে চতুর্ভুজ ফিটের সরলতা এবং আপেক্ষিক বিশ্বস্ততা এটির প্রস্তাব দেয় recommend
যাইহোক, চতুর্ভুজ ফিটটি কী চলছে তা শেখার জন্য একেবারেই অকেজো! এর সূত্র,
Y¯(টি¯) = 219.95 - 6.241টি¯+ 0.04879 (টি¯)2,
সরাসরি ব্যবহার কিছুই প্রকাশ করে। সমস্ত ন্যায়বিচারে, আমরা এটি একটু বিশ্লেষণ করতে পারি:
এটিতে ভার্টেক্স সহ একটি প্যারাবোলা টি^0= 6.241 / ( 2 × 0.04879 ) = 64.0ডিগ্রি এফ। আমরা ধ্রুবক বাড়ির তাপমাত্রার অনুমান হিসাবে এটি নিতে পারি। এটি আমাদের প্রথম অনুমানের থেকে তাত্পর্যপূর্ণ নয়63,4ডিগ্রী. যাইহোক, এই তাপমাত্রায় পূর্বাভাস ব্যয় হয়219.95 - 6.241 ( 63.4 ) + 0.04879 ( 63.4 ))2= 20.4কিলোওয়াট ঘন্টা / দিন। এটি নিউটনের আইনের সাথে বেস শক্তি ব্যবহারের দ্বিগুণ ।
হিটিং বা কুলিংয়ের প্রান্তিক ব্যয় ডেরিভেটিভের পরম মান থেকে প্রাপ্ত হয়, Y¯'(টি¯) = - 6.241 + 2 ( 0.04879 )টি¯। উদাহরণস্বরূপ, এই সূত্রটি ব্যবহার করে আমরা বাইরের তাপমাত্রা হলে ঘর গরম করার ব্যয় অনুমান করব90 ডিগ্রি হিসাবে - 6.241 + 2 ( 0.04879 ) ( 90 ) = 2.54কেডব্লুএইচ / দিন / ডিগ্রি এফ । নিউটনের আইন অনুসারে এটি দ্বিগুণ মানের ।
একইভাবে, বাইরের তাপমাত্রায় ঘর গরম করার জন্য ব্যয় 32 ডিগ্রি হিসাবে অনুমান করা হবে | -6.241+2(0.04879)(32) | =3.12কেডব্লুএইচ / দিন / ডিগ্রি এফ। এটি নিউটনের ল দিয়ে অনুমান করা মূল্যের দ্বিগুণের বেশি।
মাঝারি তাপমাত্রায়, চতুর্ভুজটি অন্য দিকে ফিট করে। প্রকৃতপক্ষে, এর প্রান্তে60 প্রতি 68ডিগ্রি পরিসীমা এটি প্রায় শূন্য প্রান্তিক গরম বা শীতলকরণের ব্যয়ের পূর্বাভাস দেয় যদিও এর গড় তাপমাত্রা যত শীতল হিসাবে অন্তর্ভুক্ত থাকে50 ডিগ্রি এবং হিসাবে উষ্ণ 78ডিগ্রী. (এই পোস্টটি পড়ার খুব কম লোকই এখনও তাদের উত্তাপ বন্ধ করবে50 ডিগ্রি (=10 ডিগ্রি সি)!)
সংক্ষেপে, যদিও এটি ভিজ্যুয়ালাইজেশনে প্রায় তত ভাল দেখায় , চতুর্ভুজটি শক্তির ব্যবহারের সাথে সম্পর্কিত মৌলিক পরিমাণের আগ্রহের মূল্যায়ণে মোটামুটি ভুল করে। ব্যবহারের পরিবর্তনগুলি মূল্যায়নের জন্য এর ব্যবহার তাই সমস্যাযুক্ত এবং নিরুৎসাহিত করা উচিত।
গুনতি
এই R
কোডটি সমস্ত কম্পিউটিং এবং প্লটিং সম্পাদন করে। এটি সহজেই একই রকম ডেটাসেটগুলিতে অভিযোজিত হতে পারে।
#
# Read and process the raw data.
#
x <- read.csv("F:/temp/energy.csv")
x$Daily <- x$Usage / x$Length
x <- x[order(x$Temp), ]
#pairs(x)
#
# Fit a quadratic curve.
#
fit.quadratic <- lm(Daily ~ Temp+I(Temp^2), data=x)
# par(mfrow=c(2,2))
# plot(fit.quadratic)
# par(mfrow=c(1,1))
#
# Fit a simple but realistic heating-cooling model with maximum likelihood.
#
response <- function(theta, x, s) {
alpha <- theta[1]; beta <- theta[2]; gamma <- theta[3]; t.0 <- theta[4]
x <- x - t.0
gamma + (beta-alpha)*s^2*dnorm(x, 0, s) + x*(beta + (alpha-beta)*pnorm(-x, 0, s))
}
log.L <- function(theta, y, x, s) {
# theta = (alpha, beta, gamma, t.0, sigma)
# x = time
# s = estimated SD
# y = response
y.hat <- response(theta, x, s)
sigma <- theta[5]
sum((((y - y.hat) / sigma) ^2 + log(2 * pi * sigma^2))/2)
}
theta <- c(alpha=-1, beta=5/4, gamma=20, t.0=65, sigma=2) # Initial guess
x$Spread <- (x$Temp.high - x$Temp.low)/sqrt(6) # Uniform estimate
fit <- nlm(log.L, theta, y=x$Daily, x=x$Temp, x$Spread)
names(fit$estimate) <- names(theta)
#$
# Set up for plotting.
#
i.pad <- 10
plot(range(x$Temp)+c(-i.pad,i.pad), c(0, max(x$Daily)+20), type="n",
xlab="Temp", ylab="Cost, kWh/day",
main="Data, Model, and Fits")
#
# Plot the data.
#
l <- matrix(mapply(function(l,r,h) {c(l,h,r,h,NA,NA)},
x$Temp.low, x$Temp.high, x$Daily), 2)
lines(l[1,], l[2,], col="Gray")
points(x$Temp, x$Daily, type="p", pch=3)
#
# Draw the models.
#
x0 <- seq(min(x$Temp)-i.pad, max(x$Temp)+i.pad, length.out=401)
lines(x0, cbind(1, x0, x0^2) %*% coef(fit.quadratic), lwd=3, lty=3)
#curve(response(fit$estimate, x, 0), add=TRUE, lwd=2, lty=1)
t.0 <- fit$estimate["t.0"]
alpha <- fit$estimate["alpha"]
beta <- fit$estimate["beta"]
gamma <- fit$estimate["gamma"]
cool <- "#1020c0"; heat <- "#c02010"
lines(c(t.0, 0), gamma + c(0, -alpha*t.0), lwd=2, lty=1, col=cool)
lines(c(t.0, 100), gamma + c(0, beta*(100-t.0)), lwd=2, lty=1, col=heat)
#
# Display the fit.
#
pred <- response(fit$estimate, x$Temp, x$Spread)
points(x$Temp, pred, pch=16, cex=1, col=ifelse(x$Temp < t.0, cool, heat))
#lines(lowess(x$Temp, pred, f=1/4))
#
# Estimate the residual standard deviations.
#
residuals <- x$Daily - pred
sqrt(sum(residuals^2) / (length(residuals) - 4))
sqrt(sum(resid(fit.quadratic)^2) / (length(residuals) - 3))