Project CS 116 Section 4 Deadline 04/28 11:59PM Points: 12.

Slides:



Advertisements
Similar presentations
1 CS 446 – Tutorial 6 Frid. Nov. 6 th, 2009 Implementation Tutorial.
Advertisements

Imports…and the Errors they Bring to the Table Michele Borucki CoursEval Implementation & Success Specialist.
Michael Alves, Patrick Dugan, Robert Daniels, Carlos Vicuna
1 Various Methods of Populating Arrays Randomly generated integers.
Grey Box testing Tor Stålhane. What is Grey Box testing Grey Box testing is testing done with limited knowledge of the internal of the system. Grey Box.
Bellevue University CIS 205: Introduction to Programming Using C++ Lecture 3: Primitive Data Types.
Process Description and Control Module 1.0. Major Requirements of an Operating System Interleave the execution of several processes to maximize processor.
Review: Operating System Manages all system resources ALU Memory I/O Files Objectives: Security Efficiency Convenience.
Hash Tables1 Part E Hash Tables  
Computer Science 1620 Programming & Problem Solving.
C++ for Engineers and Scientists Third Edition
1 Lab Session-VI CS121 Fall 2000 l HW#2 Assigned l Multiple Choice Selectors l The While Loop l Switch-Case-Break Exercise l The Counter Controlled Loops.
Monté Carlo Simulation MGS 3100 – Chapter 9. Simulation Defined A computer-based model used to run experiments on a real system.  Typically done on a.
Software Development, Programming, Testing & Implementation.
CS1101: Programming Methodology Aaron Tan.
CS1430: Programming in C++ Section 2 Instructor: Qi Yang 213 Ullrich
ROBOTC Software Introduction. ROBOTC Software ROBOTC developed specifically for classrooms and competitions Complete programming solution for VEX Cortex.
CPS 2231 Computer Organization and Programming Instructor: Tian (Tina) Tian.
State Machine Diagram Chapter 10. State Machine Diagram Used to describe system behavior.
NetSim ZigBee Simulation Code Walkthrough in 10 steps
Algorithmic Problem Solving CMSC 201 Adapted from slides by Marie desJardins (Spring 2015 Prof Chang version)
PYTHON: PART 2 Catherine and Annie. VARIABLES  That last program was a little simple. You probably want something a little more challenging.  Let’s.
1 Chapter 4: Selection Structures. In this chapter, you will learn about: – Selection criteria – The if-else statement – Nested if statements – The switch.
TOSCA Monitoring Working Group Status Roger Dev June 17, 2015.
Liang, Introduction to Programming with C++, Second Edition, (c) 2010 Pearson Education, Inc. All rights reserved Chapter 4 Loops.
CS1101: Programming Methodology Aaron Tan.
Required Functions for Program 3 int readUntilValidBaseRead( ); int readNumbersReturningValue( int base ); int decimalValueOf( char chDigit ); bool isValid(
Grey Box testing Tor Stålhane. What is Grey Box testing Grey Box testing is testing done with limited knowledge of the internal of the system. Grey Box.
Decision Trees. MS Algorithms Decision Trees The basic idea –creating a series of splits, also called nodes, in the tree. The algorithm adds a node to.
Lecture PowerPoint Slides Basic Practice of Statistics 7 th Edition.
CSC 1051 – Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Course website:
Slide 1 Project 1 Task 2 T&N3311 PJ1 Information & Communications Technology HD in Telecommunications and Networking Task 2 Briefing The Design of a Computer.
Probability Models.  Understand the term “random”  Implement different probability models  Use the rules of probability in calculations.
5.1 Randomness  The Language of Probability  Thinking about Randomness  The Uses of Probability 1.
IR Homework #1 By J. H. Wang Mar. 5, Programming Exercise #1: Indexing Goal: to build an index for a text collection using inverted files Input:
1 CS1430: Programming in C++ Section 2 Instructor: Qi Yang 213 Ullrich
Programming in C++ Dale/Weems/Headington Chapter 1 Overview of Programming and Problem Solving.
School of Computer Science & Information Technology G6DICP - Lecture 4 Variables, data types & decision making.
Arrays. The array data structure Array is a collection of elements, that have the same data type Integers (int) Floating point numbers (float, double)
Introduction to Programming Python Lab 3: Arithmetic 22 January PythonLab3 lecture slides.ppt Ping Brennan
Controlling Program Flow with Decision Structures.
Project 1 : Phase 1 22C:021 CS II Data Structures.
Approaches to Intrusion Detection statistical anomaly detection – threshold – profile based rule-based detection – anomaly – penetration identification.
1 Project 5: Leap Years. 222 Leap Years Write a program that reads an integer value from the user representing a year and determines if the year is a.
CSE202: Lecture 5The Ohio State University1 Selection Structures.
Microsoft Access CS 110 Fall Entity Relationship Model Entities Entities Principal data object about which information is to be collectedPrincipal.
Computer Science Up Down Controls, Decisions and Random Numbers.
Introduction to Programming
Project Management: Messages
CprE 185: Intro to Problem Solving (using C)
ITEC 630 Final Examination Spring 2015
Modelling and Simulating Social Systems with MATLAB
Introduction to Programming
Introduction to Programming
CS 1430: Programming in C++ Turn in your Quiz1-2 No time to cover HiC.
Introduction to Programming
Data Types.
Introduction to Programming
Programming Funamental slides
CH 9.2 : Hash Tables Acknowledgement: These slides are adapted from slides provided with Data Structures and Algorithms in C++, Goodrich, Tamassia and.
Process Description and Control
Introduction to Programming
Introduction to Programming
CH 9.2 : Hash Tables Acknowledgement: These slides are adapted from slides provided with Data Structures and Algorithms in C++, Goodrich, Tamassia and.
Chapter 1 Problem Solving with C++
Introduction to Programming
8.6: Solving Rational Equations
Introduction to Programming
Magpie/Chatbot Activity 5
Dictionaries and Hash Tables
Presentation transcript:

Project CS 116 Section 4 Deadline 04/28 11:59PM Points: 12

Power Usage Simulation System Given A Power Grid and Appliances A power grid with multiple locations Each locations has one or more appliances Appliances can be of two types: Regular Smart Each appliance has a certain power consumption rating (watts). Main objective: Design an algorithm to control power usage for the given set of appliances Develop a discrete event based simulator that will simulate the appliances at a series of time steps Run your algorithm with the simulation

Appliances Two types of appliances: Smart Appliances “On” status: regular operation “Low” status: energy efficient, lower wattage “Off” status: zero wattage Regular Appliances “On” status: regular operation “Off” status: zero wattage Appliances have the following attributes Type (String): smart or regular wattage used in “On” state(int) wattage used in“Low” state (int): only smart appliances have this value Location (int, 8 digit numeric acct): there can be multiple devices at a location Unique ID (suggest int)

Appliance Input ApplianceGenerator.java Generates a list of appliances and location using an input file “ApplianceDetail.txt” The list of appliances stored in “output.txt” E.g. of appliance generated by ApplianceGenerator.java ,Clothes Washer,1200,0.025,true, : location ID Clothes Washer: name of appliance 1200: “On” wattage 0.025: “On/off” probability during a time step True: True if this is a smart appliance else false for regular appliance 0.25: Power reduction percent when changed from “on” to "low" status for smart appliances. (floating point) For this appliance the wattage usage will drop from 1200W to 900 W when switched to the “low” status.

Power Simulation Your application should be given the following input at the minimum Simulation length Appliances information and their locations User defined warning level(wattage): Power consumption supported by the grid beyond which grid failure may occur. The application will randomly generate a set of time steps at which you need to check the grid If the power consumption exceeds the warning level wattage, your application should select Smart appliances to turn to “low” status Locations to “brown out” And bring the power consumption equal to or below the warning level wattage.

Options for Power Control Turn the smart appliances from “on” to “low” status This will reduce the power supply “Brown out” a location Turn “off” ALL the devices in a location Remember that regular devices at a location can only be turned off by using a “brown out” operation. Regular devices cannot be individually turned “off”

What are the strategies for power control? How to select the smart appliances for turning it down to “low” status? How to select the location to “brown out”? All depends on what you are trying to optimize Minimizing the effect – how? Based on the total number of devices turned off? Based on the average number of devices per location turned off? Based on the number of location “browned off”? Or some other criteria?

Sample Discrete Event Simulator code Discrete Event Simulator Simulate the behavior of a system as a set of discrete “time events” For this project, we assume that at each time event, the status of the appliances change from “on” to “off” and vice versa. EventSimulator.java Provided with the project Code to randomly generate time steps over the simulation length (provided as user input to the application)

Deliverables Create slides in Powerpoint with the following information Design info: A design for the project using class diagram designs Create Class Diagrams for all the requirements. Show the associations between the classes Add Attributes to the Class Diagrams. Create appropriate test cases (tables with short descriptions; as you did for lab 6). A description of your algorithm to change the status from “on” to “low” for smart appliances and strategy to “brown out” locations. Source code Compiled code

Recommendations Start NOW! Work methodically Suggested plan of action: Week of 04/11: Design your service and client class What is your criteria for managing the power? Design your algorithm for switching smart devices to “low” and your “brown out” policy Discuss with your instructor Week of 04/18: Complete implementation Week of 04/25: Testing and refining your design Prepare slides