MICROCONTROLLER PROGRAMMING POSTGRADUATE INDIVIDUAL RESEARCH ASSIGNMENT This assignment involves researching a topical development in microcontroller based systems. This will allow you to develop an appreciation of the pace of change in microcontroller technologies and an understanding of the current state-of-the-art. Critical appraisal of your research topic will also develop your ability to analyse and evaluate such technologies. The outcome of your research should be a short paper (1000+ words) at an appropriate level for a reader who is undertaking the Microcontroller Programming course. Your topic can be selected from: 1) Microcontroller families Comparison of microcontrollers, e.g. Cortex-M, MSP430 highlighting key / differentiating features 2) Security for the Internet of Things Identification of security risks, comparison of technologies, e.g. ARM Trustzone, Analog Devices Deepcover 3) Heterogeneous vs Homogeneous Multicore Performance, development challenges 4) Low Power & Energy Harvesting for the Internet of Things Low power µCs, operational principles, transducers 5) Languages for µC Embedded Systems C, C++, alternative paradigms e.g. Simulink, Labview 6) Real-time Operating Systems for µCs Use cases, trade-offs, comparisons e.g. TI RTOS, Free RTOS Assessment To be submitted: • The report should be submitted electronically on MyUni as a pdf with your student ID as the filename. • The report should be suitably structurede.g.: introduction and background, literature review, analysis and evaluation, conclusion; and properly presented: word-processed and checked for grammar and spelling. • The report should reference at least 5 appropriate sources such as: journal & conference papers, company whitepapers and technical reports which should be cited appropriately. • The report will be checked for plagiarism with Turnitin, including AI checks.
CHM 135H: Chemistry: Physical Principles Course Syllabus: Fall 2024 II COURSE OVERVIEW Welcome to CHM 135H - Chemistry: Physical Principles! CHM 135H is designed to provide a foundation in physical chemistry for students who intend to follow a science program, primarily in the Life or Health Sciences. Along with CHM 136H (Introductory Organic Chemistry I), these are also the recommended courses for those applying for entry into professional programs. CHM 135H and CHM 136H are also acceptable for admission to any of the undergraduate programs offered by the Department of Chemistry. High-school level Chemistry SCH4U and Mathematics MHF4U + MCV4U or their equivalents are pre- requisites for CHM 135H, and this course is a pre-requisite for CHM 136H. STUDENT LEARNING OUTCOMES: By the end of CHM 135H, successful students will be able to • describe macroscopic properties of chemical substances and explain how atomic or molecular behaviour accounts for those properties, including in everyday situations. • solve quantitative chemical problems and interpret the solutions in consideration of molecular behaviour • appreciate the interdisciplinary nature of chemistry and relate chemical concepts to problems in other disciplines • work safely and confidently in the lab using a variety of glassware and equipment • collect data using a variety of analytical instrumentation and use Excel to transform and visualize that data TEXTBOOK: The required course textbook is "Chemistry: The Molecular Nature of Matter and Change" 10th Edition by Martin Silberberg and Patricia Amateis. The 9th Edition will also be supported. The textbook is available either in print or electronically through the U of T Bookstore at a reduced cost. We will not be using online homework, so you can also purchase a used book without an access code. Although we aren’t using online homework, we do have a CHM135 ALEKS class that you can join. To do this gotohttps://ca.aleks.com/, select “Sign up” and enter the 10-character ALEKS Class Code: UA33C- 4F3GT and click continue. Once you confirm the class information you can access the online textbook one of three ways: (i) enter your 20-character ALEKS Access Code (from a previous purchase); (ii) purchase access online; or (iii) start a 14-day free trial using the following code: A292E-5C627-18F88-08BCD. If you opt for the trial period, you can extend your account with an access code purchased from the bookstore or directly within ALEKS.
MODEL BUILDING IN MATHEMATICAL PROGRAMMING 12.24 Yield management An airline is selling tickets for flights to a particular destination. The flight will depart in three weeks’ time. It can use up to six planes each costing £50 000 to hire. Each plane has the following: 37 First Class seats 38 Business Class seats 47 Economy Class seats. Up to 10% of seats in any one category can be transferred to an adjacent category. It wishes to decide a price for each of these seats. There will be further opportunities to update these prices after one week and two weeks. Once a customer has purchased a ticket, there is no cancellation option. For administrative simplicity, three price level options are possible in each class (one of which must be chosen). The same option need not be chosen for each class. These are given in Table 12.17 for the current period (period 1) and two future periods. Table 12.17 Option 1 Option 2 Option 3 First £1200 £1000 £950 Period 1 Business £900 £800 £600 Economy £500 £300 £200 First £1400 £1300 £1150 Period 2 Business £1100 £900 £750 Economy £700 £400 £350 First £1500 £900 £850 Period 3 Business £820 £800 £500 Economy £480 £470 £450 Demand is uncertain but will be affected by price. Forecasts have been made of these demands according to a probability distribution that divides the demand levels into three scenarios for each period. The probabilities of the three scenarios in each period are as follows: Scenario 1 0.1 Scenario 2 0.7 Scenario 3 0.2 The forecast demands are shown in Table 12.18. Table 12.18 Decide price levels for the current period, how many seats to sell in each class (depending on demand), the provisional number of planes to book and provisional price levels and seats to sell in future periods in order to maximise expected yield. You should schedule to be able to meet commitments under all possible combinations of scenarios. With hindsight (i.e. not known until the beginning of the next period), it turned out that demand in each period (depending on the price level you chose) was as shown in Table 12.19. Table 12.19 Price option 1 Price option 2 Price option 3 First 25 30 40 Period 1 Business 50 40 45 Economy 50 53 65 First 22 45 50 Period 2 Business 45 55 75 Economy 50 60 80 First 45 60 75 Period 3 Business 20 40 50 Economy 55 60 75 Use the actual demands that resulted from the prices you set in period 1 to rerun the model at the beginning of period 2 to set price levels for period 2 and provisional price levels for period 3. Repeat this procedure with a rerun at the beginning of period 3. Give the final operational solution. Contrast this solution to one obtained at the beginning of period 1 by pricing to maximise yield based on expected demands. 12.25 Car rental 1 A small (‘cut price’) car rental company, renting one type of car, has depots in Glasgow, Manchester, Birmingham and Plymouth. There is an estimated demand for each day of the week except Sunday when the company is closed. These estimates are given in Table 12.20. It is not necessary to meet all demand. Table 12.20 Glasgow Manchester Birmingham Plymouth Monday 100 250 95 160 Tuesday 150 143 195 99 Wednesday 135 80 242 55 Thursday 83 225 111 96 Friday 120 210 70 115 Saturday 230 98 124 80 Cars can be rented for one, two or three days and returned to either the depot from which rented or another depot at the start of the next morning. For example, a 2-day rental on Thursday means that the car has to be returned on Saturday morning; a 3-day rental on Friday means that the car has to be returned on Tuesday morning. A 1-day rental on Saturday means that the car has to be returned on Monday morning and a 2-day rental on Tuesday morning.
Language Learning App with Gamification Features Dissertation, Project code 1. Introduction · Project Overview: Define the goal of the app—an interactive language learning platform. designed to engage users through gamification. Describe how the app combines language acquisition methods with motivational game elements to boost retention and learning efficiency. · Importance of Gamification in Language Learning: Review how gamification can enhance user engagement, motivation, and long-term retention by making learning more interactive and enjoyable. 2. Literature Review · Theoretical Background on Language Acquisition: Summarize language learning theories, such as Krashen’s Input Hypothesis and the Interactionist Theory, explaining why interaction and practical use are essential for language mastery. · Gamification in Education: Reference studies on gamification’s effectiveness in learning, such as increased engagement, motivation, and reduced dropout rates. Explore successful implementations like Duolingo and Memrise, highlighting specific game mechanics that enhance the user experience. · Psychological Aspects of Gamification: Discuss concepts such as intrinsic and extrinsic motivation, the impact of rewards, and how point systems, levels, and challenges contribute to a sense of accomplishment and learning progress. 3. Designing the App · User Experience (UX) Design: Outline the user-friendly interface design principles, focusing on intuitive navigation, visually appealing elements, and accessibility. Ensure the design allows users to switch between different activities (e.g., vocabulary drills, sentence structure exercises) smoothly. · User Interface (UI) Elements: Describe UI components like avatars, leaderboards, badges, and daily goals that enhance the app’s engagement through visual and interactive elements. 4. Gamification Features · Points and Rewards System: Introduce a points system where users earn points for completing lessons, practicing new words, or reaching specific milestones. Explain how users can redeem points for rewards, unlocking new content or customization options. · Leveling and Progression: Discuss the leveling mechanism, allowing users to see their progress visually through stages or levels, with each level introducing new vocabulary and grammar concepts. · Streaks and Challenges: Describe features like daily streaks to motivate consistent practice and special challenges (e.g., vocabulary quizzes or grammar exercises) that provide additional points and unlocks. · Leaderboards and Social Integration: Explain how leaderboards foster a sense of competition and community, with options for users to connect with friends, join language challenges, or participate in group learning. · Feedback Mechanisms: Implement real-time feedback, showing users correct answers and offering explanations to reinforce learning. Integrate adaptive challenges that adjust based on user performance, ensuring an appropriate difficulty level. 5. Technical Development · Natural Language Processing (NLP) Integration: Discuss NLP’s role in supporting features like speech recognition and automatic grading of spoken responses, helping users practice pronunciation and conversational skills. · Database Management: Explain the database setup for storing user progress, vocabulary banks, and learning activities. Describe how the system ensures data privacy and security, particularly for younger users. · Backend Development: Detail the backend server requirements, API integrations, and how cloud storage is used to support a large user base with responsive load times. · Frontend Development: Outline the frontend development process, ensuring responsiveness across devices (iOS, Android, web), and describe how JavaScript. frameworks or native app development tools (e.g., Swift, Kotlin) support app functionality. 6. Testing and Quality Assurance · Usability Testing: Test the app with users of various language levels to evaluate usability, collecting feedback on design, navigation, and engagement. · Functionality Testing: Ensure each gamification element works seamlessly, from points accumulation to speech recognition, and verify data synchronization between devices. · Performance Testing: Run performance tests to assess load times and responsiveness, especially for graphics-heavy elements, ensuring the app performs well under various network conditions. 7. Evaluation and Anticipated Outcomes · Expected Learning Outcomes: Define key learning metrics, such as vocabulary acquisition rate, retention rates, and user engagement, using these to evaluate the app’s effectiveness in promoting language learning. · User Engagement and Retention Metrics: Discuss expected engagement levels and retention rates due to gamification, measured by average time spent, streak continuation, and progress levels. · Scalability and Future Enhancements: Propose future features like AI-driven adaptive learning, cross-language practice sessions, and integration with other educational apps for enhanced user experience. 8. Conclusion · Summary of Key Points: Recap the project’s goals, including how gamification supports language acquisition and increases motivation. · Potential Impact and Future Applications: Discuss how the app could impact language learning education by making it accessible and engaging and suggest avenues for continued development, like adding new languages, incorporating augmented reality for immersive experiences, or expanding to educational institutions.
DATA 201 - Assignment 4 Total marks: 20 Due date: 11:59 p.m., Thursday, September 26, 2024. Submit code and outputs in a single Jupyter notebook file. Do not expect the marker to rerun your code in order to get the outputs. Your task is to develop a machine learning model to predict the market value of houses in a European city, using data (file data.csv) on various characteristics of each property. The data description is provided below. id: a unique identifier for each house zipcode: each house is associated with a zipcode that corresponds to its location lot-len: the plot length in meters where the house is built lot-width: the plot width in meters where the house is built lot-area: the total plotarea on which the house is built house-area: the house's living area measured in square meters garden-size: the garden's size measured in square meters balcony: the total number of balconies in the house x-coor: the x-coordinate representing the house's location y-coor: they-coordinate representing the house's location buildyear: the year in which the house was built bathrooms: the total number of bathrooms in the house value: the market value of the house (in Euros) Requirements: ● Use root mean square error (RMSE) as the evaluation metric. [2 marks] ● Load the dataset, determine the target column, remove irrelevant variables (if any), and use function train_test_split with random_state=1 to split the data into two sets: atraining set (80%) and a test set (20%). [3 marks] ● Explore the training set to gain insights. [2 marks] ● Select one machine learning model, train it, optimise it (e.g., add pre-processing transformers, perform hyper-parameter tuning, etc.), and estimate the performance of the model. [9 marks] ● Test the final model on the test set and report the RMSE and at least two other evaluation metrics (e.g., mean absolute percentage error (MAPE), R2-score, etc.). [3 marks] ● Include a discussion at the end of your notebook (about what you have learned, difficulties, what has worked and not worked, future directions, etc.). [1 mark] Notes: - Write your name and student ID at the beginning of your notebook. After completing your work, use menu item Kernel => Restart & Run All in Jupyter, then submit your notebook file. - You can use any public Python package. - The requirements above have no order that you have to follow. - Use your own assumptions and judgement if you are unsure about any information in the dataset. However, remember to mention it in the discussion. - Try to write functions for all data transformations you apply, try feature engineering (e.g., creating new features), and try to automate all the steps as much as possible (e.g., using pipeline and data transformers, etc.). You may have bonus marks for this; however, your total mark will not exceed 20.
SOCS0081--Social Networks, Assessment 1 INSTRUCTIONS: - The assessment is due on Mon Feb 24th 2025, 1pm and shall be submitted via Moodle. - Late submission results in penalties, see: https://www.ucl.ac.uk/academic-manual/chapters/chapter-4-assessment-framework-taught-programmes/section-3-module-assessment#3.12. There is no exception to late submission penalties, unless an extenuating circumstances application has been successfully made. - Submit on Moodle a single document that includes the main body of your report and any tables and figures you may use in your report. Any R code you use to produce your results should be given in an appendix. If you use some other software than R, do include any code you have used with details of the software you used. - Word limit is 1,500. This excludes tables, figures, table and figure legends/captions, references and the appendix, but includes footnotes and endnotes. Exceeding this limit will result in penalties. - At the end of your essay include the number of words of your report, excluding the tables, figures, table and figure legends, references (if you used any), and the appendix with R code. - If you use any reference in your report, list full bibliographic details at the end of your report. Any referencing style. (ASA, APA, Harvard, Chicago etc.) is fine, provided that the style. is used consistently. - The coursework will be assessed against the criteria set in the UCL UG-ESSAY GRADING SCHEME, a pdf of which could be found on the programme handbooks. In addition to those general guidelines, further specific factors will affect the marks: correctness of the solutions and interpretations of results, clarity of arguments, rigour in presenting and analysing the network, creativity in your approach, and the ability to demonstrate that key concepts treated in the course are understood well. - This is an assessed piece of coursework for the SOCS0081 module; collaboration and/or discussion of the assessment with anyone is strictly prohibited. The rules for plagiarism apply and any cases of suspected plagiarism of published work or the work of classmates will be taken seriously. - This assessment is a Category 2 assessment which means that GenAI tools can only be used in an assistive role. In particular, you can use tools like ChatGPT or CoPilot to assist with R coding and proof-reading, but the data collection, analysis and write-up should be your own. In this first summative assessment, we ask you to present and study a network that you will create yourself. You may draw upon your personal environment (friends, family, colleagues, organisations that you know/have been a member of ...) to create a network. You may rely on your memory in creating this network. Alternatively, you can collect secondary data on a network that you may or may not be a member of. For example, you can scrap the web, use secondary sources, books, movies, documents, and so on. But do not collect primary data (for example, do not ask directly to people/strangers about their ties), because collecting primary data is a sensitive issue and may require an ethnical review. Below are some constraints on your network. Apart from these constraints feel free and be creative. - The network should have at least 25 nodes. There is no upper limit on the number of nodes. - The network should not be fully connected (that is, not all nodes should have ties with all other nodes). Otherwise, it will be a rather trivial network to study. - Do not include any personal data in presenting and analysing the network (that is, use pseudonyms or anonymous IDs for the nodes in the network, we don’t want to violate GDPR). If the network you study is freely available in the public domain (celebrities, fictional characters, sportspeople, firms, fictional characters...) you may use real names. - Any type of network discussed in class is allowed (directed, undirected, weighted, unweighted, bipartite, one-mode, signed, unsigned ...) - Nodes in the network could be of any type (people, organisations, companies, book characters, ...) - The network should be original, that is, it should not be a network studied previously by other scholars as a network, or a network data of which is readily available. For more tips please look at the SNA Cookbook file on Moodle. Based on your network write a short (1,500 words) report. Your report should discuss at a minimum the items given below. You may comment on additional properties of your network once you cover all items below. You may write a single report discussing all items. You may also structure your report in four parts corresponding to the four groups of items below. Note that the interpretation of a particular network measure is as important as correctly calculating and reporting the measure. So, make sure to include an interpretation of the network measures you report. A: Description of your network: Briefly describe your network. What/who are the nodes? What do the edges represent? What type of a network is it (i.e. directed, undirected, ...)? How did you collect the network data (i.e. is it from memory, if it is based on secondary data how did you collect these data ...)? B: Characteristics of the network and the nodes: What is the density and diameter in your network? Apply at least four measures of centrality to study the importance of the nodes in your network. Report the values of these centrality scores for the most central four or five nodes. Interpret these centrality measures. Based on these centrality scores who are the most important two or three nodes in your network and why? Comment on how centralized your network is. C: Characteristics of groups of nodes: Does your network have any cliques? Describe the k-cores of your network. Are there any structurally equivalent nodes in your network? Run a formal blockmodeling, comment on any nodes that look structurally equivalent to you. Interpret the results of your analyses. D: Characteristics of the edges: Study the transitivity of the network by reporting and interpreting the global and local clustering coefficients. If it is a directed network, also calculate and interpret the reciprocity of the network. If it is a signed network, comment on whether your network is structurally balanced. Interpret your results.
CHEM 191 MODULE 6 REACTIONS 4: CHEMICAL EQUILIBRIUM AND ACIDS AND BASES By the end of this module you should be able to: • Describe the nature of equilibrium reactions • Discuss the effect on equilibrium systems from changes to concentration, pressure or temperature • Use equilibrium constants to determine the position of an equilibrium or concentrations of species in an equilibrium mixture • Discuss the nature of acidic and basic solutions including conjugate acids and bases, and strong and weak acids. • Calculate pH, pOH, [H3O+ ] and [OH- ] for solutions of strong acids and bases Reference: ESA Chapters 18, 19, 20 HOW FAR DOES A REACTION GO? A consideration for chemists, along with the issue of how fast a reaction will occur, is whether the reaction actually goes to completion. Some reactions, especially those in open containers, will keep going until one or all of the reactants are used up. Other reactions reach a state of chemical equilibrium where the reverse reaction starts to occur before the forward reaction is complete. A fast reaction might reach a state of chemical equilibrium quickly but not produce many products because of the reverse reaction begins before the forward reaction in complete. The formation of stalactites and stalagmites in limestone caves is dependent on an equilibrium reaction between the water in the cave and carbon dioxide in the atmosphere, Equilibrium reactions can be a problem in industry when a synthesis reaction appears to stop before much of the reactants have been converted to products. Learning to work with equilibrium reactions has been an important factor in the chemical industry. Placing a stress on an equilibrium system, whether it is chemical, biological, societal, environmental, or personal, causes the position of the equilibrium to change. Le Chatelier’s Principle allows us to predict the results that follow from changing the conditions of a system at chemical equilibrium. This means that scientists are able to develop techniques to control chemical reactions in natural and industrial settings in order to obtain desired products. CHEMICAL EQUILIBRIUM A chemical equilibrium occurs because both the forward and reverse reactions proceed simultaneously. When reversible reactions reach a point where the rate of the forward reaction is equal to the rate of the backward reaction a state of dynamic equilibrium is said to exist. The amounts of both reactants and products will remain the constant, eventhough both forward and reverse reactions continue to occur. Hence no change will be observed in a reaction at equilibrium. An equilibrium mixture can be recognised by the presence of both reactants and products in the reaction mixture. For example Activity 6.1 - A Model for Equilibrium QUESTIONS: 1. How many employees move in and out of the factory building during each hour? 2. Are the employees who move in and out of the building each hour the same people? Explain your answer. 3. Does the number of employees in the building change from hour to hour? Explain your answer. 4. Over the course of a day, the employees in the Acme Manufacturing Plant are said to be in a "dynamic equilibrium". Based on your understanding of how the staff move in and out of the plant, explain what is meant by the term "dynamic equilibrium". Like the Acme Manufacturing Plant, chemical reactions can also reach equilibrium. Answer the following questions about the chemical equation in table above by applying the insight you gained from the Acme Manufacturing Plant questions. 5. When the reaction between hydrogen and oxygen reaches equilibrium: (a) Does the number of molecules in the reaction vessel change? Explain. (b) Is the reaction still proceeding in the forward direction? (c) Is the reaction still proceeding in the reverse direction? (d) Are the concentrations of the products and reactants changing? (e) Are the rates of the forward and reverse reactions the same? (f) Does the heat content of the system become constant? Explain your answer EXAMPLE: The Ammonia Equilibrium To synthesise ammonia, x moles of nitrogen gas, 3x moles of hydrogen gas and a catalyst such as platinum, in a closed vessel and the temperature increased to 500oC. The hydrogen and nitrogen will react together to form. ammonia. N2(g) + 3H2(g) → 2NH3(g) (1) The rate of the reaction is rapid at first but slows down as the amounts of nitrogen and hydrogen decrease. Eventually the reaction appears to cease and the vessel contains a mixture of ammonia, nitrogen and hydrogen. Suppose we now place pure ammonia in a similar vessel with the same catalyst and again increase the temperature to 500oC. The ammonia is decomposed according to the reaction 2NH3(g) → N2(g) + 3H2(g) (2) Although initially fast, the rate of this reaction will slow down as the concentration of the ammonia is decreased. However, as N2 and H2 are formed they will begin to react to form. ammonia as we have already seen in reaction (1) above. They react slowly at first but as their concentrations increase the rate of formation of the ammonia increases. So in this vessel we have a decreasing rate of decomposition of the ammonia and an increasing rate of formation of ammonia. When the two rates become equal a state of equilibrium will exist. The rate of combination equals the rate of decomposition - no net reaction occurs, there is no change in any concentration and the reaction appears to stop. Since neither reaction actually stops, the system is said to be in a state of dynamic equilibrium. If we measured the concentrations in the two vessels at equilibrium we would find that the concentrations of NH3, H2 and N2 were exactly the same. To show that both forward and reverse reactions are occurring, double arrows are used for the reaction equation. N2(g) + 3H2(g) ⇌ 2NH3(g) In principle, all chemical reactions are equilibrium reactions but for many the mixture at equilibrium has so little of the reactant(s) that the single-ended arrow that we have been using can be regarded as an accurate description of the experimental facts. We would say that the position of equilibrium is so far to the right that the reaction can be regarded as going to completion. If we chose to write the reaction the other way around, we would have a reaction that did not happen! Focussing Questions 1: 1. What does it mean when a double headed arrow, ⇌, is used in a chemical equation? 2. What is happening to the products of a chemical reaction when a system is at equilibrium? 3. What is the relationship of the rate of the forward and reverse reactions when equilibrium is established? 4. What would be observed in a system that is at equilibrium (macroscopic level)? 5. What would be observed at particle level when a system is at equilibrium? 6. Why would a system at equilibrium be a problem for an industry relying on a chemical reaction as part of its production line? 7. What has the picture of the escalator or conveyor belt got to do with equilibrium? CHANGING THE POSITION OF AN EQUILIBRIUM - LE CHÂTELIER’S PRINCIPLE When a reaction mixture is at equilibrium it appears to have stopped. It is possible to “disturb” the equilibrium and make more reactants or products by changing the reaction conditions. Le Châtelier’s Principle provides a useful way of making qualitative predictions about the effects that changes in reaction conditions will have on an equilibrium. It states that if a stress is applied to a system at equilibrium, the equilibrium will tend to shift in a direction to relieve that stress. A stress is a change in conditions, such as concentration, pressure, or temperature. A shift is an increase in the rate of the forward reaction to form. products or the reverse reaction to form. reactants until equilibrium is re-established. We will consider the effect of some different stresses on the reaction: N2(g) + 3H2(g) ÷ 2NH3(g) 1. Changing concentration Concentration can be changed by adding or removing any of the reactants or products. (Each of these actions is a stress). Adding more nitrogen will cause the equilibrium to shift to the right to relieve the stress of an added reactant. After the shift there will be more NH3 present, less H2 (as some of it will have reacted with the added N2) and more N2 than in the original mixture. On the other hand if we were to add more NH3 then the equilibrium will shift to the left to use up the added product. After the shift, there would be more N2 and H2 and less NH3 than there would have been if no shift had occurred. There will be more NH3 in the container than was present in the initial mixture. 2. Changing pressure Increasing pressure will move the equilibrium to the side with the smaller number of gas molecules. So increasing the pressure on the ammonia equilibrium will result in a shift to the right giving more ammonia. This is because on the lefthand side of the equation there are 4 moles of gas particles (1 ‘molecule’ of N2 and 3 ‘molecules’ of H2). But on the right hand side there are just 2 moles of ammonia gas particles. Pressure can be increased by reducing the volume of the system. This will result in more molecules per unit volume and the equilibrium will shift in a direction that reduces the number of molecules of gas in the new volume. In the case of the reaction of nitrogen with hydrogen to form ammonia, more ammonia is formed because that reduces the number of gas particles. Note that changes in pressure of gaseous reactions do not always lead to a shift in the equilibrium. Consider the equilibrium N2(g) + O2(g) ÷ 2 NO(g) Since there are two molecules of gas on each side of the equation, neither a shift to the left nor the right will change the total pressure. A reduction in volume of the reaction vessel would increase the total pressure but would not shift the equilibrium. 3. Changing temperature The effect of a change in temperature is dependent on whether the reaction is endothermic or exothermic. The formation of ammonia is an exothermic reaction i.e. the thermodynamic equation is: N2(g) + 3 2(g) ÷ 2 NH3(g) + heat If weremove heat from the system by lowering the temperature the system will react to oppose this stress by creating more heat, which means it moves to the right causing more ammonia to be formed. For an endothermic system, a decrease in temperature will cause the reaction to move to the left as this is the direction that will replace heat. 4. Using a catalyst Catalysts speedup the rate at which the reaction reaches equilibrium, but does not alter the position of the equilibrium. Focussing Questions 2: 1. What does an equilibrium system do when subjected to some kind of change or stress? 2. Will an equilibrium move to favour reactants or products when more reactant is added? Does this mean that it will move to the right or the left? 3. How does reducing the volume of a system affect the pressure? Explain this using collision theory. 4. How does increasing the pressure of a system affect an equilibrium if both reactants and products are gasses? Will increasing the pressure always change the position of an equilibrium? 5. How does the equilibrium change when an exothermic system is heated? Activity 6.2- Le Chatelier’s Principle INFORMATION: Reactant: Increase (↑) causes the equilibrium to shift to the right (→) Decrease (↓) causes the equilibrium to shift to the left (←) Product: Increase (↑) causes the equilibrium to shift to the left (←) Decrease (↓) causes the equilibrium to shift to the right (→) Temperature: A change in temperature corresponds to a change in energy therefore by using the ‘energy’ term in the equation, energy can be treated like a reactant or product (see above). Pressure: An increase (↑) in pressure causes the equilibrium to favour the "smaller number of moles of gas". A decrease (↓) in pressure causes the equilibrium to favour the "larger number of moles of gas" Note: If the number of moles of gas is the same on both sides, then a change in pressure has no effect in the equilibrium. The following equation describes a system that is at equilibrium: 2H2 (g) + O2 (g) ⇌ 2H2O (g) + energy (heat) QUESTIONS: 1. For each of the stresses given below, apply Le Chatelier's Principle and indicate the direction of the shift in the equilibrium. (The first one is completed for you.) 2increases→ shifts totheright(b) Concentration H eases(c) 2increases(d) 2decreases(e) 2 ses(h) Pressure increa The following questions are based on your answers to question 1. (a) In general terms, describe the direction of the equilibrium shift when the concentration of a reactant is increased. (b) If an equilibrium shifts to the right, which reaction is favoured, the forward or the reverse? (c) What happens to the concentrations of the reactants H2 and O2 when the reaction above shifts to the right? (d) What happens to the concentration of the product H2O when the reaction above shifts to the right? (e) If an equilibrium shifts to the left, which reaction is favoured, the forward or the reverse? (f) What happens to the concentrations of the reactants H2 and O2 when the reaction above shifts to the left? (g) What happens to the concentration of the product H2O when the reaction above shifts to the left? (h) What is true of the reaction rates for the forward and reverse reactions when a new equilibrium is established? Application: The Industrial Preparation of Ammonia About 100 million tonnes of ammonia are produced annually using the Haber process. In NZ this takes place at the ammonia-urea plant in Kapuni in Taranaki. Most of the ammonia is used in the production of nitrogen fertilisers which are needed to improve the yields of wheat and other grains. It has been suggested that the discovery of this process for making ammonia is largely responsible for the survival of 40% of the world’s population. The Ammonia-urea plant in Taranaki The chemical engineers operating a manufacturing plant need to understand the factors that influence the position of the equilibrium. We have already learnt the following: (a) Increasing the temperature of the reaction mixture speeds up the rate of approach to equilibrium but shifts the equilibrium in favour of the formation of N2 and H2. (b) Increasing the pressure favours the formation of NH3. (c) Removing NH3(g), a product, favour the formation of NH3 (d) Adding a catalyst will mean that equilibrium is reached quickly This is taken into account in the following ways: • Lower temperatures and higher pressures favour the formation of NH3. • At lower temperatures the rate of reaction is slow so equilibrium is reached slowly so ammonia plants are normally operated between 380-450 oC so that the reaction proceeds at a reasonable rate. A catalyst must be present in order to speedup the rate even at these temperatures. • Normal operating pressures for the formation of NH3 are about 200 atmospheres, although higher pressures favour the production of more NH3because it is expensive to build containers that can cope with these high pressures. • The gaseous ammonia product is liquefied as it forms to help shift the equilibrium further to the right. If we were able to find a better catalyst, which would increase the rate of reaction, then it should be possible to operate at both lower temperatures and maybe lower pressures. Such a catalyst we could make considerable savings in the cost of production of ammonia. In nature the enzyme nitrogenase, which occurs in bacteria that live in the root nodules of legumes (peas and clover) converts N2(g) to NH3(g) at 1 atm pressure and room temperature. We do not know how this enzyme works but we do know that the bacteria expend large amounts of energy in order to drive this reaction. Exercise 6.1 (a) Consider the equilibrium: N2O(g) + NO2(g) ÷ 3 NO(g) ΔrH = 156 kJ mol-1 How will the amount of NO be affected by the following changes? Explain your answer. (i) Addition of NO2(g) (ii) Removal of N2O(g) (iii) Removal of NO(g) (iv) Increasing the temperature of the reaction mixture (v) Increasing the volume of the container (b) Consider the equilibrium: C(s) + 2H2(g) ÷ CH4(g) ΔrH = -75 kJ mol-1 In which direction will the equilibrium be shifted by the following changes? Explain your answer using Le Chatelier’s Principle (i) Addition of CH4(g) (ii) Removal of H2(g) (iii) Decreasing the temperature of the reaction mixture (iv) Decreasing the volume of the container (v) Adding a catalyst to the system EQUILIBRIUM CONSTANTS Reversible reactions can proceed in either direction, depending on the conditions. In a reaction mixture, once equilibrium is reached, reactions in opposite directions proceed at the same rate sono change in concentrations of reactants and products is observed. However, on the initial mixing of the reactants, some reactions will proceed much further than others before the reverse reaction kicks in and equilibrium is established. The equilibrium constant, Kc, provides information about the extent to which a reaction has occurred when equilibrium is reached by comparing the concentrations of reactants and products. The entire equation is called the equilibrium constant expression. The square brackets mean “the concentration of ” the substance they enclose. No matter what the initial concentration of reactants or products at a given temperature the ratio of the concentrations at equilibrium will be equal to the constant K. NOTES: • Solids, pure liquids and solvents (usually water) are not included in the equilibrium constant expression • The numerical value of the equilibrium constant does not have any associated units • In equilibrium constant expressions the pressures of gaseous components are expressed in atmospheres (abbreviation atm) not in Pascal. • The equilibrium constant is for the forward reaction as written in the equation. For the reverse reaction K' = K/1
Department of Computer Science Assignment 3: Database Design (E-R Diagrams) Important for macOS users: If you will be using MyVLab for this assignment, it is important that you do not save directly to the Z: drive (your local computer). You should save to the H: drive and only copy your files to the Z: drive when you are ready to submit your work or are backing up your work. Saving directly to the Z: drive can corrupt your files if your internet connection drops while saving. All assignments must be completed individually. Do not share your work or use another student’s work in anyway. If you need assistance with this assignment please post on the course forums, e-mail a TA/instructor, or attend an office/consulting hour. See OWL Assignment tab for assignment due date and late policy. Part 1: Entity Relationship Diagram Using the Dia Diagram Editor (http://dia-installer.de), create the E-R Diagram described in this assignment. You MUST submit your diagram as a .dia file. This project requires you to create a database design. Your design will be documented in an Entity-Relationship Diagram (ERD) using Crow’s Foot notation. You should match the style. and notation used in the tutorial material and slides (including notation for mandatory/nullifiable attributes). Your company from Assignment 1 and 2 has grown significantly from being run out of your home. You now are now a legitimate small business with a handful of employees and your own building which houses both your manufacturing plant and a small office. You currently sell your product directly to consumers via your website. Unfortunately, your company has not invested much in their information systems and you are still using some of the same Excel sheets from when you were a one-person operation working out of your garage. This is causing problems as you are now having trouble managing your customer support services (e.g. product returns and replacements for defective products) and would like to more effectively store and process information about your customers. To resolve this dilemma, you propose creating a central database to power your customer relations and support systems. You discuss the new system with your employees and gather their requirements for the database. Now you must turn them into an ERD. The following is a list of the information that must be tracked and contained in your new database. Attributes and Entities For each Customer you do business with, the design must be able to store: · The Email address of the customer, no two customers can have the same Email. · The First Name and Last Name of the customer. · The customer’s home Address. · The customer’s Phone Number, but only if they provided one (this is optional). · The customer’s Birthday so we can send them a birthday coupon. Customers are not required to provide a birthday (providing it is optional). · Two additional attributes you wish to track about your customers. This can be any attributes that are reasonable and applicable to your businesses’ customers. You can decide on if they are required, unique, etc. but this should make sense for the attribute. They cannot be a key (primary or foreign). For each Employee of your company, the design must be able to store: · A unique User Name assigned to this employee that they use to login to your customer relation and support system. · The employee’s First Name · The employee’s Last Name · The employee's home Address. · The employee’s SIN, no two employees can have the same SIN, it must be unique (can not be used for the primary key). · The employee’s Phone Number, but only if we have one on record (may not have one for each employee). · An attribute called Active which represents if this is a current employee or not (e.g. retired or moved to a different company). For each of the Products you sell, the design must be able to store: · The Title or name of the product (not necessarily unique). · A short Description of the product (not necessarily unique). · A URL to a Photo of the product hosted on your website (but only if one is available). · The product’s Sale Price (i.e. the price you sell a unit of this product for). · The product’s Cost to Manufacture (i.e. the cost for you to manufacture a unit of the product). · The Quantity In Stock in your inventory for this product. · Two additional attributes you wish to track about your products. This can be any attributes that are reasonable and applicable to all of your businesses’ products. You can decide on if they are required, unique, etc. but this should make sense for the attribute. They cannot be a key (primary or foreign). An Invoice for each sale made via your businesses’ website, the design must be able to store: · A unique Invoice ID that is different for each invoice created. · The Coupon Code used for this order if one was used (not all orders will have a coupon code). · The Total Price of the order. · The Payment Method used (e.g. VISA, Debit, PayPal, etc.). Customers can create support Tickets when they have an issue with your product. For each Ticket, the design must be able to store: · A Subject that gives a quick one sentence summary of the issue with the product. · A longer text-based Description of the issue. · The Status of the ticket (e.g. open, resolved, investigating, etc.). · The Severity of the issue described in the ticket (e.g. low, medium, high, critical, etc.). If the product must be returned or replaced a Return Merchandise Authorization (RMA) must be created and approved. For each RMA, the design must be able to store: · If the RMA has been Approved or not (this would be a True or False value). · If the return has been Received or not. Your support team will request that the customer ship the product back to them before a replacement is sent to the customer. · The Address to ship the replacement to. · If the replacement has been Sent yet or not (this would be another True or False value). All attributes are to be considered as mandatory (required) unless stated differently above or required to be optional according to the above requirements. All attributes are to be considered as non-unique unless the design specifically requires them to not contain duplicate entries. For example, there may be products with the same title, multiple employees with both the same first and last name, and customers with the same name, address, etc. However, no two employees will have the same SIN or User Name and no two customers will have the same Email address. Primary keys: every entity described above must have a single primary key defined. This can be a natural key (an existing attribute) or a surrogate key (adding an attribute to act as a primary key) if no existing attribute is appropriate. Relationships Next, you need to store the following relationships: Each Employee is assigned to zero or more Tickets. · Employees are assigned to tickets that they handle. · Not all employees handle tickets, and some Employees are assigned to multiple tickets. · Tickets are assigned to at most one Employee and some tickets are not yet assigned to any Employee (zero or one). A Customer creates zero or more support Tickets. · A customer can create support tickets if they have issues with a product they purchased. · Not all customers will create support tickets. · Each ticket is created by exactly one customer. · Relationship Attribute: This relationship has a relationship attribute named DateCreated that stores the date when the customer created the ticket. A Product is involved with zero or more support Tickets. · When a ticket is created by a customer, it is associated with a product the customer is experiencing an issue with. · Not all products will have a ticket created related to them, and a product can be involved with many tickets. · A ticket is always associated with exactly one product. A Ticket may request an RMA if a return is warranted. · A ticket may request zero or one RMAs. · An RMA is only requested if a product must be returned. · An RMA is always requested by exactly one ticket. An Invoice has one and only one Customer who purchased the products listed in the Invoice. · All invoices have exactly one customer. · A customer can have many invoices. · You will only track customers who have made at least one purchase. As such all customers must have at least one invoice. An Invoice includes one or more Products. · Each invoice is for the purchase of one or more products from your online store. · There may be products in your database that have not yet been purchased, that is, a product is included in zero or more invoices. · Relationship Attribute: This relationship has a relationship attribute named Quantity that stores how many units of this product is included in the invoice. · Hint: this is a many-to-many relationship, you may have to do something special in this case. All relationship attributes are to be considered as mandatory and non-unique unless stated above. Foreign Keys: You must add foreign keys as required to properly define each relationship. You should only do this when necessary for your database design. Hint: each relationship requires at least one foreign key. Other Requirements 1. You must label all of your relationships with the text tool ( ). 2. You must include your full name, UWO username, and student number in your diagram using the text tool. There will be a significant mark penalty if this is missing from your diagram. 3. You must organize your entities and relationships in a way that is legible and well laid out. Relationship lines should be drawn at right angles and not overlap. Text should be clear and easy to read. 4. You must use the capitalization and naming conventions shown in the tutorials and slides for entity, relationship, and attribute names. 5. All names (of attributes, relationships, etc.) must be meaningful and clear. It should be easy for the TA grading your assignment to tell which attribute is which in your diagram. 6. You do not need to denote foreign keys as foreign keys, but they must be listed in the correct table and have the correct properties set (i.e. mandatory/nullifiable and uniqueness). Overall Hints Hint 1: Your diagram should contain seven (7) entities in total including associative entities (aka relationship entities/junction entities). If you are missing one, you likely forgot about a special case. Hint 2: ERDs do not show the actual data that will be stored. For example, your Employee entity should contain a “First Name” attribute and not a “Joe” or “Dan” attribute. Hint 3: In Dia, “Nullable” is the same as optional. Also note that the Unique property of an attribute is not displayed visually but must be set correctly. Submission of Part 1 Your file must be named: youraccountname_ER_diagram.dia (youraccountname is your uwo username) For example, if your UWO account name is ibatool2, your file should be named: ibatool2_ER_diagram.dia NOTE: After uploading your .dia file you MUST redownload it from OWL and check that you uploaded the correct file and that it is working and not corrupted. In the past students have uploaded the wrong file, one ending in .dia~ This is an autosave file made by DIA and not your diagram. Make sure the file extension does not have ~ on the end. Example: Correct file: dservos5_ER_diagram.dia Incorrect File: dservos5_ER_diagram.dia~ Part 2: Information Systems Questions about Your Company Create a Microsoft Word document and complete the following questions pertaining to the business you described in Assignment One. Use the same format as the word document from Assignment One. Each answer must be comprehensive (more than one sentence). Each answer requires at least four sentences. The entire Project 2 should be at least 600 words. It is expected that some thought and explanation is included in this section. 1.) Identify which of Porter’s Five Forces might influence your company the most and why. 2.) Recall Porter’s Four Competitive Strategies from Chapter 3. What competitive strategy will your company employ? How does this strategy relate to your product and company? Overall, why will you be successful? 3.) Describe the Value Chain involved in your company’s product. What are your company’s Primary Activities in this value chain? Overall, how does your company add value to the final product? As your company is currently quite small, it is ok if this value chain consists mostly of one business process. 4.) Which position in your company are you going to hire first? - name the position (job title) - list what will be their duties (what exactly will they be doing as their day-to-day job) 5.) Was this decision (to hire an employee) process Structured or Unstructured (briefly explain your answer)? 6.) Was this decision (to hire an employee) Operational, Managerial or Strategic (briefly explain your answer)? · The format of this document should be identical to the format you used in Assignment One. · Place your name, followed by your student number, and then your company name at the top. · Fill in the required information after. · Formatting is not important as long as the document is easy to follow. This document must be a Word file saved and submitted as a .docx file The name must be a combination of your Western Account Name and the name of your company just as in Assignment 1. The file name must be youraccountname_companyname_A2.docx · where youraccountname is your UWO username and companyname is the name of your company. · For example, if your UWO username is dservos5 and your company is Forest City Ducks, your file should be named: ibatool2_Forest_City_Ducks_A2.docx
CIS 5530: Project 1 Code Documentation Link State and Distance Vector Routing Spring 2025 Overview In this assignment, you will implement two routing protocols: link state and distance vector routing. We will be using the ns-3 discrete network simulator to teach core principles of network routing protocol design and implementation. Your assignment is to extend ns-3 to support efficient routing using link-state and distance-vector protocols. An important goal of this project is to provide you the opportunity to read and understand a sizable piece of software and extend it. Hence, we have deliberately not included all the details about the ns-3 code,particularly on specific APIs. Please be aware that no amount of documentation can replace actual reading and running of the code itself. So rather than spend hours digesting this document without looking at the code, make sure you treat this document as a reference guide while you run the simulator and step through the control flow of various interacting software modules. To get into the habit of working as a team, we encourage you to spend a day or two to get your entire group together to try to understand the code as a team and help each other out. 1 Getting Started 1.1 Container For a consistent environment, you can use the Docker configurations provided here: https://github.com/CIS- 5530/DockerEnv. Follow the directions in that repo’s README.md. 1.2 Git Repositories We will be setting up a git repo for you in the CIS-5530 Github organization with all of the starter code preloaded. Do not set up your own git repo outside of our assigned repositories. We will post a Google form. for you to enter your group’s information for creating your repositories. 2 Code Structure and Compilation For the purpose of this project, we have isolated all the code that you need to make/learn within the contrib/upenn-cis553 folder. All the other files for the purpose of testing are stored under scratch/results, scratch/scenarios and scratch/topologies folder. One of the important things to learn from this project is learning how to read and understand APIs within the code, before filling in the actual implementation. We will not provide details of APIs here. Understanding these APIs is part of your project. To help you understand each function, we have added some comments (function headers). 2.1 Files to modify • ls-routing-protocol .cc This file contains all the event handles that you need to implement for handling incoming/outgoing route messages. – For each incoming message, you need to implement the logic to handle the message, update local routing tables, and send out outgoing messages. – Periodic/triggered link-state updates should be transmitted and handled within this class. – Once the routing table is computed, handlers for forwarding messages should be imple- mented here,i.e., given an incoming message, forward the message along the computed next hop to the destination. • ls-message .cc This file implements all the packet formats used in the above file. To implement your link-state protocol, feel free to extend this file to add new packet formats, for instance, “hello” packets for neighbor discovery, and “lsa” for link-state advertisements. • dv-routing-protocol .cc Similar to ls-routing-protocol.cc • dv-message .cc Similar to ls-message .cc 2.2 Files that are provided • upenn-cis553/test-app This folder contains the autograder and test code. – test-app .cc This is an example application that we have provided to test your link-state or distance vector implementation. This application periodically generates a small packet to be transmitted from any source to a destination node. Feel free to modify test-app .cc to include your tests. While debugging your code, it is advisable to modify our test-app .cc to do something simpler, for instance, sending just one message between a fixed source and destination. • upenn-cis553/common This folder contains all logging wrappers and test essentials. You should not modify the files inside this folder • scratch/topologies This folder contains the input network to the ns-3 simulation. • scratch/scenarios This folder contains the step-by-step scenario file that you can customize to start/stop a network, bring up/down links, output network state, etc. • scratch/results This folder contains the sample output for ‘DUMP NEIGHBORS’, ‘DUMP ROUTES ’. • scratch/simulator-main .cc This contains the main driver program for your simulation. It takes as input the topology and scenario file, and executes the scenario. In the process, commands from the scenario file are sent to ls-routing-protocol .cc and dv-routing-protocol.cc, for instance, to generate a table dump, etc. Basically, our simulator-main handles basic commands related to link/node topology changes, and redirect routing-related commands to other modules. For instance, routing-related commands are sent to ls-routing-protocol.cc and dv-routing-protocol.cc, while test- case-specific commands are sent to test-app .cc. This file also generates optional outputs traces for animation. DO NOT MODIFY simulator-main .cc. Note: upenn-cis553/keys and upenn-cis553/penn-search are used in Project 2, you should be able to finish Project 1 without modifying them. 2.3 Compilation To compile the code, first ssh to the docker environment. We use ‘waf’, which is a python-based build tool to build our project. In order to use it, first make it executable. $ chmod +x waf Then run the configure command. You only need to run it once, unless you changed the wscript and thus need to update the configure. $ ./waf configure Then, compile the code using the following command, it will generate a simulator-main exe- cutable at ./build/scratch. It takes quite some time for the first time, and will be faster later. $ ./waf If you want to add new helper source files, for instance, creating your own classes for route entries, neighbor entries, etc. Whenever you add a new file, you need to modify the wscript file (most likely to be contrib/upenn-cis553/wscript) within the subdirectory where your new file resides. Failure to do this means that the new file may be excluded from the build. For faster compilation, use ‘ ./waf -j 4’ to enable parallel compilation. Please do not be greedy and increase 4 to a larger number, since that will slow down the virtual machine and may not speed up your compilation by much! 2.4 Running and interacting with the simulator The compiled binaries are located in the build directory. Now that you have successfully compiled your code, you can run the simulator by going to the main ns-3 directory, and run the command below: $ ./waf --run "simulator-main --routing=〈LS/DV/ANY/NS3〉 --scenario=〈scenario-file〉 --inet-topo=〈topology-file〉" Note: ‘waf’ is one of the build tools that have good source file management, however, you can also run the code as a normal C++ project if you like. Remember to set environment variable first (you only need to do it once every time you open a terminal session): $ export LD_LIBRARY_PATH=./build/lib/ And then run: $ ./build/scratch/simulator-main --routing=〈LS/DV/ANY/NS3〉 --scenario=〈scenario-file〉 --inet-topo=〈topology-file〉 You can choose either way of running your project, and the same rule applies to the following commands. To test the implementation, you can add ‘–result-check’ argument. But you don’t need it until you have finished your implementation. $ ./waf --run "simulator-main --routing=〈LS/DV/ANY/NS3〉 --scenario=〈scenario-file〉 --inet-topo=〈topology-file〉 --result-check=〈result-file〉" For example, if you want to test LS algorithm with the 10 nodes topology: $ ./waf --run "simulator-main --routing=LS --scenario=scratch/scenarios/10-ls.sce --inet-topo=scratch/topologies/10.topo --result-check=scratch/results/10-ls .output" To understand the commands above, run $ ./waf –run "simulator-main –help" 3 NS-3 Architecture For the most part, you do not need to read any additional files beyond those in upenn-cis553. However, for debugging purposes, it is important to understand the interactions of your code with other parts of ns-3. We provide a high-level overview here. The figure shows layers 2-5 from the perspective of a single ns-3 node. At the link layer, each node has multiple IP addresses and interfaces/device. At the IP stack (layer 3), IP packets are forwarded as follows: • ‘RouteInput()’ receives a message from one of the devices. Your implementation has to deter- mine the next hop to betaken for this message and forward the message to the appropriate device or the local host (if the destination is itself). • ‘RouteOutput()’ takes messages that originated from the local node, and then performs a similar next-hop forwarding or to the local host (if the destination is itself). To understand how ‘RouteInput()’ and ‘RouteOutput()’ are used, consult the OLSR code in sr- c/olsr. You do not need to implement multicast for this project. Note that all control messages used in link-state and distance-vector are sent via UDP protocol in layer 5 to immediate neighbors. This is counter-intuitive at first, since these protocols are implemented in layer 3, while UDP is a layer 4 service. However, this is a common practice to utilize the UDP protocol to bootstrap the protocol itself, where UDP is initially used for communicating with direct neighbors within the same subnet for exchanging control messages. However, once your routing protocol works, you should be able to write an application that uses UDP sockets to send packets to a destination node that is multiple hops away. 4 Input Topology Your ns-3 simulation has to take in an initial input point-to-point topology. To see an example topology, refer to scratch/topologies. Here is an example ten-node topology: 10 9 0 5 5 1 8 5 2 5 0 3 2 5 4 2 0 5 6 8 6 5 8 7 8 0 8 8 2 9 4 8 0 1 1973 0 2 4253 0 3 5341 0 5 4066 0 6 2702 0 9 4393 1 8 1033 2 7 10589 3 4 1126 This is based on a standard topology format used in network simulations. The topology has 10 nodes and 9 edges as initialized in the first line. The first 10 lines list each node and two attributes (X and Y coordinates). The next 9 are edges connecting nodes A to B with a edge weight. In our project, all edge weights are set to 1, so you can ignore the edge attribute too (as a fun exercise after the project is done, you can consider using this edge attribute to do shortest path by aggregate link costs rather than by hop count). The figure shows an example of point-to-point topology. Each node has a set of neighbors, one for each of its interfaces/device. The figure above contains also subnets and masks, which you need not worry about for this project. However, we included them in case you are interested to learn more. In the topology file, we refer to nodes by node numbers (e.g., 0, 1, 2, . . . ). However, once the topology is initialized, our simulator-main assigns to each node multiple IP addresses. The reason why each node requires multiple IP addresses is that it participates in multiple subnets (which you need not worry about). Our simulator-main will select one of the IP addresses as the unique identifier of the node. This identifier is what the node should advertise to its neighbors for computing routes. For instance, consider a node 0 that has IP addresses IP0, 1 , IP0,2 , and IP0,3 . In this case, IP0, 1 is selected as the unique identifier. We have also provided APIs that will map from the logical node number to the corresponding unique IP address (and vice versa). However, we have included this discussion here for your own understanding should you be curious to learn how addressing works in a pt-to-pt network. 5 Scenario File After the simulator has started the network, the scenario file is used to generate network events, such as link failures, node additions/failures, sending messages, dump commands to display network state, etc. We have provided an example scenario file at scratch/scenarios/test.sce. This scenario file contains most of the commands indicated below. Your goal is to read this scenario file and understand what it is doing. For your own testing purposes, you probably should write your own (simpler) scenarios initially, and feel free to add your own commands (for example, commands to dump link-state updates and network statistics). Most of the common commands have the following format: ‘ 〈 Node Number〉 〈 Module Name〉 〈 Command〉 〈Arguments〉’ where ‘〈Node Number〉’ refers to a node in the simulator (0, 1, 2, . . . ). ‘ 〈 Module Name〉’ refers to the protocol/module, e.g., LS, DV, or the application (e.g., test-app.cc). Our simulator-main .cc will direct the command based on the module name to the appropriate code that implements the command handles. (ls-routing-protocol .cc, dv-routing-protocol .cc, or test-app.cc). ‘ 〈 Command〉’ is the command to be sent to the node, e.g., ‘VERBOSE ’ is to turn on debugging messages, and PING is to send ping messages to another node. ‘ 〈Arguments〉’ is any additional arguments required specific to the command. For instance, the command ‘1 LS VERBOSE TRAFFIC ON’ will result in node 1 turning on all the traffic traces for the link-state protocol. ‘* LS VERBOSE TRAFFIC ON ’ will turn on the link-state traces for all nodes. • ‘VERBOSE 〈 TYPE〉 〈ON/OFF〉’ Turn on debugging messages. ‘ 〈 TYPE〉’ Usage ‘TRAFFIC ’ Use this when data is sent/received ‘ERROR ’ Use this when error messages are to be printed ‘DEBUG ’ Use this to print debug logs ‘STATUS ’ Use this to print status messages ‘OUTPUT ’ Use this to write output to a file ‘ALL ’ Use this to switch all traces at once Note: ‘ERROR’ and ‘STATUS ’ verbose is ‘ON ’ by default. For example, to switch on ‘TRAFFIC’ traces for node 1: 1 LS VERBOSE TRAFFIC ON • ‘PING 〈 NODE〉 〈 MESSAGE〉’ Send PING to a node. Note that for LS and DV modules, PING can only be sent to immediate neighbors. We have added this functionality as an example for students to implement their neighbor discovery for MS 1. On the other hand, the APP module PING is multi-hop, which means the PING message ought to be forwarded to the destination node using the routing tables computed by LS or DV. For example, Node 1 sends PING request to node 2 with a message: “hi!”: 1 LS PING 2 hi! You may also use “*” wildcard with APP module: 1 APP PING * “hello!” Node 1 sends PING to all the nodes in the topology. • ‘NODELINKS 〈UP/DOWN〉 〈NODE NUMBER〉’ Bring up/down all links of a node. Brings down all links on node 1. NODELINKS DOWN 1 • ‘LINK 〈UP/DOWN〉 〈NODE_A〉〈 NODE_B〉’ Brings up/down all links between ‘NODE A’ and ‘NODE B ’ Bring down link(s) between node 1 and 8. LINK DOWN 1 8 • ‘LINK 〈UP/DOWN〉〈LINK NUMBER〉’ Bring up/down a specific link as defined in topology file. Bring down 7th link defined in topology file. LINK DOWN 6 • ‘TIME 〈 MILLISECONDS〉’ Advance scenario file time before next command. Advance time by 100 milliseconds. TIME 100 • ‘TIME ’ Display the current simulator time • ‘QUIT’ Quit Simulator 5.1 Commands to Implement Note that the commands you need to implement for our actual demo are as follows: Command Remarks Example ‘DUMP ROUTES ’ Print out routing table ‘ 1 LS/DV DUMP ROUTES ’ ‘DUMP NEIGHBORS ’ Print out neighbors ‘ 1 LS/DV DUMP NEIGHBORS ’ 5.2 Interactive Scenario Mode In addition to using the scenario file, you can also enter the scenario commands interactively via the keyboard. While the simulation is running, there is a command prompt that you can use to enter the commands described above. 6 Auto-checker Mode At some point before your actual demonstration, we will be providing you with a sample topology/sce- nario and a result-check file. The auto-checker mode can be invoked by providing the given topology/s- cenario files, together with the result-check file, by using the option ‘--result-check=〈 filename〉’ to the ‘simulator-main ’. Our auto-checker would then compare your implementation’s output with our reference implementation’s output (provided in result-check file). To make this comparison work, you must call two “hook” methods in your code. If you look into the ‘DumpNeighbors()’ and ‘DumpRouting- Table() ’ functions, you will find commented function calls to ‘checkNeighborTableEntry( . . .)’ and ‘checkRouteTableEntry( . . .)’, respectively. After you get your implementation running, uncomment these function calls and pass on the required arguments (declarations are in upenn/test-result.h). Once these hooks are properly setup, the auto-checker would pinpoint the inconsistencies between your implementation and the reference implementation, if any. Please note that having your implementation match our result-check file is the bare minimum that you should aim to achieve. We recommend that you make sure your implementation clears the auto- checker before submitting on the Gradescope auto-grader. We are providing you this file so that you can be sure that your implementation is on track.
PMS4101 GIS and Managing Smart City Term (2) 2024/25 Assignment 1 Due Date: 13 February 2025 (Thu) at 11:59 pm (Please submit via Moodle, 15% mark will be deducted for late submission per day) Total mark: 50 This assignment covers lecture and tutorial materials in Week 2 and 3. Please submit the map URL and your answers in.pdffile with your name and SID. Task 1: Digitize then create a “good” project showing the Kowloon Park, and share the map URL to a primary school to help them with planning a park visit. i.e. Indicate the location of different facilities (polygon), pathways (line) and number points on ArcGIS Online (25 marks) ** Note: Remember to configure the map properly Task 2: Compare and discuss the difference between Circular buffer and Network buffer, how would they influence on the results of spatial analysis? Please use examples/maps/applications to justify your answers. (25 marks)
Department of Historical and Cultural Studies / Women’s and Gender Studies WSTA03H3S: INTRODUCTION TO FEMINIST THEORIES AND THOUGHT GUIDELINES FOR THE PERSONAL REFLECTION WHAT IS A PERSONAL REFLECTION? A personal reflection Explores a particular topic or theme. Presents your own thoughts and feelings about it. Discusses the different ways in which this topic or theme has affected your own views. LENGTH The length of your critical response will be 750-800 words (font 12, double-spaced)- not including the bibliography. WHICH THEORY CAN I CHOOSE? The Personal Reflection paper (due on February 13) is about your personal response to ONE of the following theories: Liberal Feminism Radical Feminism Marxist Feminism Black Feminism METHOD Your introduction also needs to include a thesis statement outlining the main points of your personal reflection (you also need to indicate which theory you have selected and why). The rest of the assignment focuses on your views about the theory you have selected and how helpful you think it is to understand the world around you. You need to focus on the following aspects: The aspects of the theory that you have found the most interesting, stimulating, challenging, informative, controversial, problematic, etc. You can also note any changes or transformations that you experienced as a result of learning about this theory. For example, has it changed your views on gender and society? If so, in which ways? What have you learnt personally from it? The possible applications of this theory. In other words, you need to discuss how this theory could be applied to current real-life situations (provide examples such as current media/community stories, examples from books you have read, films you have watched, personal experiences, etc.). The aspects that could be possibly controversial. In other words, you need to discuss the possible challenges of the theory and what you think about these challenges. IMPORTANT NOTE: You need to offer at least two references or quotes from two course readings. DEADLINE AND SUBMISSION All assignments should be submitted on Quercus. Late Assignments Late papers will incur a 2% per day penalty unless you have been granted permission for an extension based on legitimate reasons beyond your control. If you feel you have an exceptional circumstance, you must write to me (email) at least one day in advance of the deadline to receive prior approval. If you require an extension for accessibility reasons, please send or arrange for the AccessAbility Office to send me their letter. Note that the University of Toronto policy states that all term work must be submitted by the end of term. I encourage you to communicate with me if you need an extension or if you have an accessibility accommodation. If your paper is late, it will likely be returned to you after the papers submitted on time are returned. STYLE You are expected to use proper sentence construction, grammar, spelling and citation. You may use the word “I” in your work for this class. Remember to proofread your assignments. Remember that the Writing Centre is a useful resource at UTSC that offers valuable support to students writing assignments (see syllabus). FORMAT All papers must be uploaded onto Quercus for submission. Proper and consistent referencing and acknowledgement of all sources used in your essays is expected. Your bibliography must only include texts that are actually cited in your essay. Please keep a digital copy of all submitted assignments and retain all your returned term assignments at least until you have received a final grade in the course. All essays must be double-spaced, preferably typed in 12-point Times Roman (or other standard font), with 1.25” margins and page numbers. On the first page, please include your name and always keep a copy of your paper in print or computer file. Remember to provide a title, preferably one that highlights your thesis or central concerns. You are expected to use an essay format, with an introduction (that includes a thesis statement), a main body and a conclusion. Avoid a lengthy, overly general introduction; state your intentions concisely and engagingly. Each paragraph is to be a unit of thought and should develop an idea. Provide transition between topics. Your essay should have continuity; it should “hang together.” Support or illustrate your assertions; be as specific and precise as possible. Quoted materials belong in quotation marks and a page number should be supplied. Use a style. guide for references and be consistent. Ideas or passages that are paraphrased (written in your own words) also need to be referenced. Avoid over-use of quoted materials. Passages that are quoted need to be contextualized and require comments that directly forward your own argument. You must have a list of references / bibliography and it must name the style. guide you have employed (i.e. MLA / APA). If you have questions or concerns about what constitutes appropriate academic behavior. or appropriate research and citation methods, you are expected to seek out additional information on academic integrity from your instructor and from other institutional resources (see below).
ECE 141, Winter 2025 Homework 4 Due Feb 11, 2025 at 11:59pm Problem 1. Consider a control system represented by the transfer function in (1). Let y denote the output Y in time domain, and u denote U. Then, take x1 = y and x2 = ˙x1, and write the state-space representation of G where x1 is your first state, and x2 is second. Problem 2. For the system in Fig. 1, where (a) Determine the transfer function from R(s) to Y (s), assuming W(s) = 0. Find the nominal steady-state tracking error ER(s) := R(s) − YR(s) = [1 − R/Y (s)]R(s) with: (i) a unit-step reference input; (ii) a unit-ramp reference input. (b) Determine the transfer function from W(s) to Y (s), assuming R(s) = 0. Find the disturbance steady-state tracking error EW (s) := R(s)−YW (s) = −W/Y(s)W(s) with: (i) a unit-step disturbance input; (ii) a unit-ramp disturbance input. (c) Now, assume neither W(s) nor R(s) is zero. Express the overall output Y (s) := YR(s)+YW (s) as the weighted sum of inputs R(s) and W(s). Then compute the overall steady-state tracking error E(s) := ER(s) + EW (s) with both: (i) a unit-step reference input AND unit-step disturbance; (ii) a unit-ramp reference input AND unit-ramp disturbance. Problem 3. Block diagram representation for a magnetic tape-drive system is shown in Fig. 2, and note that J and b are given at the bottom left corner of the figure. (a) Assuming the reference is zero, what is the disturbance steady-state track-ing error due to a step disturbance torque of 10 N·m? What must the amplifier gain K be in order to make the disturbance steady-state track-ing error edss ≤ 0.05 rad/sec? Figure 1: Block diagram representation of the system for Problem 2 (b) Plot the roots of the closed-loop system in the complex plane. Sketch the time response of the output for a step reference input, assuming no disturbance present, using the gain K computed in part (a); (c) Plot the region in the complex plane of acceptable closed-loop poles cor-responding to the specifications of a 1% settling time of ts ≤ 0.05 sec and an overshoot Mp ≤ 1%; (d) Replace the amplifier K with a PD controller. Give values for kP and kD which will meet the specifications in (c), assuming no disturbance; (e) How would the disturbance steady-state tracking error change with the new control scheme in part (d)? (f) How could the disturbance steady-state error be eliminated entirely? Figure 2: Block diagram representation of the system for Problem 3 Bonus 1. Verify your answers to Problem 3 using Matlab.
ITS64604 Software Engineering MLO 3: Demonstrate subject specific skills with respect to applying modelling techniques and notations in the group project coursework. INDIVIDUAL TASKS Question 1. Use Lucidchart or similar tools to create the following diagrams: a) Use Case Diagram: Model the ‘Order Fulfillment Process’ based on Lecture Slide 10/14 from the Overview of Business Information Systems. b) Class Diagram: Depict the ‘Food Ordering System’ based on Figures 6-5 and 6-6 (from Chapter 6 - Structuring System Requirements). 2. Embed the diagrams in a Word document and include a brief textual description explaining each one. 3. Submit this document as part of your group’s final report. Put the individual marking rubric for each student. GROUP TASKS Question This task refers to the following case scenario in page 6 and 7. 1. Form a group of 5 students to complete the following: a) Requirement Analysis: Identify and document functional and non-functional requirements in a table. Analyse using requirements elicitation b) Scope Definition: Clearly state the proposed system's scope. Scope may be defined in terms of the people involved in the system processing, the people who control data involved in the system, the amount of data involved in the processing, or the costs of system failure. Explain what is covered by the system you proposed and what is not covered. c) System Design: i. Develop an SDLC model for your project. ii. Draw the Use Case Diagram for the proposed website. iii. Draw the Class Diagram to model the system's information. d) Prototype Development: i. Build an alpha or beta version of your website. ii. Include mock-ups of the user interface with descriptions of major functionalities and key benefits. 2. Prepare a comprehensive final report that includes all tasks, diagrams, and prototype details. 3. Submit all files in a named folder through the provided submission link by 7th March 2025. Case Scenario: Website Development for Hotelcatz Needs Students need to develop a website to reach out to the community and to serve and support the current Hotelcatz, our client. Furthermore, students need to develop a website that can be maintained by a Hotelcatz employee, without the need to regularly employ Hotelcatz to make changes. The students need to employ a website that able to add and revise both text and photos and additional pages if necessary. Solutions Group of students will provide Hotelcatz with a fresh new web design that is easy to navigate and provides useful information to current subscribers. The design will also convey to potential subscribers that Hotelcatz is a professional, reliable company. The design will integrate the current logo and color palette so it will maintain a familiar look to current subscribers but will at the same time show them that company is improving its web presence (if applicable) in order to serve them better. Content Management System Central to the new design from Hotelcatz Shops will be a robust Content Management System (CMS) that will allow Sample Company to make changes easily to the website, without requiring a dedicated workstation or additional software. Website Organization The new design will have five main landing pages: 1. Home Page 2. About/Contact 3. Gallery 4. Booking and pay 5. Blog These five pages will be "hardwired" into the new design by group of students and links to them will appear in the horizontal menu bar at the top of the page (below the logo and other header content). On each of these pages, students will include a left-hand column that company can use to create links to as many "subpages" as they wish. Therefore, the CMS allows as many pages as necessary, without incurring additional cost beyond the original design and landing pages fee. Workflow Our client, Hotelcatz Shops is giving you freedom to creative preliminary design concept for the its new website. That design concept will include the basic layout, color palette, font choices, etc. Website Design and Setup work with clients to create a custom website interface - layout, colors, and fonts set up website architecture and navigation system implement nameplate/logo placement and design create website mirror the testing via group presentation with the prototype integrate content management system Submission final report format 1. Cover page 2. Table of contents 3. Individual student answer (Write your name and ID). Do the same step for the other group members. 4. Individual student rubric. 5. Final project answer. The final project arrangements: a) Introduction b) Requirement analysis c) Scope definition d) System design (SDLC, GUI, UML diagrams) e) Website development (GUIs with description) f) Conclusion 6. Final project marking rubric.
Empirical Finance: Course Work 1 Your team has been recently hired by Imperial Global Asset Management, and your task is to run a few exercises. Below, you find the guidelines about your assignments, but you can amend the specifications if you have plausible economic arguments. Finally, write a brief investment report of about 3,000 words (this is just indicative) as a financial economist. Describe what you have done and present the key results. There is no need to write any formulas. You can also be creative and report whatever may convince an investor to bet on your strategy. Whether a strategy works or not, try to come up with an economic story that explains why this is the case. Last but not least, make any assump- tions you need, but please mention them. You do not need to submit codes and/or excel files. Data You have collected the following long-span data from Global Financial Data: • Stock market index for both the US and Japan, • Short-term Treasury yield for both the US and Japan, • Long-term Treasury yield for both the US and Japan, • GBPUSD exchange rate. Exercise 1 [30%] Take data for the US (i.e., stock market index, short-term yield, and long-term yield) and answer the following questions. Questions 1. Present and comment their summary statistics. 2. Present and comment the ACF and PACF. 3. Identify the appropriate time-series specification, and estimate the key parameters. Present and discuss your results. Exercise 2 [30%] Consider the following models: 1. Benchmark model yt = α + εt 2. Competing model yt = α + βxt−1 + εt where • yt is the monthly stock return between t − 1 and t, • xt−1 is the term spread (long-term yield minus short-term yield) observed at time t − 1. 3. Use an expanding window (start with 10 years of data) as well as a 10-year rolling window to generate out-of-sample (OOS) forecasts for both models using US data Questions 1. Compute the OOS R-squared or Ro(2)os, 2. Test the null hypothesis of equal predictive ability using the Clark and West test. 3. Present and discuss your results. Exercise 3 [40%] Consider the following models: 1. Benchmark model for stock returns yt = α + εt 2. Competing model for stock returns yt = α + βxt−1 + εt 3. For exchange rate returns, always use this model et = α + βzt−1 + εt where • yt is the monthly stock return between t − 1 and t, • et is the monthly exchange rate return between t − 1 and t, • xt−1 is the term spread (long-term yield minus short-term yield) observed at time t − 1. • zt−1 is the interest rate differential (US short-term yield minus Japan short-term yield) observed at time t − 1. 4. Use an expanding window (start with 10 years of data) as well as a 10-year rolling window to generate out-of-sample (OOS) forecasts using all data. Questions Consider a portfolio consisting of the US stock market, Japan stock market, and the US short-term bond (a proxy for the riskless rate). • Set σ * = 10% per annum as target volatility, and rebalance your portfolio every month using your OOS forecasts. • Report portfolio mean and volatility in % per annum, SR and SO per annum, • Report the performance fee P in basis points per annum, • Plot the cumulative returns, portfolio weights, and the one-year rolling SR.
1)Detemine whether the following complexes obey the 18-electron rule. (a)[Pd(Et)(Cl)(PPh₃)2] (b)[Fe(n³-allyl)(CO)₃Cl] (c)[Rh(Cl)(H)2(n²-C₂H4)(PMe3)2] (d)[Cr(n⁶-C₆ H₆)(n⁶-C₇ H₈)] 2)A complex has an empirical formula of Re(CO)₃CI.Propose how this complex could obey the 18-electron rule without requiring any additional ligands.(Note: Include in your answer a reasonable depiction of the complex you come up with along with an electron count of the complex showing that it obeys the 18-electron rule.) 3)Provide a plausible reason for the difference in IR C-O stretching frequencies between the following pair of complexes. fac-[Mo(PF3)3(CO)3] 2040, 1991 cm-1 fac-[Mo(PMe3)3(CO)3] 1945, 1851 cm-1 4)Suggest the most plausible product for each of the following reactions.Explain your reasoning: (a)Re₂(CO)10 with Na (b)Ni(CO)4 with excess PPh₃(done with heating) 5)The compound [Ni₃(C₅H₅)₃(CO)2]has a single C-0 stretching frequency at 1761 cm¹ . The IR data indicates that all C₅ Hs ligands are pentahapto and are in identical environments. (a)On the basis of the data,propose a structure.Provide a justification for your structure. (b)Determine whether the metal centers in your structure obey the 18-electron rule.
Math 300 Extended Essay I may still edit this document. If I do, you will be notified. For the Extended Essay, each of you will write a well-edited paper about a topic in the history of mathematics which is outside of the specific material we cover in class. Any historical time period is considered acceptable, though you should talk to your professor if you wish to cover a topic beyond the turn of the 20th century (there are a few such topics that are fine, but you should get approval). Your paper may focus on a seminal text in the history of mathematics, on the history and development of an important idea or theorem, or on the life and mathematics of an individual. In general, your paper should be aimed at an audience which is, at most, aware of calculus. If further mathematics is required, some context or explanation should be included. The Extended Essay will count as 25 points toward your final grade. Points will be given for steps in the paper process described below. Except for the points attached to the final draft, these points are for completion only–provided your work meets the requirements of each stage. No step may be skipped. Late work must be discussed with me, and an appropriate points penalty will be assigned. Due dates for each part of the paper process. All work should be uploaded to Gradescope by midnight on the due date. All work should be submitted as a pdf generated by LaTeX. Sample LaTeX files can be found in the folder “LaTeX” on blackboard. If the sample you need is not there, let me know. We will adhere very strictly to the UR Academic Honesty Policy regarding written work. 1. Feb 14. Topic and bibliography. This will be returned to you Feb 17. (1 pt) 2. March 7. Draft 1 and reflection. This will be returned to you by March 17. (2pts–1 for the draft, and 1 for the reflection.) 3. April 4. Draft 2 and reflection. Your peer reviewer will respond by April 11 and your instructor on April 13.(2pts–1 for the draft, and 1 for the reflection.) 4. April 11. Peer Reviews. Each of you will be assigned the paper of a peer to review and comment on. Details on what constitutes a good peer review can be found below. (2 pts) 5. April 23. Final Draft and reflection. (13 points. 12 for the paper, and 1 for the reflection.) Description of each part of the paper process: • Reflections. At two dates in the process, I will ask specific questions that will help you with the next steps. The third reflection will be due with the final draft and will look back on the process as a whole, with an eye towards fine-tuning the experience for future students. • Topic and bibliography. This should be a detailed and specific presentation of your topic. It should describe what material you intend to discuss. Each item in your bibliography should be carefully described, and an explanation given about what information in that source you mean to use for your paper. By approaching this part of the paper-writing process carefully, you can avoid committing to something that may turn out to be too difficult or complicated later. If your topic is not quite right for this paper, I may either assist you with fine-tuning it or require you to simply choose a different topic - this will save you difficulty in the later stages of the assignment, I promise. You may also add a “concerns” section to this document. For example, perhaps you were unable to find enough supporting bibliographic information. Or you worry that your topic does not relate closely enough to a paper option that has been given. The bibliography should be generated using a LaTeX bibliography environ- ment. Choose enough material to make your paper 9-12 pages long. Your sources should be books, original math, or articles in peer-reviewed jour- nals. Wikipedia is not an appropriate source. Using the UR libraries will be extremely useful. Do not “pad” your bibliography at any point. Listing sources you have not actually used is an honesty violation. Make sure your sources are relevant to the specific topic you have chosen and way you intend to approach it. • Draft 1. This draft should be as complete as possible, but there maybe areas that will need substantial revision. Do your best. It should include bibliography and citations as needed. This draft should include any original content that you are discussing. It can be copied over or scanned. It should be in the form of a formatted essay with at least 8 pages. • Draft 2 This draft should be as complete as possible. Attend to citations, grammar, and usage carefully. Between Draft 1 and Draft 2,consider comments you received on Draft 1 and also your own feelings especially with regard to organization. It’s a good idea to write an outline of your paper at this point to see if the logical progression of your ideas makes sense. This draft will be given to a peer to review, and I will also read it and make comments. This should be an essentially complete essay of between 9-12 pages of written text. The goal is to go forward from this draft doing purely revision, with (hopefully) only minor modifications to shore up your context, argument, and sources. • Peer Review You will provide someone else with a careful, detailed review of their paper. You can either download the pdf and make your comments on it, or provide notes of some kind in another format. You should keep your comments polite and respectful. You should comment about both things you like and things you don’t like. You can be kind and still offer constructive criticism. Try to do as careful a job as you hope someone is doing for you. Steps: – First read the whole paper without making any comments. – Next read your peer’s responses to the reflection questions. – Now re-read the paper and make comments. Be sure to address the re- flection questions where possible. To submit your response, email it to your peer. Be sure to cc Prof Dannenberg. Then, on Gradescope, go to the assignment “Peer response” and click that you have submitted your response. This is so I can generate the points (2) for you. • Final Draft I hope this needs no explanation. 9-12 pages of written text, proper formatting and grammar, staying on topic, addressing the previous comments you’ve received. Topics You MAY (and indeed, are even encouraged to) create your own topic. You may also pick a topic based on one of the brief prompts below. If you create your own topic, be sure that your outline and bibliography are detailed enough to convince me that this is a good topic and that sufficient sources are available. It is very important to figure that out early! 1. Infinite Series. Series are older than you think and arose independently in disparate cultures. Some mathematicians to consider are Zeno, Archimedes, Madhava, Newton, and the Bernoullis. Your paper should focus on how series were thought of before the advent of rigorous limits. The audience for this paper should be people who have seen series before, but not more sophisticated mathematicians. Your paper should include at least three original examples. The discussion of these examples should come mostly from you, not from a secondary source. 2. Euclid. Choose a book from Euclid’s Elements that we were forced to skip in class. Discuss its overall content, and choose a few propositions to prove and discuss in detail. Be sure to talk about why the book you choose is in- teresting. Especially encouraged are Circles (III) or Number Theory (IX), but you can propose any book you wish except I and II. You may not use the Euclidean division algorithm. There is not enough to say about it that is interesting. In your topic proposal, be sure to mention which of Euclid’s proposals you mean to cover in detail. Your audience should be the general public. Assume a high school level of mathematical sophistication. You may use the clark.edu version of the Elements. The main sources for this paper should be you and Euclid, although secondary sources should be provided to use for an introductory paragraph on historical background. 3. The Nine Chapters. One of the greatest mathematical works of all time is The Nine Chapters on the Mathematical Arts of Han China. The library has an English version. (Even if your are able to read archaic Chinese, you must use the English version primarily, because your audience can not.) Choose enough original examples from this text to support an interesting paper. You can either choose examples from a single topic, or you can provide a broad sampling. In either case, there should be sufficient prose to make your topic into a cohesive whole. Present these examples in their original form, and then explain the examples in your own language. Your audience should be the gen- eral public. Assume a high school level of mathematical sophistication. The main sources for this paper should be you and The Nine Chapters, although secondary sources should be provided to use for historical background. Cau- tion–The early use of matrices found in this document seem like a great topic, but they are so close to our modern matrices that there is almost nothing to say about them. Choose other topics. 4. The Sea Island Manual. Follow the prompt for The Nine Chapters, but use The Sea Island Manual of Liu Hui. 5. How Come I Never Heard of this Math? Many groups have been under- represented in ordinary mathematical discussion. Choose such a group, and find as many original examples as possible. Include a historical discussion. Your audience should be the general public. Assume a high school level of mathematical sophistication. Unfortunately, this topic will require more sec- ondary sources than others, as, of course, your group will be under-represented in the literature. If you wish to choose this topic, please contact Prof. Dannenberg early for bibliographic ideas. Here are some possible groups to consider: Maya, Inca, and other peoples of the western hemisphere. Women. Africans. South Asians. Medieval European Jews. 6. Diophantine Equations. Diophantus was really an outlier. He worked on algebra in a geometric age. Your paper should use original examples from Diophantus (available in the library) and your own discussion of them. You can also include work on Diophantine topics by other groups, such as the Indians of the classical period. Do not get into modern Diophantine math. Your audience should be someone who has had some college math, but not advanced topics such as Diophantine Analysis. 7. Math through the Ages. For some of our readings, we will use Math through the Ages by Berlinghoff and Gouvea, which I call MTTA for short. This book covers math history by topic trajectories rather than by region or time period. It’s designed for people who are interested in becoming highschool math teach- ers. MTTA will be on reserve at Carlson. Choose a chapter, and using the bibliography provided, explore the trajectory in greater detail. As the audience for MTTA is very general, your audience should be slightly more sophisticated. Assume college calculus. Make every attempt to provide original sources in your paper that you will explain and expand upon. There should be a mini- mum of two. Even if you are not interested in this topic, have a look at MTTA, because it has an excellent bibliography. 8. Covering the development of a specific theorem or idea: There are a number of particularly important theorems which attracted great interest and guided the development of the history of mathematics. A paper giving historical context for why this question was considered interesting, how people thought about/eventually proved the theorem, and what influence it had going forward can be a great topic. If you pick a topic of this type, you will need to make sure that your topic is sufficiently broad that it can make for a good 9 page discussion, but sufficiently narrow that you are able to discuss it in great depth. 9. Covering the mathematics of a specific mathematician: There are (at least) two great traps in studying the history of math. The first is falling into a ‘great person’ history of mathematics as a story of lone geniuses toiling in isolation. The second is treating mathematical development purely as a history of ideas without any human element. Mathematics is ultimately done by people; a paper detailing the perspective and contributions of an individual to the history of mathematics can be extremely valuable. If you pick this topic, you should select a mathematician of interest, along with up to two or three threads they contributed meaningfully to. Discuss their contributions in these areas, highlighting new ideas and giving historical context to the mathematical work they did. 10. Other topic ideas are welcome, but be sure to talk to Prof Dannenberg to workshop a good topic before you get too far into your planning.
MATHEMATICS Paper 2 Pure Mathematics 2 1 The variables x and y satisfy the equation a2y = e3x+k , where a and k are constants. The graph of y against x is a straight line. (a) Use logarithms to show that the gradient of the straight line is 2 ln a/3. (b) Given that the straight line passes through the points (0.4, 0.95) and (3.3, 3.80), find the values of a and k. 2 Solve the inequality |x - 7| > 4x + 3. 3 The function f is defined by f(x) = tan2(2/1x) for 0 ≤ x
Assessment Proforma 2024-25 Module Code CMT221 Module Title Topics, Research and Skills in Computing Learning Outcomes The learning outcomes for this assessment are as follows: • Discuss the purpose, goals and process of academic research • Appreciate and compare a variety of research approaches, methods, tools and techniques, and choose appropriate methodology relevant to the research issue or topic • Demonstrate the process of evaluating and synthesising prior knowledge through carrying out a literature review on a topic related to Computing • Reflect upon their strengths and skills acquired or enhanced to date • Create a project pitch and design a project plan Assessment Description For this assignment you will put together a dissertation proposal, an overview of the literature or state of the field/market connected to that proposal, and a reflection on your personal skills related to the completion of a dissertation. Note: • You do not need to wait to be assigned a dissertation supervisor to complete this assessment. • If you have not agreed a dissertation project with a supervisor and do not expect to do so within the time limit for this assessment, you may complete this assessment on a different topic. • Completing this assessment on a given topic does not then commit you to completing your dissertation on the same topic. Taks 1 - Dissertation Proposal This should be a short description of a project that is suitable for a dissertation project in Computing, and an overview of how it will be carried out, including a justification for this. Your dissertation proposal should cover the problem that you are attempting to solve, the solution you are proposing to solve this problem, and a justification of the methods used to create and evaluate this solution. Note: • The proposal you complete as part of this assessment does not need to be the same proposal you eventually work on as part of your dissertation project, though it can be. Task 2 - Literature Review The contents of your literature review will depend on the type of project, but it should aim to provide an overview of the context of your problem. For example, are there any existing/competing solutions that you can build on or build an alternative to? What external factors will influence the completion of your project? Note: • the overview/literature review you complete as part of this assessment should be related to the dissertation proposal created during the assessment – not your actual dissertation proposal if this is different. • the overview/literature review completed as part of this assessment will need expansion and re-writing to be included in your final dissertation project. Task 3 - Personal Skills The reflection of your personal skills should be an audit of your skillset as compared to the skills needed to complete your proposed dissertation project, and where there are gaps should include an assessment of how these skills will be acquired/strengthened to allow the project to be completed successfully. Submission Instructions The coursework submission should consist of three items: 1. A dissertation project proposal. This could be presented as: a. A 700-800 word written description b. A 3-4 minute video description c. A 3-4 minute audio description 2. A short initial literature review on the topic of the proposal above. This could be presented as either: a. A standalone presentation (8-10 slides) b. A poster (A1 size) 3. A reflection on your personal skills as related to a dissertation project. This should be presented as a short piece of reflective writing (~800 words) Assessment Criteria Task 1: Dissertation Proposal (40% of the overall mark) Problem Description (16% of overall mark) Distinction Comprehensive and insightful critical examination, showing clarity without unnecessary detail. Merit Clear and concise overview, mostly comprehensive with clear aims and objectives. Pass Includes key information but may be unclear or not fully aligned with objectives. Fail Limited key information, unclear problem description, unsuitable for the program. Proposed Solution (16% of overall mark) Distinction Appropriate methodology and clear objectives, using best practices or original approaches. Merit Sound methodology and possible successful solution, key objectives identified. Pass Partially addresses the problem, some objectives presented. Fail Unlikely to deliver a successful result, vague and not relevant, missing objectives. Overall Justification (8% of overall mark) Distinction Clear alignment with learning outcomes, critically evaluated and succinctly justified. Merit Aligned with learning outcomes, solution evaluated but not fully justified. Pass Some evaluation, but not fully justified. Fail Poorly justified or lacks justification, missing relevant information. Task 2: Literature Review (40% of the overall mark) Knowledge of Subject (16% of overall mark) Distinction Rigorous and insightful knowledge, excellent quality critical evaluation. Merit Significant knowledge, good quality evaluation from high-quality sources. Pass Limited but appropriate knowledge, some critical evaluation. Fail Descriptive, limited relevance to the problem, lacks awareness of issues. Critical Evaluation (16% of overall mark) Distinction Excellent critical evaluation, good awareness of issues, concise discussion. Merit Good critical evaluation, reasonable awareness of issues. Pass Some critical evaluation, limited quality of sources, some awareness of issues. Fail Evaluation lacks depth, weak relevance to the problem, unstructured. Structure and Relevance (8% of overall mark) Distinction Excellent structure, concise and highly relevant discussion. Merit Well-structured, good discussion. Pass Structured, discussion not always clear or relevant. Fail Unstructured, lacking in discussion, fails to address relevant literature. Task 3: Reflection on Skills (20% of the overall mark) Evaluation of Skills (10% of overall mark) Distinction Thorough critical evaluation, comprehensive plan for addressing knowledge gaps. Merit Critical evaluation provided, plan to resolve most knowledge gaps. Pass Limited evaluation, further insight needed to identify and address gaps. Fail Descriptive list of skills, limited linkage to project needs, unachievable gap resolution plan. Plan to Resolve Gaps (10% of overall mark) Distinction Achievable plan to resolve knowledge gaps, showing analytical thinking. Merit Achievable plan provided, resolves most gaps. Pass Brief plan, limited detail, lacks comprehensive addressing of gaps. Fail Inappropriate or unachievable plan, fails to effectively address gaps.