Computer Science Department Final Exam CSC 252 Computer Organization 12 May 2021 Problem 0: Warm-up (3 Points) What’s the most surprising thing about computers you learned from 252? Problem 1: Miscellaneous (14 points + 12 points extra credit) Part a) (3 points) Convert the decimal number 334 to hexadecimal. Part b) (3 points) Why wouldn't a user program that contains an infinite loop freeze the entire computer even if the computer has only one processor? Part c) (8 points) Consider a shell in Linux, sh, that supports basic foreground/background job control, just like the one you implemented in Assignment 4. Initially, myprogA is running in the foreground, myprogB is running in the background as job 1, and myprogC is stopped in the background as job 2. Assume this initial state for each question below. (4 points) The user presses Ctrl-C and kills the foreground process. List all signals that are generated and the receivers of these signals. (4 points) myprogA finishes, then the user presses Ctrl-Z at the shell's command prompt. List all the signals that are generated and the receivers of these signals. Part d) (this entire part is extra credit; 12 points) You are designing a new ISA called URISA, which supports the following instructions. Instruction Semantics Sum immediate and register rdADDrd,rs1,rs2rs1rs2, store the result in register Load 4 bytes to register from memory location specified by Store 4 bytes from register to memory location specified by Jump to if register rsrtzeroraa1%eaxsp%espt0-6%ecx, Translate each of the following x86 instructions to the equivalent URISA instructions using only the instructions listed above. You may use any register above, but no new memory location other than what is used in the original x86 instruction. Note that the x86 instructions use the AT&T/GAS syntax, i.e., opcode src, dst. For example, the x86 instruction pop (%eax) would be equivalent to: LW t0, 0 (sp) SW t0, 0 (a1) ADDI sp, sp, 4 (3 points extra credit) add $0x8, %esp (3 points extra credit) add %eax, 8 (%esp) (3 points extra credit) push $0x252 (3 points extra credit) This processor does not have an Overflow flag. Fill in the following assembly so that if the ADD instruction causes an unsigned overflow, the program jumps to the overflow label. ADD t3, t1, t2 _____BLTU t3, t1, overflow ; or BLTU t3, t2, overflow ;… code omitted overflow: ;… code omitted Problem 2: Floating-Point Arithmetics (15 points) Part a) (3 points) Put6 16/5 nto the binary normalized form. Part b) (12 points) The IEEE has decided to introduce a floating-point standard of some unknown size, whose main characteristics are consistent with existing floating-point number representations that we discussed in the class. The following bit sequence contains the exact encoding of 6 16/5in this new standard, but is padded with arbitrary bits at the beginning and in the end: 10010100110010110. (3 points) How many bits are used for the fraction in this new standard? (3 points) How many bits are used for the exponent in this new standard? (3 points) What is the bias in this new standard? (3 points) What is the smallest positive value that can be precisely expressed using this new floating-point format? You can write your answer either in the binary-normalized form. or as a bit sequence. Problem 3: Assembly Programming (16 points) Conventions: 1. For this section, the assembly shown uses the AT&T/GAS syntax opcode src, dst for instructions with two arguments where src is the source argument and dst is the destination argument. For example, this means that mov a, b moves the value a into b and cmp a, b then jge c would compare b to a then jump to c ifb ≥ a. 2. All C code is compiled on a 64-bit machine, where arrays grow toward higher addresses. 3. For functions that take two arguments, the first argument is stored in %edi and the second is stored in %esi at the time the function is called. The return value of this function is stored in %eax at the time the function returns. Part a) (9 points) The following is assembly code for a C function find_next(): 0000000000001169 : 1169: mov %edi,%eax 116b: inc %eax 116d: mov $0x2,%edx 1172: cmp %eax,%edx 1174: j ge 1184 1176: mov %eax,%ecx 1178: sub %edx,%ecx 117a: test %ecx,%ecx 117c: jg 1178 117e: je 116b 1180: inc %edx 1182: jmp 1172 1184: ret (3 points) What is the return value of find_next(2)? (3 points) What is returned when a non-positive x is provided to find_next(x)? Show your answer in terms of x. (3 points) For positive values of x as input, what does find_next(x) do? Part b) (7 points) Some students wrote a CSC252 project in assembly. They discover right before submission that the machine used for grading has a faulty call instruction. They decide to rewrite the project without using call. The behavior. of a call can be reproduced with exactly two other instructions. (3 points) On a correct 64-bit machine, which register(s) does call 1169 update? Explain how the register value(s) change. (4 points) Which instructions would they use to replace the faulty call? Provide just the names of the instructions in the order they are used. Problem 4: Cache (22 points) You are designing a cache for an 8-bit machine that has a byte-addressable memory. Remember that an 8-bit machine means that the length of a memory address is 8 bits. The cache line size is 2 bytes. As a first attempt, you design a 4-way set associative cache with 2 sets and a random replacement policy. A random replacement policy chooses a line to replace at random within the set. To reduce memory traffic, you design it to be a write-back cache. Assuming that the machine runs only one program, which will generate the following memory access sequence. Access Address 1 2 3 4 5 6 7 8 9 (6 points) How many bits do you need for the tag, the set index, and the cache line offset? (3 points) How many overhead bits does this cache have? Recall that overhead includes the tag bits, the dirty bits (if needed), and the replacement bits (if needed). Show you work to earn full credit. (3 points) Assuming the cache is initially empty. How many cache misses will the program generate when it’s run for the first time? (3 points) How many cache misses will the program generate when it’s run for the second time? (4 points) Looking carefully at the access pattern, you realize that it is possible to design a cache with a smaller overhead that achieves a 100% hit rate for the program after the initial run. Without changing the cache line size, explain the new design of your cache, i.e., its associativity and the number of sets. (3 points) What is the overhead of your new cache design? Problem 5: Virtual Memory (30 points + 3 points extra credit) You are building a machine with virtual memory support. The virtual address space is 256 KB (2^18 bytes). The physical memory size is 32KB. The system uses a one-level page table. Part a) Basic organization (13 points + 3 points extra credit) (4 points) Assume the page size is 1KB. How many bits are used for the physical page number (PPN), and how many for the virtual page number (VPN)? (3 points) What is the size of one PTE, assuming that the only overhead in the PTE is one valid bit and that the disk address is 2 bits longer than the PPN. (3 points) You decide to experiment with changing the page size to 4KB. What is the size of one PTE now? Continue to assume that the only overhead in the PTE is one valid bit and that the disk address is 2 bits longer than the PPN. (3 points) The system has a TLB. What is likely to happen to the TLB hit rate when we increase the page size to 4KB? Will it increase or decrease? Explain your answer to receive ANY credit. (3 points extra credit) If the machine were to use a two-level page table with a 4KB page size, how many PTE entries are there in the level 1 page table? Part b) Protection (8 points) The major customer for your system is the US Government. They want a secure system that is safer from buffer overflow attacks. The memory protection system should help protect against arbitrary code execution in the event that someone manages to exploit a buffer overflow. (4 points) Briefly explain the mechanism by which an attacker exploits a buffer overflow. Your answer must cover 1) where in memory the attacker can place the code and 2) how the injected code can be executed. (4 points) Now you want to augment the PTE structure with permission information to defend against buffer overflow attacks. In order to keep the overhead low, you decide that you will use a maximum of 2 permission bits, which will indicate whether a page can be written to, whether a page can be read from, and whether a page’s contents can be executed as code. Assuming defending buffer overflow attacks is your sole goal in this design process, how will you use the 2 permission bits? Explain the semantics of each bit to receive full credit. Part c) Performance (9 points) Management decided to go with the 1KB page size for this machine and removed the TLB to cut costs. Consider the C code below. Assume: 1. A 1-level page table translation scheme with the page table starting empty, and 2. arr is aligned such that it starts 8 bytes before a page boundary. void func () { int arr [2048]; for (int i = 0; i < 8; i++) { if (rand_0_1 () == 1) { printf ("%d ", arr [ (i
GEOM30009: Imaging the Environment 1. Image interpretation and electromagnetic radiation: What are the spectral reflectance curves (4 points)? and how are they useful for identifying different features in multispectral images? Explain your answer by an example (6 points). 2. Human vision and image formation: What are the different aspects of image resolution (2 points)? Provide a proper definition of the different aspects of image resolution (8 points). 3. Imaging sensors: Most very high resolution satellite sensors capture images in one panchromatic band and several spectral bands. Provide a comparison of a panchromatic image and a spectral image in terms of spatial resolution (5 points), and spectral resolution (5 points). Explain your answer. 4. Image processing: A satellite sensor has captured an image that is oflow contrast. Suggest an image processing method that can be applied to improve the image contrast (4 points). Explain in detail how this method works (6 points). Draw a diagram if it helps your explanation. 5. Information extraction: A common image segmentation method is Region growing. a) Describe the region growing algorithm for image segmentation (4 points). b) Give an example of homogeneity criteria that can be used in region growing (2 points). c) Explain the over-segmentation and under-segmentation errors that might occur during segmentation (4 points). 6. Image classification: The table below shows a confusion matrix resulting from a supervised classification. Calculate the following: a) Omission error for each class. (3 points) b) Commission error for each class. (3 points) c) Overall classification accuracy. (4 points) 7. Image rectification: A simple method for image rectification is resampling by interpolation. a) Describe the resampling by interpolation method (4 points). b) What are the common interpolation methods used in resampling (3 points)? c) Which interpolation method produces better results and why (3 points)? 8. Orthorectification: Suppose you are asked to produce an orthophoto from an aerial image taken by a camera with the following specifications: - Focal length: 150 mm - Frame. dimension: 200 x 200 mm The following requirements are given for the orthophoto: - Orthophoto scale: 1:5000 - Maximum tolerable radial error: 0.5 mm You must choose between three DTMs with the following specifications: - An SRTM global elevation model with a height accuracy of 16 m. This DTM is freely available. - A photogrammetric DTM generated from aerial images with a height accuracy of 2 m. The cost of acquiring this DTM is moderate - Lidar DTM generated from aerial lidar data with a height accuracy of 0.2 m. The cost of this acquiring this DTM is high. Which of the above DTMs will you choose to generate an orthophoto that meets the user requirements and why? (10 points) 9. 2D measurement in images: Suppose you are given the task of generating a 2D map of building boundaries from an aerial image captured over an urban area. a) What process should be applied to the image before it can be used for mapping (2 points)? b) What other source of data in addition to the image would you need to apply the process (2 point)? c) What is the specific problem caused by occlusion in this process? (3 points) d) How can this problem be overcome? (3 points) 10. 3D measurements: Lidar is a widely used technology for direct acquisition of 3D elevation data. Describe the components of an airborne lidar system (4 points), and explain the type of measurements each component can record (6 points).
INF2191 A2: Interaction Design In this assignment, you will begin your individual UI design project, plan the user experience, interaction, and structural user interface design, and prepare to evaluate your work in A3. I. Requirements, scenarios, & tasks Project brief Pick one of the provided project briefs and paste it into your Figma starter file You may change the project brief as you see fit, provided the brief remains logically consistent Please highlight any changes or adjustments you've made Scenario What story / to-be scenario will be a convincing and empathetic demonstration of your design's key benefits? Characters: create a mini proto-persona for each user in the scenario with relevant quotes / details Mini: Name, photo, 3 quotes / values / pain points, 3 details / facts Proto: based on your assumptions of your target audience, not on user data Plot: what need do they start with, what's hard about it, what do they do, plot twists, where do they end up World: realistic context, conscious of the experience, plausible outcomes, not too happy, not too bleak Task definition Your project will showcase two key tasks your users would need to accomplish within your scenario. For each task: Starting state: Convey the situation at the start of the task and the need / motivation to do it Flow diagram: Design the sequence of 6-10 user actions the user takes and identify the system displays / feedback needed to complete the task, expressed as a task flow diagram. Plot twist: include a slight complication, hiccup, or obstacle to overcome as part of the task. This may require branching, dead ends, or alternate paths. Consider plot twists that differentiate and highlight your design's strengths. Objects: Briefly list the objects your system model / database would be keeping track of, and the major properties each object would have to store. (See W04) II. Screens and design system Sequential storyboard You will express each task as a sequential storyboard in Figma. Screen size & breakpoints Decide on the one reference / default / best form. factor for each task: Mobile (~420 px width x ~800 px height) Tablet portrait (~800 px width x ~1200 px height) Desktop / tablet landscape (~1200 px width x ~800 px height) Make one screen in your design (from either task) responsive: Make sure it's a busy / complicated one (e.g., home screen, dashboard, etc.) Copy it to the "Responsive design" section Apply three screen size modes to that screen frame so a designer can switch between them: Mobile (~420 px width x ~800 px height) Tablet portrait (~800 px width x ~1200 px height) Desktop / tablet landscape (~1200 px width x ~800 px height) Check that the screen frame. reflows correctly at each breakpoint. No need to prototype every screen at every level Storyboard Expect each task to include the 6-10 screens / steps from its task flow Give each screen a unique number, title (matching frame name), and a short caption Visually indicate and annotate the actions a user takes to advance between screens Standards & fidelity (A2) Accurate semantics: navigation, UI labels, and icon meaning Realistic content: clear, accurate, varied length to test your layout Accurate text size and typography scale Accurate screen and element size Consistent spacings Accessible colours, graphics, touch sizes, and text Aesthetic colours, typefaces, or images NOT required for A2 Design system Add Components as necessary to support efficient screen design and document briefly Determine layout approach, grids, and spacing (use Variables) and document briefly Text hierarchy and type scale (use Variables and Styles) and document briefly Define foreground and background colours (use Variables) and document briefly III. Prototype, testing, iteration Structural prototype Your sequential storyboard should be runnable as an interactive prototype: Navigate each task from start to finish Overlays & scrolling where needed Include local interactions (e.g., switch toggles, checkout totals, etc.) if appropriate Content updates accurately from screen to screen and in-place if necessary No extra screens for state changes that could be done in-place Usability testing plan Briefly describe how you plan to evaluate your interface before you submit A3 in April. You don't have to report on any evaluation results in A2, just the plan. Include the following in your evaluation plan: Participants / inclusion criteria: usability testing should involve potential users as participants. Avoid usability testing with UXD students Intro / ethics Submit script. for quick verbal informed consent Submit script. for brief introduction you will give each participant 5-second test? Unscripted observation + think-aloud? Scripted usability test? Submit the task prompt you will give each participant in a scripted test Submit your expectations / baseline criteria for success (e.g., completion time) Follow-up questions? Submit interview questions What to submit Work in one Figma file called "INF2191 Design Project [First name] [Last name]" with the following pages in this order: ● Requirements & Tasks: design brief, scenarios, user / task flow, any ideation work ● A2 Screens (Wireframe): containing your sequential storyboard from A2 ● Components: create and document components, component sets, and variants ● Design System: document layout, colour, type ● Evaluation: contains usability testing plan only: script, target audience, etc. Submit the following: ● Make a COPY of your Design Project Figma file & rename it to "INF2191 A2 [First name][Last name]". ● Set this file's permissions to "Anyone with the link can Edit" (!) ● Submit a PDF export of every page in the Figma file. ● DO NOT CHANGE THIS FILE ONCE SUBMITTED. You may keep working in the Design Project file. Design Brief #1: Pitch In - Organize events together Overview PitchIn is a platform. for close-knit communities to plan, organize, and manage events with transparency and decentralized authority. The platform helps users manage tasks, track resources, assign responsibilities, and ensures that everyone has a clear and equitable role in the process, fostering a sense of ownership and shared purpose. Differentiation Large events typically use a hierarchical organization structure for task assignment with rigidly defined roles and responsibilities often assigned to paid event planning staff. In contrast, events too small to need hired professionals, but large enough to require planning, typically pressure a few members of the community to assume the burden of organizing, problem-solving, and managing the efforts and opinions of the others without the required authority or support. PitchIn is an online platform. that helps small communities with no presumed leaders plan events by spreading responsibilities and accountability among all participants. Whether it's assigning roles, contributing ideas, managing supplies, or planning the schedule, every member can flexibly and equitably contribute opinions, decisions, initiative, and effort to the best of their capacities. This decentralized approach ensures that all participants feel invested in the success of the event, and that the work of organizing it is distributed fairly. Audience Primary audience: Members of a small, established collaborative community of 10-50 people such as an amateur sports team, performance troupe, or professional society who would like to self-organize an occasion such as a retreat, a hackathon, a celebratory meal, or travel for a competition while distributing costs, responsibility, and power among community members. Secondary audiences: Families or friend groups of 5-20 people with strong social ties organizing slightly smaller occasions such as a family reunion, vacation, holiday meal, celebration, or camping trip. Sample tasks Initiate Find enthusiasm, ideate options, decide, commit Plan Find venue, decide schedule, track to-do items and deadlines. Define, volunteer for, and complete tasks, track resources, update status, report issues. Publicize final plan. Attend Guide attendees, respond to questions, troubleshoot emerging issues. Conclude Clean up venue, reconcile spending, return equipment, etc. Pain points / opportunities ● How do we share responsibility without something falling through the cracks? ● I hate telling people what to do, but I can't do it all myself! ● I'm so glad I get to do this with everyone; let's make it amazing! ● Did we get everyone's preferences for dinner? ● I brought my 900$ karaoke machine, and I'm not sure who's got it. ● Who's been pulling their weight, and who's been coasting along? Design Brief #2: OurJourneyMan Overview OurJourneyMan is a platform. that connects clients with artisans to commission them for expensive custom projects. Clients can negotiate fairly, follow the process transparently, and learn about the artisan's craft. Differentiation Buyers on typical handmade platforms have no connection to the sellers, choosing items based on price, description, and turnaround time, so sellers compete for business with easy, inexpensive, ready-to-ship items. In contrast, OurJourneyMan is for clients ready to invest in the quality and meaning of a timeless object (e.g., an heirloom cabinet, a sculpture, a suit of armour, a piece of jewellery) or creative work (e.g., a symphony). Artisans can showcase advanced skills, earn a stable income, and share their progress, skill, and passion for the craft. OurJourneyMan cultivates mutual trust: cost, timelines, and progress are transparent, negotiations are equitable, decisions are collaborative, and the object is made more significant by the detailed story of its creation. Audience Primary clients are people with a stable income or the resources set aside to commission a meaningful, high-quality, expertly crafted object. Both the object and the artistry of making it have personal significance to them, so even though they are unable to execute the project themselves, they want to support an artisan in making it authentically, and they want the story of its making to accompany it. Primary artisans are established professionals who earn their living from their craft full-time. They are capable of exemplary creativity and artistry, but they often have to compromise on the quality or difficulty of their work to attract clients. In a world indifferent to their skills, they seek clients who value them, and the chance to create without compromising on quality. Secondary clients include people commissioning the artisan to teach them the craft rather than make an object, architects or decorators who commission pieces on behalf of their own clients,and people who want to experience the object's story alongside the client (e.g., visitors to the client's home, recipients of the object as a gift, the client's own customers). Secondary artisans include artisans with specialized skills helping an artisan complete a project (e.g., a blacksmith forging arrow tips for a bowyer), and artisans doing commissions while in training. Sample tasks Initiate Browse artisans, pitch object, establish specifics, negotiate fees and timelines Create Document process, share updates, respond, propose changes, notify of delays or overruns Conclude Deliver project, assess quality, accept or reject, share, bask in the joy of creation Pain points / opportunities ● I don't mind paying a premium, as long as I can see where the money is going. ● People always get sticker shock when they see my rates. I have to eat, too! ● My grandfather used to make canoes, but he passed away before he could teach me. ● I want to make sure "Bob the Blacksmith" is not a front for underpaid labourers or a factory ● Sharing this process with someone who cares has been amazing! ● Oh no! This is going to take longer than I thought, and cost more. How do I tell the client? ● I want to pitch a change that will make this better … Design Brief #3: GeoSpark Overview GeoSpark is a location-aware platform. that displays short pieces of content called sparks when a user is within a certain radius of a specific location (geofencing). It lets users take location-based notes, set location-based reminders, or browse sparks left by other users to, e.g., point out points of interest in a new city, leave a note for a friend, or participate in an alternate reality game. Sparks may also be used by civic officials to issue warnings. Sparks degrade over time, but are strengthened by positive user interactions as a form of decentralized validation. Differentiation Typical mapping applications use location tagging for persistent, official, centralized content: objects are stable and verified, visitor opinion is confined to ratings and reviews, and users have limited ability to collect, annotate, or share points of interest. In contrast, GeoSpark enables organic, decentralized, informal, intangible tagging so users can leave themselves or each other location-triggered notes, alerts, tips, and opinions. In addition, spark persistence, radius, and visibility are customizable by their creators, while users in the world can set which sparks they would like to see, and which they would like to interrupt / notify them if they get close. Notably, GeoSpark has no centralized authority, recommendation algorithm, or verification tools, relying instead on a decentralized system of peer moderation, privacy settings, and community reputation (akin to Reddit's karma) that affects how many sparks a user can post, for how long, and for whom. These tools are intended to limit the reach of malicious users. Audience Primary audience: GeoSpark has a general capability that appeals to a range of possible primary audiences. Users may use GeoSpark on their own to persistently annotate their everyday environment, or to set timely reminders to complete nearby errands. They may use it to solicit recommendations (from their past selves, friends, broader social communities, or complete strangers) for exploring a city they are visiting or their own. They may view sparks ahead of a planned outing, browse nearby ones while in an adventurous mood, or have a local spark pushed to them as a notification. Leaving a spark may have an informational, affective, or playful purpose, and its author may want it to be one-time-use, short-lived or long-lived, private, communal, or public. Anti-audience: GeoSpark is explicitly not for advertising, spam, dangerous, deceptive, or offensive content. Sample tasks Manage Review / overview sparks from a given area, group sparks into meaningful units, review expired (past) sparks, Create Drop a spark in a current or recently visited location, set radius, set visibility, set trigger / notification, set expiration condition Consume Extend radius to look for sparks, receive notification, read, react, mute, flag for removal Pain points / opportunities ● I wonder what's fun to do around here. ● Oh, this is an icy road warning. It's July. ● What did my friends like the last time they were in Barcelona? ● Right! I meant to pick up a pipe wrench, and my phone went off near the hardware store. ● Free sponsored energy drinks down this alley? No thanks; muted and reported.
Decision Making Lab1 Laboratory work №1 Topic: Learning the models of decision selection under conditions of certainty Goal of the work: - study the possibilities of applying models of decision selection in conditions of certainty; - learn how to perform. a graphic presentation of a decision-making task; - learn how to search for solutions using the language of binary relations. The order of work 1. Study theoretical information about the decision-making under conditions of certainty. To study the essence and features of decision-making models. 2. Choose a problem area for decision-making. Perform. a verbal formulation of the decision-making task in the selected problem area and identify 6 alternatives, evaluating them according to 5 criteria. 3. Create income matrices in MS Excel. Give a graphic representation of your problem. 4. Based on various choice models, search for solutions using the language of binary relations and constructed graphs. Compare the obtained solutions. Explain the results. Demonstrate the process of finding solutions to the teacher. 5. Make a report on laboratory work. 6. Defend laboratory work. Content of the report 1. Topic of the work. 2. Goal of the work. 3. Individual task. 4. Description of the work execution. 5. Interpretation of the obtained results. 6. Conclusions. Individual tasks Select the problem area according to the ID in the group list. Search for solutions for the given problem area (Table 1). Table 1 ID Problem area 1 Personnel of the enterprise 2 Enterprise equipment 3 Service provider 4 Job 5 Home appliances 6 Housing rent 7 Banking sphere 8 Computers 9 Buying food 10 Public transport 11 A place for relax 12 Vehicles 13 Clothing 14 Furniture BRIEF THEORETICAL INFORMATION 1. Binary relations An important assumption in the language of binary relations is that the preference of two alternatives is independent of any third. Binary relations can be established on multiple alternatives and multiple criteria. In both cases, for each pair of compared objects xi, xj ∈ X in a certain way it is possible to establish that one of them is better than the other or that they are equal or incomparable. In general, to specify a binary relation R on a set X, it is necessary to specify in one way or another all pairs (xi, xj) of the set X for which the relation R is fulfilled. There are four ways to specify relationships: 1) a direct list of pairs, 2) matrix, 3) graph, 4) intersection. Consider an example of relationships in a student group consisting of three people. On the set X = (x1, x2, x3) of students, let's put the ratio R – "study better". Let the ratio R be given in the first way as follows: : x1 R x2 ; x1 R x3. Then you can make a matrix A of relations R, consisting of zeros and ones, in which The relationship graph, in which the arrows are directed towards the student with a smaller advantage, is shown in fig. 1. Fugure 1 − A graphical method of specifying relations The intersections are given for each element of the set X. The upper intersection is R+(x) and the lower one is R−(x). The upper intersection of x is the set of elements from X that exceed x. The lower intersection for x is the set of elements of X that are less dominant for x. In the given example, the relations R are not specified on the entire set X. If not all elements can be compared with respect to the relation R, then it is called incomplete (imperfect, nonlinear, partial). Equivalence relations, strict order and non-strict order can be established on the entire set of objects X. The relation of equivalence is meaningfully interpreted as interchangeability, sameness of objects. The concepts of equivalence, equivalence and incomparability are often equated. The relation of equivalence gives rise to the division of a set of objects into classes that unite objects that cannot be distinguished by one or a group of criteria. In the given example, x2 and x3 are equivalent: x2 ~ x3. The relation of strict order can be interpreted as the superiority of one object compared to another, for example, "better", "more important", "older", etc. In the given example, x1 studies better than x2 and x3 , x1 x2 and x1 x3. A strict order relation gives rise to a strict ordering by preference. If we added, for example, the relationship x3 x2, we would get a strict order x1 x2 x3. P. Fishburn proved the theorem that in the case of a strict ordering of objects by preference, it is possible to construct a utility function U(x) such that for xi xj ⇒U(xi) > U(xj). The definition of the function U(x) allows us to move from the language of binary relations to the criterion language, taking U(x) as a criterion function. A relation of non-strict order is a combination of relations of strict order and equivalence, it is interpreted as superiority or equivalence of xi ≥ xj objects (xi is not worse than xj). The relation of complete non-strict ordering gives rise to a strict ordering of equivalence classes of objects. If we add the relation x2≥ x3, and x3 ≥ x2, then we get the order x1 (x2 ∼x3). An alternative in a decision-making problem can be represented by a description in the criterion space. Through the criterion space, binary relations can be established on a set of alternatives. We denote: x = (x1, x2, x3) – vector of alternative х scores; y = (y1, y2, y3) – vector of alternative y scores. Let's introduce the relations of strict superiority (Pareto relation), equality and inequality for equivalent criteria on the alternatives x and y. 2. Decision making models under conditions of certainty When making decisions, one of the main issues is the issue of choice. The choice of decision is made taking into account the choice model. Let A be a given set. R is an arbitrary binary relation A, i.e. system of a decision maker benefits. Then the pair is called a model of choice. Three main formal models of choice can be: - choose the best; - choose the maximum; - choose the optimal one. 2.1 Model for selecting the best element Let the given model is . Element аº ∈ А is the best by R in А, if (аº,а) ∈ R given that а ∈ Ааº. The concept of the best element is shown in fig. 2. In fig. 2(a), the best elements are а1 and а2 and you can make a conclusion, that element а3 is not the best. In fig. 2(a), there is no essential elements. With graphs, the concept of the best element indicates the existence of a vertex connected by arrows that go from it to all other vertices of the graph. In this case there may be some other additional connections. Figure 2 – Concept of the best element 2.2 Model for selecting the maximum element Let the given model is . Element ао ∈ А is maximum by R in А, if а є А: (а,ао) ∈ R à (ао,а) є R. The set of all maximum elements let’s denote as МахR А. The relationship graph with the maximum elements, should have the vertices, in which for each incoming arrow from a vertex (as such), exists the “compensating” outcoming arrow, which goes to the same vertex. For example, maximum elements by R are а1, а2 (fig. 2, (а)) and а2, а3 (fig. 2, (b)). The best element by R in А is also maximum. The reverse is correct only if the relationship R has the feature of weak connected graph: а1, а2 : (а1 ≠ а2) à ((а1, а2)) ∈ R) / ((а2, а1) ∈ R) . 2.3 Model for selecting the optimal element An element ао ∈ А is R-optimal by А, if а ∈ А, а ≠ ао à (ао,а) ∈ R. The optimal vertex does not have any incoming arrow. In fig. 2(а) R-optimal elements are absent, in fig. 2(б) а3 is the R-optimal element. For a problem of decision making, the definition of external stability is important: A set МахR А is externally stable if for any element а ∈ А МахR А exists such one ао ∈ МахR А, for which is fair (ао,а) ∈ R. If the set МахR А is externally stable, then the next selection of the optimal element (based on, for example, the involvement of additional information) can be carried out only within the set of МахR А. Otherwise, when there is no stability, such a conclusion will no longer have a reasonable justification. The externally stable set МахR А is the core of relation R in А. Sometimes the term "kernel" of the set МахR А is used without the requirement of external stability. In the fig. 2(а) and 2(б) the sets МахR А are externally stable. In the fig. 3 you can see the set МахR А = {a1, a2}, which is not externally stable. Thus, the problem of making a decision, formulated in the language of binary relations, is understood as the problem of extracting a kernel, that is, the set of maximal elements from A according to some binary relation R: А * = МахR А. Figure 3 – No external stability The following special types of binary relations are important from a practical point of view: o quasi-order (R is reflexive and transitive); o strict order (R is anti-reflexive and transitive); o equivalence (R is reflexive, symmetric and transitive). 3. An example of work execution Is given: - a set of alternatives "laptop" - Toshiba Satellite A660- 10X, HP Pavilion dv7-1253ca, Asus G73JHTY031; - criteria for evaluating alternatives: the number of processor cores, weight, screen diagonal, hard disk capacity, cost. Using the language of binary relations, determine the most acceptable alternative according to the models of choosing the best, maximum, optimal elements. The main characteristics of the "laptop" system of the given alternatives are presented in Table 2. Table 2 – Parameters of alternatives according to the given criteria АAlternative СC Toshiba Satellite A660- 10X HP Pavilion dv7-1253ca Asus G73JHTY031 1 The number of CPU cores 4 4 4 2 Weight, Kg 2,62 3,52 3,85 3 Screen diagonal 16 17 17,3 4 HDD capacity, Gb 640 500 2 х 320 5 Cost 1100 1200 1700 Let's set the matrices of the advantages for alternatives and perform. a graphical presentation of the advantages of alternatives according to the given criteria: Let’s analyze the obtained data and build Table 3 with the results of selection according to various models of choice applied. riteriaBestMaximumOptimal
Computer Science Department Final Exam CSC 252 Computer Organization 4 May 2022 Problem 0: Warm-up (3 Points) Do you think 252 could be taught in high school? Problem 1: Miscellaneous (12 points) Part a) (3 points) Write down the sum of 328 and 0x32 in base 2. Part b) (3 points) Generally, the access time of a direct-mapped cache is ___ than that of a fully associative cache that is the same total size. Answer with , =, =. Part c) (3 points) (True or False) Virtual memory has no size limitation. Part d) (3 points) Consider the following C struct Person: struct Person{ long id; float age; float weight; float height; char name [20]; char sex [7]; struct Person * nextPerson; }; What’s the size of the struct Person? Problem 2: ISA (18 points) A stack-based ISA is designed. The ISA uses a hardware stack, and instructions in this ISA manipulate this stack. Each entry on the stack is one byte long, and the memory is byte-addressable. All instructions are 8-bit long, and are classified into two categories. R Category Binary encoding: OpCode 00000 Instruction list: Instruction OpCode Role 001 Remove the item at the top of the stack. 001 Halt the processor. I Category Binary encoding: OpCode Immediate value in 2’s component Instruction list: Instruction OpCode Role 000 Push sign-extended immediate value on the stack. 101 Let the top entry of the stack be A. Compute = A + sign-extended immediate value; Pop A from the stack; Use to load a byte from the main memory and push the byte on the stack. 100 Let the top entry of the stack be A, and the second entry of the stack be B. Compute = A + sign-extended immediate value; Pop A from the stack; Store B at the memory location loaddAddressAddress111011111000020000110111113110101110101400001101110051101111100116111101110010711011111000080000110111019111101110100
ACF5130 Financial statement analysis and business valuation Seminar 12: Special Topics in Valuation Valuing Financial Institutions Importance of Financial Institutions • Backbone of the global economy • Intermediaries in financial markets facilitating everything from daily transactions to long-term financing for growth projects • Economic impact • Play a critical role in mobilising savings, allocating capital, maintaining liquidity, and stabilising the financial system. • Integral to the implementation of monetary policy, influencing interest rates and credit availability. • Regulatory Focus • Subject to stringent regulatory oversight to ensure stability and protect depositors • Individual Project Forum and weekly forums Data: Morningstar DatAnalysis Premium Unique Characteristics of Financial Institutions • Regulatory Environment: Heavily regulated, impacts operational and business decisions. • Capital Structure: High leverage, primarily funded through customer deposits • Is debt a source of capital or something like “raw materials” • Asset Composition: Major assets are loans and securities, which carry different risk profiles and liquidity characteristics compared to other sectors. • Income Structure: Interest-based revenue from loans, fees from services, which are influenced by economic cycles and interest rate changes. Valuation Challenges • Operating vs. Investing Cash Flows: Difficulty in distinguishing cash flows related to core banking operations from those generated through investment and financing activities • Difficult to estimate Free Cash Flows • Difficult to measure capital expenditure • Significant expenditure in intangible assets • Expensed in the financial statements • Highly volatile working capital • Regulation • Assumptions about growth are linked to assumptions about reinvestment • These assumptions must pass regulatory scrutiny • Additional risk owing to (changing) regulatory restrictions Valuation Techniques for Financial Institutions • DCF Valuation Approaches: • Dividend Discount Model (DDM): Suitable for banks as they typically pay regular dividends. Focuses on the present value of projected dividends. • Relative Valuation: • Price to Earnings (P/E) Ratio: Comparing market value per share to earnings per share. Useful for comparing banks in stable economic conditions. • Price to Book (P/B) Ratio: Reflects the net asset value per share, frequently used due to its relevance in reflecting the liquidation value.
GEOM 30009: Imaging the Environment 1. Image interpretation and electromagnetic radiation: The diagram below shows the spectral reflectance of three tree species in visible and near infrared wavelengths. Explain how these curves can be used to identify the three tree species in multispectral images? (10 points) 2. Human vision and image formation: Image resolution is a characteristic that defines the ability to resolve different objects or phenomena in an image. Explain the four types of resolution that characterize an imaging system. (10 points) 3. Imaging sensors: Different imaging sensors are suitable for different tasks and applications. Name four criteria that should be taken into account when selecting a suitable imaging sensor for a given task, and explain each of the criteria. (10 points) 4. Image processing: A useful image processing technique applied to multi-spectral images is pan sharpening. Explain the purpose of pan sharpening (5 points), and describe the steps involved in the process (5 points). 5. Information extraction: Image segmentation is a process that enables image analysis on object level. Describe the two types of segmentation errors that usually occur in a segmented image (10 points). 6. Image classification: The accuracy of image classification is often evaluated by constructing a confusion matrix. What do the diagonal elements ofa confusion matrix represent? (5 points) What do the off-diagonal elements represent? (5 points) 7. Image rectification: The image rectification process consists ofa transformation and a resampling step. Describe the steps involved in resampling (inverse mapping) by interpolation. (10 points) 8. Orthorectification: What is relief displacement? (4 points) Describe a simple orthorectification process to correct for relief displacement. (6 points) 9. 2D measurement in images: Which of the following processes should be applied to an image before it can be used for making reliable 2D measurements? Explain your answer. (10 points) Band ratios Orthorectification Image segmentation No processing is needed. 10. 3D measurement in images: A simple method for stereoscopic viewing is by using anaglyphic display and glasses. Describe the anaglyphic stereoscopic viewing and discuss its pros and cons. (10 points)
INF2191 A3: User Interface Design In this assignment, you will continue your individual UI design project, explain the results of your iteration, and produce high-fidelity mockups, storyboards, and prototypes. I. Evaluate & iterate Usability test Conduct a usability test using your A2 script. with at least 4 participants Include the usability test script. you ran (updated from A2) and summarize your testing data on the Evaluation page of your A3 Figma file. Design critique Receive design critique from at least 2 peer designers (in INF2191H) Do it during our W12 studio to avoid having to organize it yourself Include the critiques you received on the Evaluation page of your A3 Figma file. Iteration report Identify 3-5 issues with clarity, usability, or utility from your usability evaluation that require notable changes to your project's interactions or structure for A3 Adding creative does *not* count as a major change For each major change, show and justify the change: Show the A2 (before) version Show the evidence for the issue (e.g., design critiques, usability test data, best practices) Show the A3 (after) version Include the issues and changes on the Evaluation page of your A3 Figma file. II. Creative strategy On the Creative Strategy page in Figma: Research and compile a mood board of visual references. This must include both the visual culture of your audience, and the competitive climate for your app State your overall creative strategy in a list of keywords that consider the audience, competitors, tone, vibe, and voice of your product direction Show your final strategy as a style. tile that demonstrates the content, colour palette, images, typefaces, and visual styling for your product Briefly document alternatives you considered and justify how each of these choices supports your creative strategy III. Final Design and Prototype Design system updates (A3) Define all colours as Variables with useful names and document briefly Detail your choice of typefaces, their relevance to your creative strategy, and document briefly Document all icons and images, and cite sources Update all colour, text, and layout design specification / documentation Storyboard Update screens with changes from your iteration and update storyboard annotations to match Apply your creative strategy to your sequential storyboard to produce high-fidelity UI mockups Prototype Ensure your prototype is up to date from your iteration and runs from your high-fidelity storyboard Standards from A2 still apply: Navigate each task from start to finish Overlays & scrolling where needed Include local interactions (e.g., switch toggles, checkout totals, etc.) if appropriate Content updates accurately from screen to screen and in-place if necessary No extra screens for state changes that could be done in-place Standards & fidelity (A3) Mockup (high fidelity) standards including accurate brand and creative colours, images, etc. Standards from A2 still apply: Accurate semantics: navigation, UI labels, and icon meaning Realistic content: clear, accurate, varied length to test your layout Accurate text size and typography scale Accurate screen and element size, consistent spacings Accessible colours, graphics, touch sizes, and text What to submit Keep working in your "INF2191 Design Project [First name] [Last name]" Figma file with the following pages in an updated order: ● [NEW] A3 Storyboard (Mockup): New page for your final mockups in A3 ● Components: Update from A2 ● Design System: Update from A2, include creative strategy documentation ● [NEW] Creative Strategy: Document your creative strategy ● Evaluation: Updated usability test script, summary of tests & design critique, comparison of A2 and A3 design by issue ● A2 Storyboard (Wireframe): Keep these from A2, no changes needed ● Requirements & Tasks: Update from A2 Submit the following: ● Submit a link to your "INF2191 Design Project [First name] [Last name]" Figma file ● Set this file's permissions to "Anyone with the link can Edit" (!) ● Submit a PDF export of every page in the Figma file.
Computer Science Department Final Exam CSC 252 Computer Organization 1 May 2023 Problem 0: Warm-up (3 Points) Are you grateful that 252 is not an elective? Problem 1: Miscellaneous (17 points) (3 points) Write 0xFACE in binary. (3 points) The fork () system call spawns a new thread in the parent process; True or False? (3 points) malloc () allocates physical memory in DRAM; True or False? (4 points) List two advantages of using virtual memory over physical memory. (4 points) What can happen if multiple threads access resources held by multiple locks? Problem 2: Floating-Point Arithmetics (20 points) Part a) (6 points) Basic Arithmetics (3 points) Write the result of 6+(16/64) in the normalized binary form. (3 points) Compute 1.1 × 2-2 × 1.001 × 24. Write the result in the normalized binary form. Show your work to earn partial credit. Part b) (6 points) True or False questions. (3 points) The IEEE 754 single precision floating point representation can be used to precisely represent all rational numbers between 0 and 1. (3 points) The IEEE 754 double precision floating point representation can be used to precisely represent all real numbers between 0 and 1. Part c) (4 points) Consider the following C code. int x = 0x8f7; int* pi = &x; float* pf = (float*) pi; Assume data is stored in little-endian format and int variables are 4 bytes aligned. Now we dereference pf and print its value, what will we get? (a) It will give a N an (b) It will give a floating point number equal to the integer 0x8f7 (c) It will give a subnormal number (d) There is a syntax error because we cannot cast an int pointer to a float pointer Part d) (4 points) In most programming languages when we want to calculate 0.3 × 3.0, we won’t get 9.0; instead we might get something like 0.89999999999999991. What is the most likely cause of this? Problem 3: Assembly Programming (24 points) Conventions: 1. For this section, the assembly shown uses the AT&T/GAS syntax opcode src, dst for instructions with two arguments where src is the source argument and dst is the destination argument. For example, this means that mov a, b moves the value a into b and cmp a, b thenjge c would compare b to a then jump to c if b ≥ a. 2. All C code is compiled on a 64-bit machine, where arrays grow toward higher addresses. 3. We use the x86 calling convention. That is, for functions that take two arguments, the first argument is stored in %edi (%rdi) and the second is stored in %esi (%rsi) at the time the function is called; the return value of a function is stored in %eax (%rax) at the time the function returns. 4. We use the Little Endian byte order when storing multi-byte variables in memory. The declaration of function y () is given below; its function body is intentionally incomplete. The first parameter of the function, arr, is the pointer to an array of 5 elements. y () will iterate over each element in the arr array exactly once and update each element if and only if a condition is met. Consider the following assembly code. Before executing the code, %rdi contains a pointer to an array [17, 7, 10, 8, 15] and %rsi contains the value 10. C code: void y (long* arr, long b){ … } Assembly code: 13 movq %rdi, -24 (%rbp) 14 movq %rsi, -32 (%rbp) 15 movq $0, -8 (%rbp) 16 jmp .L2 17 .L4: 18 movq -8 (%rbp), %rax 19 leaq 0 (,%rax,8), %rdx 20 movq -24 (%rbp), %rax 21 addq %rdx, %rax 22 movq (%rax), %rax 23 movq %rax, -16 (%rbp) 24 movq -16 (%rbp), %rax 25 cmpq -32 (%rbp), %rax 26 jge .L3 27 movq -32 (%rbp), %rax 28 movq %rax, -16 (%rbp) 29 .L3: 30 _A_ $1, -8 (%rbp) 31 .L2: 32 cmpq $_B_, -8 (%rbp) 33 jle .L4 34 ret (4 points) Which line between line 18 and line 30 is responsible for computing the offset of each array element in arr? (3 points) At the first iteration of the loop (hint: that’s when the value stored in -8 (%rbp)is 0) , what is stored in %rax at the end of line 22? (3 points) What kind of programming structure is used in this function? a. Do-while b. While/for c. Switch statement d. None of the above (6 points) Fill in A and B with the proper instruction so that the function behaves as desired. A: B: (4 points) Describe briefly what the condition is when updating each array element. (4 points) What are the updated array values at the end of this function execution? Problem 4: Microarchitecture/ISA (48 points) You are working at Intel and are on the team for designing a new microarchitecture. Your manager gives you components for the standard five-stage pipeline: (F)etch, (D)ecode, (E)xecute, (M)emory and (W)riteback stages, with the same functionality as discussed in the class. The pipelined processor specification you manager give you is as follows: ● (F)etch, (D)ecode, (E)xecute stages take 15 ns ● The (M)emory stage takes 100 ns. ● The (W)riteback stage takes 135 ns ● After each stage there is a pipeline register which has a delay of 15 ns. Part a) (12 points) (3 points) What is the order of the 5 pipeline stages in a typical processor? (3 points) What is the shortest possible clock period for the specification your manager gives you? (3 points) Assuming no stalls or control dependencies of any kind, using the clock frequency you suggested, and that all the stages are occupied with instructions, how many instructions can this processor finish in 750 ns? (3 points) At the end of which stage is the branch target resolved? Part b) (20 points) Now you want to design an ISA for this machine assuming the following: ● 5 bit address space ● Memory is byte addressable ● Addresses are physical addresses (i.e., no virtual memory) ● Each instruction is 1-byte long; instructions can be padded with 0 at the end if needed ● 4 general purpose registers encoded as: Register Binary 00 01 10 11 ● Three opcodes encoded as: Name Opcode Behavior 001 Performs bitwise AND on two operands 010 Conditional jump 011 A no-op instruction (8 points) Encode the following program in binary, assuming the instructions start at an absolute address of 0. 0: cmp r0 r1 1: j if 3 2: nop 3: nop (4 points) How many cycles are expected to be lost when a branch is mispredicted? Write your explanation to earn partial credit. (4 points) Assuming full pipelining, that there are no branch mispredictions, and that all jump instructions are not taken, how many cycles will it take to execute these instructions repeated 10 times? Show your math to earn partial credit. (4 points) Assuming EVERY branch is mispredicted and that all jump instructions are not taken, how many cycles will it take to execute these instructions repeated 10 times? Show your math to earn partial credit. Part c) (16 points) Now you want to optimize the processor microarchitecture. You are told that you can split any of the stages (except the execute stage) into two stages, and each new stage will be half its original delay. These new stages cannot be split further. ANY number of consecutive stages can also be combined together and the delay of a so-combined stage is the sum of the constituting stages. Reminder: ● When you split a stage into two pipeline stages, a new pipeline register must be inserted between the two new stages ● When you combine multiple stages into one stage, the pipeline stages between the constituting stages are no longer needed. (4 points) Suppose you combine the first 4 stages. What is the shortest possible clock period after doing so? Show your math to earn partial credit. (4 points) Assuming no stalls or control dependencies of any kind and all the stages are occupied with instructions, which stage(s) do you need to combine or split so you can maximize the instructions executed per second? Write your explanation to earn partial credit. (8 points) On top of the decisions you made for your last question, which stage(s) should you split or combine if you are also concerned with minimizing the time lost from branch mispredictions? Write your explanation to earn partial credit. Problem 5: Cache (16 points) For all the questions in this problem, assume that we are using a 16-bit machine with a byte-addressable memory and a N-way set-associative LRU cache (for some unknown N). The cache can hold up to 16 cache lines. Each cache line is 32 bytes (256 bits). There are 8 sets in total. (3 points) How many bits do you need for the offset? (3 points) How many bits do you need for the set? (2 points) How many cachelines are there in each set? (8 points) The following sequence of memory accesses generates the hits/misses as shown. Some miss/hit entries are intentionally left blank for you to figure out. The cache is initially empty. Note that addresses are written in binary with spaces added between each 4 bits for readability — these splitting points are not necessarily the tag/index/offset boundaries. Fill in the blanks. # Address Hit/Miss 1 Miss 2 Miss 3 Miss 4 Miss 5 Hit 6 Miss 7 Hit 8 Miss 9 Miss 10 Miss 11 Miss 12 Miss 13 Hit Problem 6: Virtual Memory (12 points + 4 points extra credit) Assume a byte addressable memory with the following characteristics: 1. Size of the virtual memory is 16 MB (1 MB = 220 B) 2. Size of the physical memory is 4 MB 3. Page size is 256 Bytes 4. It uses one-level page table Format of the PTE is shown below: (3 points) How many bits do you need to represent the virtual page number (VPN) (3 points) How many bits do you need to represent the physical page number (PPN) (3 points) How many PTEs can you store in a page? (3 points) How many pages does the page table occupy? (4 points extra credit) Now we add a TLB to the machine above. The TLB has 16 entries and is direct-mapped. Which bits in the virtual address are used to index the TLB?
INFOSYS 110 Digital Systems S1 2021 Exam Fetu'u is a digital platform designed to make it easier for people to get into a career in IT. It provides upskilling, allows people to identify career pathways , and connects mentors to students based on their common interests and career objectives . The platform has been in development for a couple of years and is being readied for release later in 2021. One of its founders , Saia Mataele, says his first focus is to target Maori and Pasifika, because of their historically low participation rates in IT. He wants to increase diversity in the technology sector and believes his platform will be able to help make that happen. How it works Students need to create an online profile and answer several questions about themselves and their goals . These might include what they studied at university, any extracurricular activities they do, what type of skills and jobs they are interested in, and any companies they want to find out more about. Members can edit their online profile at any time, but the real magic happens behind the scenes , where the developers have created systems that can provide tailored content for each individual. These analytics allow Fetu’u’s digital platform to have four main features: 1. Learn Fetu’u will recommend further learning opportunities based on the student’s current experience and future goals . These might include studying at registered academic institutions , as well as nano-degrees and relevant podcasts . 2. Showcase Saia Mataele knows that a huge part of making IT attractive for Maori and Pasifika students is to show them people who have achieved success in the industry and are of Maori and Pasifika heritage. This platform will allow members to hear directly from these people and learn about their journey and what they’ve done in the industry. 3. Mentoring The advanced business analytics will allow Fetu’u to automatically match members with relevant mentors based on their profile data. 4. Pathways It’s hoped that the analytics embedded in the platform. will allow recruiters to quickly and easily find future talent. Future options - not everyone has access to the internet, so they plan to go even wider. One option is a licensing model for school programs where their teachers can get information and resources to help educate students as schools don’t currently teach the skills that this industry requires . 1 Question 1 (16 marks) In order to justify the continued funding and utilisation of Fetu’u instead of any other substitute platforms for the same purpose, Fetu’u must be capable of generating useful information for both the organisation and the students . This can be considered as the competitive advantage of the platform . Using the information from the exam case, suggest: a. one item mentioned that has been historically non-digital, but has now become “digital-first” . Briefly explain your answer. (4 marks) b. one example of a TPS and one example of a DSS that Fetu’u utilises in the process of generating such useful information. (4 marks) c . two examples of data collected by your TPS and two examples of information generated by your DSS. (4 marks) d. using your examples above, how Garbage In, Garbage Out (GIGO) may happen at Fetu’u, what the likely outcome will be, and how such problem may be avoided. (4 marks) Construct your answer using the following template. Copy and Paste it into the answer area and fill in your answers accordingly: a. The "Digital-First" item: Explanation: b. One example of TPS: One example of DSS: c. Data example 1: Data example 2: Information example 1: Information example 2: d. How GIGO may happen: Likely outcome: How it may be avoided: 2 Question 2 (16 marks) The organisational structure of Fetu’u consists of several departments , including Systems Development, Student Liaison, Data Analysis , Accounting & Finance, and Sponsor Liaison. Fetu’u has the option of (a) having a cross-organisation information system running with a centralised database, or (b) to let each department run and maintain its own information system . Based on what you have learnt from INFOSYS110, which option will you recommend to Fetu’u? Explain your recommendation. Suggest two advantages and two disadvantages associated with your recommendation. Construct your answer using the following template. Copy and Paste it into the answer area and fill in your answers accordingly: Your recommendation: Explanation for your recommendation: Advantage 1: Advantage 2: Disadvantage 1: Disadvantage 2: 3 Question 3 (10 marks) Saia knows that he will need to use business analytics to make sense of the data but is unsure of which techniques are available to him . Explain how the two data mining techniques we have studied in class can help Saia to: (a) reduce the need to spend time focusing on each individual member (5 marks), and (b) help to identify which learning content might be relevant to each member. (5 marks) Keep your answer to each part under 100 words . In your answer, include your choice of technique for each purpose, a brief description of the technique, and a short explanation about why this technique is suitable. Construct your answer using the following template. Copy and Paste it into the answer area and fill in your answers accordingly: a. Suitable technique: Brief description: Explanation: b. Suitable technique: Brief description: Explanation: 4 Question 4 (18 marks) Saia has , by using Data Analytics techniques , successfully categorised the Year 1 and Year 2 students into three categories , based on the levels of help that they are likely to require. In the report for the management team at Fetu’u, Saia intends to use the following visualisation to illustrate the differences in the distribution of students for Years 1 & 2. Category 1 being students who are keen, and are in need of intensive support. Category 2 consists of students who are managing well, while Category 3 is for students who are doubtful about a career in IT. Identify three aspects about this visualisation that needs to be addressed and improved. For each aspect, explain why it is a problem , and suggest how it may be addressed and improved. Construct your answer using the following template. Copy and Paste it into the answer area and fill in your answers accordingly: Aspect 1: Explanation: How to improve: Aspect 2: Explanation: How to improve: Aspect 3: Explanation: How to improve: 5 Question 5 (22 marks) Before Saia and his team of three staff can release Fetu’u’s digital platform , some final work is required. If they are going to achieve their goal of a July 2021 release, the following things will need to be done: · Record and edit videos of successful Maori & Pacifica members of the IT industry for the “showcase” section of the platform , · Collate and embed learning opportunities relevant to the Supply Chain Management pathway, . Finalise agreements with recruitments companies so that they can place their logos on the platform . a. Getting the Fetu’u platform ready for release is a project. State four characteristics about this job that qualifies it as a project. Briefly explain how each of the characteristics apply. (8 marks) b. What is the time constraint? (3 marks) c . What is the cost constraint? (3 marks) d. It soon becomes clear that the team of 4 will not be able to complete all of the above activities before July 2021. Suggest one way that Saia can proceed and suggest the likely impact on the "quality” of the project. (8 marks) Construct your answer using the following template. Copy and Paste it into the answer area and fill in your answers accordingly: a. Characteristic 1: Explanation: Characteristic 2: Explanation: Characteristic 3: Explanation: Characteristic 4: Explanation: b. Time constraint: c. Cost constraint: d. Your suggestion: The likely impact on quality: 6 Question 6 (18 marks) Although Fetu’u will provide a positive impact for both its members and the industry as a whole, Saia knows he needs to find a way to fund the platform financially. The data warehouse will store a vast amount of member data which might be useful for employers , universities , and even Government institutions . A large online recruitment firm has approached Fetu’u and offered to fund the data storage costs if they (and all their employees) are allowed full access to all student data. Provide one security and two ethical considerations Saia should consider in storing and selling access to the data to this online recruitment firm . For each consideration, recommend one way that the risk can be mitigated or minimised. Explain and justify your recommendations . Construct your answer using the following template. Copy and Paste it into the answer area and fill in your answers accordingly: Security Consideration: Recommendation for risk management: Explanation and Justification: Ethical Consideration 1: Recommendation for risk management: Explanation and Justification: Ethical Consideration 2: Recommendation for risk management: Explanation and Justification:
Scenario for Assignment 1, Creative Part: Designing for an Australian Fashion Brand Welcome to your new role as designers at a vibrant, vivid and quirky fashion brand, where you are entrusted with an exciting and challenging task. In this scenario, you have just joined the team and will use design software such as Adobe Photoshop, Illustrator, and Express to create designs. Your goal is to use Adobe Creative Suite to come up with creative designs and outcomes that reflect the brand's eclectic style. Scenario Details: The quirky fashion brand "Naturé Eclat" has decided to launch a new collection inspired by the diverse elements found in nature. As part of the design team, your task is to create inspiration boards, CADs with specific design directions and video presentation that embody the essence of brand identity. Role: Your role is a combination of both roles specified below, -Lead Designers (Students): Responsible for developing plus delivering the main design concepts and overseeing the cohesion of the collection using Adobe Photoshop, Illustrator and Express. -Graphic Designers (Students): Focus on translating abstract ideas into visual representations using Adobe Photoshop and Illustrator. Assignment Tasks: Task 1: Inspiration Board Part A: Change the Original image provided (left image) into the Final image (right image). Process: a. Click on the image text to download. b. Straighten and crop the image as shown. c. Remove part of the image as shown (removing twigs from the skirt). d. Change colour of the skirt as shown. e. Change colour of the jumper as shown. f. From File option, Export as a jpeg file format- Save as Part_A along with the regular save option which allows you to save photoshop format. g. Use the modified image as 6th image to include it in the inspiration board as directed below. Part B: These are the images you will be modifying and working on in Photoshop to create the inspiration board as per the instructions below. a. Using and combining all the images (including the modified 6th image) supplied (above) you are required to follow the techniques/ tasks mentioned below, to create an inspiration board (jpg/ jpeg) following the steps mentioned below. (Remember to keep saving) b. Step 1: Blend Image 1 and Image 2 as part of the background - Export as a jpeg/jpg image (name as PartB_1 image) c. Step 2: Continuing from above, add Image 3 and remove background of Image 3 using layer mask tool, play with Blend modes - Export as a jpeg/jpg image (name as PartB_2 image) d. Step 3: Continuing from above, add Image 4 and 6 (named as Part_A) by removing the background of Image 4 and 6 using layer mask tool, play with Blend modes - Export as a jpeg/jpg image PartB_3 e. Step 4: Continuing from above, create a shape and apply Image 5 to that shape as a clipping mask - Export as a jpeg/jpg image (name as PartB_4 image) f. Step 5: Continuing from above, add text - " Naturé Eclat, Your name ". Make text legible by making it big and bold. Play around with different fonts. Export as a jpeg/jpg image (name as PartB_5 image) g. Note: For each step, keep saving as Photoshop file and export each step as a separate jpeg/ jpg image. To export as jpeg/ jpg image - File> Export as a JPG image format Once completed, please export as a jpeg file format- Save as Task_1_Inspiration_Board_your name (Photoshop format) along with the regular save option which allows you to save photoshop format. Task 2: Original and Manipulated CADs Part C: Creating a fashion CAD sketch from an image. a. Download this Image below: b. Create a New Document (Pre-set: Print/ A4/ Vertical format) c. Place the image provided. d. Using this photo as the base, create a fashion CAD sketch in Illustrator. e. Colour the dress closest to the Blue from the image. Alternatively, you can also play around denim fabric to fill it as a swatch (make sure all sections are closed paths to fill the colour or swatch perfectly). f. Use dashed lines (alter the gap if required) to create the stitch lines matching to the image. g. Save as an Illustrator (ai.) file as Part_C. Export the file as JPEG/PNG and name it Part_C. Part D: Manipulating given CADs a. Download these two Illustrator (ai) files on your device Part D.1 a. Go to File > Open, and open the .ai CAD files in Illustrator. b. Create a New Document (Preset: Print/ A4/ Vertical format). c. Copy the file into the New document. d. Manipulate the CAD and modify/ change the CAD to break the dress into a top and skirt. e. Create two new CADs from D.1. -Split the dress into a CAD-top and CAD-skirt f. Create the back of both top and skirt. g. Add colour to the front and back CADs created using colours from the inspiration board. h. Convert to Pantone colours and create swatches with colour names. Part D.2. a. Go to File > Open, and open the .ai CAD files in Illustrator. b. Create a New Document (Preset: Print/ A4/ Vertical format). c. Copy the file into the New document. d. Manipulate the CAD and modify/ change the CAD to remove the filled pattern in the dress. e. Add colour to the front and back CADs created using colours from the inspiration board. f. Convert to Pantone colours and create swatches with colour names. g. Add a bold and vivid placement print inspired from the inspiration board. Play around with the placement of the print and seek reference from the two images below. h. Convert to Pantone colours and create swatches with colour names for the print as well (use minimum 3 colours in the print). Save files D.1. and D.2. as Part_D1 and Part_D2 in Illustrator format and export the files as JPEG/PNG as Part_D1 and Part_D2. Copy the content of Part_D1 and Part_D2 in a new file in Illustrator to merge both of them in one file. Increase the number of artboards to have atleast 2 artboards (one for D1 and one for D2). Save this file as Task_2_CADs_your name (illustrator format). Task 3: Video Presentation Part E: Using the images saved from Part A, B, C and D, you are required to create a video in Adobe Express. a. Create a new video of 11 scenes by adding images and text, Scene 1: Title Page (Brand name and your name- Be Creative!!) Scene 2: Inspiration Board (Part_B_inspiration_board) Scene 3: PartB_1 image Scene 4: PartB_2 image Scene 5: PartB_3 image Scene 6: PartB_4 image Scene 7: PartB_5 image Scene 8: Part_C image and add text Original and Manipulated CADs as a sub-title Scene 9: Part_D1 Scene 10: Part_D2 Scene 11: Reference list if any. b. Apply appropriate layout to pages/scene. c. Apply appropriate layout to pages/scene. d. Add your own voice-over to explain the process undertaken (how did you create this??). e. Add music from the music library in the background, however set the volume low so it does not distract from your voice. f. Add references if any. Name your video as Task_3_Video Presentation. Once completed, please download as an MP4 file into your device. Upload your MP4 file via Canvas Studio for the submission. Visit this link to follow the process on uploading the video via Canvas Studio, Studio (instructuremedia.com) Important- Which files are you submitting for Assignmnet 1_Creative Part? 1. Task_1_Inspiration_Board_your name (Photoshop format) 2. Task_2_CADs_your name (illustrator format) 3. Task_3_Video Presentation (MP4 format)
Decision Making Lab2 Laboratory work №2 Topic: Methods of multi-criteria optimization when reducing problems to single-criteria ones Goal of the work: - study the possibilities of using multi-criteria optimization methods by reducing problems to single-criteria ones; - learn how to perform. a graphic presentation of a decision-making task; - learn how to search for solutions using multi-criteria optimization methods when reducing problems to single-criteria ones. The order of work 1. Study theoretical information about the task of decision-making with methods of multi-criteria optimization by reducing problems to single-criteria ones. 2. Choose a subject area for decision-making (the same as in laboratory work #1). 3. Perform. a verbal formulation of the decision-making problem in the selected subject area and determine 6 alternatives, evaluating them according to 5 criteria. 4. In the MS Excel environment, create the tables with data for solving the problem. 5. Search for solutions based on various methods. 6. Compare the obtained solutions. Explain the results. Demonstrate the process of finding solutions to the teacher. 7. Make a report on laboratory work. 8. Defend laboratory work. Content of the report 1. Topic of the work. 2. Goal of the work. 3. Individual task. 4. Description of the work execution. 5. Interpretation of the obtained results. 6. Conclusions. Individual tasks Select the problem area according to the ID in the group list. Search for solutions for the given problem area (Table 1). Table 1 ID Problem area 1 Personnel of the enterprise 2 Enterprise equipment 3 Service provider 4 Job 5 Home appliances 6 Housing rent 7 Banking sphere 8 Computers 9 Buying food 10 Public transport 11 A place for relax 12 Vehicles 13 Furniture Theoretical material All methods of solving multi-criteria optimization problems are based on reducing the initial problem with a vector criterion to an optimization problem with a scalar criterion. The methods differ only in the mechanism of implementation of such reduction. Most common of them are the main criterion, convolution criteria – linear and maximum convolution, consequent concessions, ideal point, target programming. 1 The main criterion method In the method of the main criterion, one of the functionals fi, for example f1, is selected as the target function, which most fully reflects the goal of decision-making from the point of view of decision maker. The remaining requirements for the result, described by the functionals f2, … , fm, are taken into account with the help of additional restrictions. Thus, the multi-criteria optimization problem turns into a single-criteria optimization: Formally, we obtain a simple problem of finding the maximum of the functional f1 on a new admissible set D´. The restriction f1(х) ≥ ti shows that the functionals f2, … , fm are bounded from below, and it is not necessary to reach their maximum values. Example 1. Let’s solve the task of placing the enterprise. We have seven alternative options х1 – х7, where each is evaluated by experts in conventional units according to four criteria: f1 – distance to the supplier of raw materials; f2 – availability of labor resources; f3 – cost of electricity supply; f4 - transport connection. The experts identified the main criterion – availability of labor resources and limitation of assessments according to other criteria (Table 2.1). It is necessary to make the best decision about the location of the enterprise according to the method of the main criterion. Table 2.1 – Criteria for location of an enterprise 2 The method of linear convolution This method of "scalarization" (convolution) of the multicriteria optimization problem allows replacing the vector optimality criterion f=(f1, … , fm) to scalar one J: D → R. It is based on the linear association of all private objective functionals f1, … , fm into one: Here, αi – weighting coefficients, which can be considered as indicators of the relative importance of individual criterion functionals fi. The more importance given to the criterion fi, the greater the weighting coefficient assigned to it. Example 2. It is necessary to make the best decision about the location of the enterprise using the method of linear convolution. We have seven alternative variants х1 – х7, each of which was evaluated by experts in conditional units according to four criteria (Table 2.4): f1 – distance to the supplier of raw materials; f2 – availability of labor resources; f3 – cost of electricity supply; f4 - transport connection. The experts established weighting coefficients of the importance of the criteria: a1=0,3; a2=0,4; a3=0,1; a4=0,2. Table 2.4 – Criteria for location of an enterprise 3 Maximin convolution method This method can be formally presented in the form. Here, the target functional J(x) is affected only by a certain criterion of optimality, which corresponds to the smallest value of the functional fi(x) at the point x, that is the "worst case". At the same time, by the value of J(x) we can determine the guaranteed lower estimate for all functionals fi(x). This fact is regarded as an advantage of the maximin criterion over the linear convolution method. If necessary, we can normalize individual target functions, i.e. bring the measurement scales of individual fi(x) values into mutual agreement, using the "weighted" form. of the maximin criterion: The selection of the values of the weighting coefficients αi based on a priori information allows influencing the optimization process. Normalization of criteria (reduction to a comparable dimensionless form) can be carried out in various ways, the most common among them are the following: where fimax – the maximum value of the criterion fi(x) on a set of admissible alternatives X, "i є І1ÈI2,; fimin – the minimum value of the criterion fi(x) on a set of admissible alternatives X, "i ϵ І1ÈI2, I1 – the set of indices for which the objective functions are maximized; І2 – the set of indices for which the objective functions are minimized. The criteria are "collapsed" into one objective function, forming the so-called generalized criterion, in which the relative importance of each of the criteria is taken into account using weighting factors that must satisfy the following ratios: As a result, the original multi-criteria problem is reduced to an ordinary optimization problem with one criterion. Example 3. It is necessary to make the best decision about the location of the enterprise using the method of maximin convolution. We have seven alternative variants х1 – х7, each of which was evaluated by experts in conditional units according to four criteria (Table 2.4): f1 – distance to the supplier of raw materials; f2 – availability of labor resources; f3 – cost of electricity supply; f4 - transport connection. The experts established weighting coefficients of the importance of the criteria: a1=0,3; a2=0,4; a3=0,1; a4=0,2 (табл. 2.4). Find the best solution for placing the enterprise using the maximin convolution method. 4 The method of consequent concessions The method of consequent concessions belongs to the category of lexicographic optimization. The essence of the method of consequent concessions is that the original multi-criteria problem is replaced by a sequence of single-criteria problems, the area of admissible solutions of which is narrowed from problem to problem with the help of additional restrictions taking into account the criteria requirements. When formulating each problem in relation to a more important criterion, a concession is made, the amount of which depends on the requirements of the problem and the optimal solution according to this criterion. Solving a multi-criteria problem by the method of consequent concessions consists in performing the following actions: 1) partial criteria are numbered in order of their relative importance; 2) maximize the first, most important criterion: f1(x) → max, x є X, and we get the optimal value of the first criterion f1max ; 3) assign the value of the permissible decrease in the value Δ1 of this criterion and maximize the second most important partial criterion, provided that the value of the first criterion must differ from the maximum by no more than the value of the established decrease (concession): f2(x) → max, f1(x) ≥ f1max — Δ1, x є X; as a result of solving the problem, we get the optimal value of the criterion f2max ; 4) assign the value of the concession again, but already to the second criterion and find the maximum of the third most important criterion, provided that the values of the first two criteria do not differ from the previously found maximum values by more than the amount of the corresponding concessions; 5) similarly, other partial criteria are used in turn; 6) if the problem is solved for k criteria, then we have: fk+1(x) ® max, f1(x) ≥ f1max — Δ1, f2(x) ≥ f2max — Δ2, . . . fk(x) ≥ f k max, x є X; the problem is solved when all criteria are considered; 7) any strategy obtained when solving the problem of finding the conditional maximum of the last criterion in terms of importance is usually considered optimal. Example 4. It is necessary to make the best decision about the location of the enterprise. We have seven alternative options х1 – х7, each of which is evaluated in conditional units according to four criteria f1, f2, f3, f4 (table 2.1). The criteria are arranged in order of decreasing importance for decision maker. We solve the problem f(x) → max. Table 2.10 – Evaluations of criteria in conventional units
ASSESSMENT GUIDE COMM5000 Data Literacy Final Report Housing Market Trends & Affordability: A Data-Driven Business & Policy Analysis Term 1, 2025 CASE STUDY INFORMATION-- Housing Market Trends & Affordability Project Statement Business and Economic Context The housing market is a critical sector influencing government policies, financial institutions, real estate investors, and urban planners. Property prices, affordability, and market trends impact economic stability, investment risks, and infrastructure development. Government housing agencies need to assess affordability trends to develop policies for first-time homebuyers and low-income families. Real estate investors and developers require insights into high-growth suburbs to determine where to build or invest. Financial institutions and banks analyse property data to evaluate mortgage risks and loan eligibility. Urban planners and infrastructure authorities depend on market insights to plan future housing projects based on demand and population growth. These stakeholders rely on data-driven analysis to make informed decisions about housing policies, market investments, and economic development. In major cities like Sydney, Melbourne, and Brisbane, housing affordability is a growing concern. With property prices outpacing wage growth, many struggle to enter the market, increasing the need for government intervention and affordable housing initiatives. Monitoring housing trends helps policymakers craft effective policies to improve homeownership access and ensure fair housing opportunities. Beyond affordability, real estate is a key driver of employment in construction, finance, and property services. The Reserve Bank of Australia (RBA) adjusts interest rates in response to market shifts, influencing mortgage holders and consumer spending. Rapid price surges may require regulatory adjustments to maintain economic stability. Analysing property data enables decision-makers to anticipate market changes and implement necessary financial measures. For many Australians, property is both a home and a long-term investment. Housing prices impact wealth accumulation, retirement planning, and intergenerational wealth transfer. Investors and financial institutions rely on market trends to assess risks and identify opportunities. Disparities between urban and regional property markets also shape internal migration as people and businesses seek affordability and economic prospects. The Australian housing market is also shaped by global factors such as economic trends, immigration policies, and foreign investment. Economic downturns, trade shifts, and crises like COVID-19 have all impacted supply and demand. Tracking housing prices allows businesses and governments to anticipate risks and develop strategies for market resilience. Studying housing prices is more than tracking property values—it is a fundamental part of economic planning, investment strategies, and urban development. By analysing real estate trends, decision-makers can shape policies that drive economic growth and improve the quality of life for Australians. https://www.youtube.com/watch?v=P2chYfJ4cRs https://www.youtube.com/watch?v=LBKIloe1Zuc Your role as Data Scientist As a Housing Market Analyst, your role begins with an Exploratory Data Analysis (EDA) using descriptive statistics and visualization techniques to uncover patterns, variations, and key trends in housing prices. This is the foundation of data-driven decision-making, where you will summarize distributions, identify outliers, and assess relationships within the data. Once a clear understanding of the dataset has been established, the focus will shift toward formulating key hypotheses, allowing us to test theories and claims about the factors driving property prices. This step will help in identifying potential causal relationships, which will later be examined using statistical modelling and inferential techniques. Ultimately, this process will enable us to move beyond simple observations and establish evidence-based insights that support strategic decision-making in the housing market. The Dataset: Australian Housing Market Overview You will be working with a dataset containing real estate property records. The dataset includes information on property characteristics, pricing, and location details. The key categories of information in the dataset are: ◆ Location Data → State, suburb, street name, postcode. ◆ Market Information → Market price of the property. ◆ Property Characteristics → Building type, number of bedrooms, number of bathrooms. ◆ Structural Features → Living area size, car area, outdoor area. Final Report: Case Study Business Report Report details Week 11, Sunday May 4th 11:59PM 40% Report: This is individual work. Reports will be checked for plagiarism. 1400-1700 words (5-8 pages not including tables, graphs, and references) Via Moodle course site Case Study Business Report: Applied Housing Intelligence for Reform You are a Housing Market Data Analyst working for a cross-sectoral advisory taskforce led by the Department of Housing and Urban Infrastructure. This taskforce was formed in response to mounting concerns around declining housing affordability, rising inequality, speculative bubbles in key suburbs, and uneven access to mortgage credit. The purpose of this advisory group is to bring together diverse perspectives and expertise from across government, finance, planning, and development to build evidence-based housing policy reforms. Your role is to provide robust, ethically responsible, and actionable modeling insights that help resolve tensions between economic growth, market stability, and social inclusion in housing. The final assessment simulates your culminating task as part of this taskforce. You are responding to a series of stakeholder briefs, each grounded in plausible economic or policy concerns. Your work builds on earlier insights (Milestone 1 and 2) and now requires you to synthesize those skills using more advanced techniques such as multiple regression, causal reasoning, predictive modeling, and theory- informed analysis. Grounding Framework: The Hedonic Pricing Model Before responding to the stakeholder briefs, you are required to ground your analysis in the hedonic pricing model — a core economic framework used to estimate the value of individual characteristics of a differentiated good such as housing. In theory, the price of a property Pi reflects the sum of the implicit prices of its characteris- tics (X1i, X2i,..., Xki ), including structural (e.g., bedrooms, bathrooms), locational (e.g., proximity to CBD), and neighborhood features (e.g., school zone, crime rates). Pi = f(X1i, X2i,..., Xki ) + εi By applying multiple regression, we estimate the function f(·) using observed data. This yields: log(Pi ) = β0 + β1 X1i + β2 X2i + ... + βkXki + εi This log-linear specification allows us to interpret coefficients as percentage changes in price for one-unit changes in each attribute, holding others constant. You will be using this structure as a benchmark. In the briefs, Hedonic model is also referred to also as log model. In fact, the latter is one interpretation of the Hedonic price model. Stakeholder Briefs 1. Government Housing Policy Unit ”Recent claims suggest that home prices in high-PIR suburbs have grown faster than income in the past five years. This might suggest a bubble. We’re considering a cap on developments in areas where affordability has deteriorated the most. But is there really a consistent pattern?” Context: The government is under pressure to curb speculation and improve housing access. Your analysis should help determine whether PIR levels systematically predict higher price growth — and if so, under what conditions. Do prices behave differently in high-PIR suburbs once structural differences are controlled for? How might these patterns vary by state or property type? 2. Urban Planning Authority ”We’re updating zoning laws and want to know how much property features (e.g., number of bedrooms, car space) matter for price in different states. Some people say these things matter less in dense inner-city markets than in suburban ones. Is this true?” Context: Planners want to know whether existing zoning restrictions align with how buyers actually value property features. Your task is to test the hedonic assumptions about structural attribute values and examine whether their implicit prices vary significantly by location or density. Are interaction effects (e.g., bedrooms × state) statistically and economically meaningful? 3. Mortgage Lender ”We’re rethinking lending criteria. There’s concern that applicants in high-density regions are over- leveraged despite lower property values. We want to know: do higher prices reflect true structural value, or are they inflated by speculative location factors?” Context: Lenders need to assess collateral risk. If locational premiums drive price inflation without structural justification, loan portfolios may be vulnerable. Your model should help decompose price into structural and locational components and assess whether some areas pose more risk due to overvalua- tion. Consider using dummy variables for high-density postcodes or interaction terms to reveal hidden dynamics. 4. Private Developer ”We’re building a new mixed-use development. Our sales team claims that adding more car spaces or ensuite bathrooms can raise the price significantly. Can you help us forecast potential returns for different unit configurations?” Context: Developers need evidence-based pricing for design choices. Your job is to simulate predicted prices (with CIs and PIs) for different hypothetical units using your hedonic model. Use model outputs to estimate returns on design changes, and discuss the risk of overcapitalising in certain suburbs or unit types. 5. Developer Planning Simulation You are working with a mid-tier property developer planning a new residential project in the subur- ban fringe of Greater Melbourne. The project aims to deliver moderately priced, higher-density dwellings that balance affordability and lifestyle appeal for young families and downsisers. The developer is evaluating whether to allocate more funding toward car parking, outdoor space, or higher-end finishes (like ensuite bathrooms and brick veneer structures). They’re particularly interested in understanding how these features are likely to impact expected sale prices under current market conditions, using historical data as a benchmark. To assist in this investment decision, you’ve been asked to provide a price prediction for a proposed unit type: “We’re targeting a middle-income couple looking to buy their first home. The property will be a 3-bedroom townhouse, built with modern detached design, offering two bathrooms, a car space of about 80 sqm, and a small garden area of 25 sqm. It’s located about 30 minutes from Melbourne CBD in a growing suburb with high family appeal.” 6. Ethics and Public Interest Watchdog ”There is public concern about algorithmic bias in housing data. Some developers claim their models are objective — but we worry that underrepresented suburbs or buyer segments may be systematically excluded. What are the dangers here?” Context: Ethical scrutiny is increasing. Your model must be examined for bias, omitted variables, or inference risks. Reflect on whether your results reinforce inequities. Are assumptions (e.g., linearity, zero conditional mean) violated? What mitigation steps could improve transparency and fairness?
GEOM 30009: Imaging the Environment 1. Human vision: Describe the similarities between a camera and the human vision system. Name three components that a camera has in common with the human eye. (10 points) 2. Electromagnetic radiation: The figure below shows the effect of atmosphere in scattering and absorption of electromagnetic radiation. What does this figure imply for imaging the earth from space? Can we use any wavelength for imaging? If necessary, give an example to clarify your answer. (10 points) 3. Imaging sensors: Provide a comparison of airborne imaging and spaceborne imaging in terms of the following criteria: (10 points) Coverage Spatial resolution Accuracy of image measurements Cost Flexibility for planning the time and location of image acquisition 4. Image interpretation: Give an example on how each of the following elements is used in image interpretation. (10 points) Tone pattern Association shadow site 5. Image processing: Explain what an image histogram is (5 points), and how histogram stretching can be used to improve image contrast (5 points). Use diagrams to explain your answer. 6. Information extraction: A useful method for segmenting an image into homogeneous regions is region growing. Explain how region growing works (5 points), and give an example of homogeneity criteria in segmentation (5 points). 7. Georeferencing and rectification: Describe the image rectification process (4 points). What type of distortion can be corrected by rectification (3 points)? What assumption about terrain topography is made when rectifying an image (3 points)? 8. Orthorectification The image below shows a mosaic of two aerial images in Google Maps with misaligned features along the cutline. ● Where is this misalignment problem more severe? why? (3 points) ● What causes the misalignment of features between the two images? (3 points) ● What process should be performed to correct for this problem? Describe the process briefly. (4 points) 9. Measuring in images: Which of the following processes should be applied to an image before it can be used for making reliable 2D measurements? Explain your answer (10 points). Band ratios Orthorectification Image segmentation No processing is needed. 10. Measuring 3D in images: What are the requirements for making 3D measurements in images? Explain your answer briefly. (10 points)
HBS108 - Health Information and Data Assessment Task 2 overview Assignment task type Assessment Task 2 (AT2) is an individual written assignment that enables you to demonstrate your ability to critically analyse and evaluate relevant sources of literature by preparing an annotated bibliography. Submission requirements Due date and time: Thursday, 17 April 2025 by 8:00pm AEST (Week 7); Time Zone Converter – Time Difference Calculator Weighting (% of final grade): 35% of overall grade Word limit: 1400 words +/- 10% (1260 –1540 words) Submission location: via HBS108 CloudDeakin Assessment Task 2 Dropbox under the 'Assessment' tab. Assignment format: PDF or Word document; PDF conversion software is available on Deakin Software Catalogue Referencing style.: APA7 referencing. Please refer to the Deakin Guides to Referencing. Assessment criteria: Please refer to the AT2 Marking Rubric. Why are you doing this assessment task? Purpose · An annotated bibliography helps in organising your thoughts while providing structure to your research, thereby facilitating a smoother and less stressful writing process. This is key when it comes to completing assignments including those in future units like HSH219 - Population Health: A Research Perspective. · Preparing an annotated bibliography is a very important task that can help you with describing, evaluating, informing and determining information which will help with future research projects, publications and/or studies. · By completing this assignment, you are not only developing your searching skills but also enhancing your ability to effectively summarise, critically analyse and evaluate published literature which is crucial for rapidly evolving fields like health promotion, public health and health sciences. The transferable skills related to information synthesis, critical analysis and effective communication remain highly relevant and valuable for your career as a health professional. What unit and graduate outcomes does it relate to? Unit Learning Outcomes assessed by AT2: This assignment assesses your learning in relation to: · ULO 2: Locate high quality health information and evaluate methodological strengths and weaknesses in health research. · ULO 5: Communicate health information, data and evidence to a variety of audiences using digital technologies. Graduate Learning Outcomes assessed by AT2: GLO1: Discipline specific knowledge and capabilities; GLO2: Communication; GLO3: Digital literacy; GLO4: Critical thinking; GLO5: Problem solving. Important reminder: Please ensure you understand the importance of academic integrity, and the potential consequences of academic misconduct such as plagiarism, contract cheating or collusion, by reading 'Your rights and responsibilities as a student in this unit' and the module focusing on 'Assessments and Feedback'. If you are in any doubt about the academic integrity of your work, please discuss with the unit teaching staff well in advance of assignment submission. Background The Gambling Regulation Act 2003 defines gambling: as an activity which includes: a) a prize of money (or something of value) offered or won; b) a person paying (or staking) money or valuables to participate; and c) an outcome involving chance, even if influenced by skill. (Chief Parliamentary Counsel, 2023, 1.3AA Meaning of gambling) Globally, Australia not only stands out for having one of the most normalised gambling environments but also has the highest levels of gambling losses per capita, with an average loss of around $25 billion in 2020-21 (Pitt et al., 2022; Sathanapally et al., 2024). While there are several determinants of gambling normalisation, a robust and expanding body of evidence highlights the link between gambling advertising and gambling related harm (Goyder et al., 2022). Consequently, policymakers are actively pursuing strategies to reduce these harms (Macey & Hamari, 2024). For example, at a federal level, the Albanese government is under immense pressure to ban gambling ads. In Victoria, gambling is again identified as a key priority, leading to the introduction of the Gambling Legislation Amendment (Pre-commitment and Carded Play) Bill 2024 (Premier of Victoria, 2024). While several measures are being implemented to mitigate the negative impacts of gambling, the significant rise in gambling advertisements, appearing across digital platforms like TikTok and Instagram as well as on television, is particularly worrying for young people aged 15–24, a group already susceptible to risky behaviours and mental health issues (Australian Communications and Media Authority, 2023; Jenkinson et al., 2023; Nesi, 2020). Extensive advertising during matches and televised sport, particularly widespread in popular sports, including the Australian Football League, further normalises gambling, making it appear socially acceptable. Assignment Instructions AT2 is an individual written assignment that requires you to draw on your ability to research and critically evaluate scholarly literature to prepare a well-structured annotated bibliography related to the exposure and impact of gambling advertisements or promotions on young people aged 15 to 24 years. Please use the provided template that includes a cover page with the name of the unit and the title of the assessment task (i.e., HBS108 - Health Information and Data, Assessment Task 2: Annotated Bibliography - Locating and evaluating health information), your name, student number, word count, and the referencing style. (APA7) to prepare your assignment. Please find below step-by-step instructions for you to prepare the annotated bibliography. Close AllStep 1: Understand the research hypothesis Before diving into the process of identifying and evaluating scholarly literature, you need to clearly understand the research hypothesis. For this assignment, your research hypothesis is: "Exposure to gambling advertisements and media promotions increases risky behaviours in youth aged 15 to 24 years, leading to negative health and wellbeing impacts." ⭐Tip You might find it helpful to identify and underline the keywords (main ideas or key concepts) in this hypothesis. If there are concepts you do not understand, try defining these in your own words. Watch the video below to gain a better understanding - it is a great way to reinforce what we have discussed in Week 2. Step 2: Plan your search and search the literature (Criteria 1 and 2) · Create a search plan. · Use relevant academic databases to identify six recent (i.e., published between 2015 and 2025), peer-reviewed publications (or academic sources of literature) relevant to the research hypothesis. · Ensure you locate a range of sources (for example, peer-reviewed journal articles presenting different methodologies, offering different viewpoints, reporting on primary and secondary research and so on), including a minimum of two quantitative primary research articles. · Provide a detailed record of the search plan [as Appendix A]. Please see the provided template for further details. ⭐Tip Watch the videos about peer review and Boolean operators to refresh your understanding. Step 3: Write the annotations (Criterion 3) · Read, understand and evaluate each source in terms of its quality and relevance. · Write a single annotation (equivalent to 200 words) for each source that summarises its aim, methods, key findings and limitations, and includes a succinct statement that identifies its relevance to the research hypothesis (i.e., how the findings of the study support, challenge or provide new insights). ⭐Tip For more details around preparing an annotated bibliography please refer to this helpful resource. Example of an annotated bibliography entry: Blundell, J., Finlayson, G., Axelsen, M., Flint, A., Gibbons, C., Kvist, T., & Hjerpsted, J. B. (2017). Effects of once-weekly semaglutide on appetite, energy intake, control of eating, food preference and body weight in subjects with obesity. Diabetes, Obesity & Metabolism, 19(9), 1242–1251. https://doi.org/10.1111/dom.12932 Blundell et al. investigated the role of semaglutide for weight loss in people with obesity using various physiological and psychological measures, to better understand the mechanism of action responsible for semaglutide-induced weight loss. In their randomised, double-blind, placebo-controlled, two-period crossover trial, weekly, subcutaneous doses were administered to 30 non-diabetic (stable HbA1c
Decision Making Lab3 Laboratory work №3 Topic: Finding solutions based on binary relations preference. "ELECTRE" method of thresholds of inequality Goal of the work: - study of the features of the application of binary relations of preference for decision-making; - study of the "ELECTRE" method of inequality thresholds; - implement the the "ELECTRE" method in the MS Excel environment. The order of work 1. Study the features of binary relations preferences in decision-making and the decision-making algorithm by the method of "ELECTRE" inequality thresholds. 2. Present initial data and search for the optimal solution using the "ELECTRE" method in the MS Excel environment. 3. Make a graphic representation of the problem. Explain the result by showing the optimal solution on the graph. Demonstrate the process of finding solutions to the teacher. 4. Make a report on laboratory work. 5. Defend laboratory work. Content of the report 1. Topic of the work. 2. Goal of the work. 3. Individual task. 4. Description of the work execution. 5. Interpretation of the obtained results. 6. Conclusions. Individual tasks According to the individual task (Table 1), find the best solutions by performing the necessary calculations in MS Excel. Set the values of the agreement and disagreement indices yourself. Table 1 ID Number of alter-natives Number of criteria Range of weighting factors for evaluation criteria 1 5 4 (1-10) 2 4 4 (1-5) 3 3 5 (1-20) 4 4 5 (1-12) 5 5 6 (1-10) 6 4 4 (1-5) 7 4 5 (1-10) 8 5 5 (1-12) 9 6 4 (1-5) 10 5 4 (1-10) 11 3 4 (1-12) 12 4 5 (1-20) 13 5 4 (1-7) 14 4 4 (1-10) Theoretical material "ELECTRE" method of thresholds of inequality The ELECTRE methods (acronym stands for ELimination and ChoiceExpressingREality) is a family of multi-criteria decision analysis (MCDA) methods. There are two main parts to an ELECTRE application: first, the construction of one or several outranking relations, which aims at comparing in a comprehensive way each pair of actions; second, an exploitation procedure that elaborates on the recommendations obtained in the first phase. The nature of the recommendation depends on the problem being addressed: choosing, ranking or sorting. Criteria in ELECTRE methods have two distinct sets of parameters: the importance coefficients and the veto thresholds. ELECTRE method cannot determine the weights of the criteria. Stages of the ELECTRE procedure: 1) for each criterion, a discrete scale of possible values of this criterion and weighting coefficients are assigned; 2) a graph is constructed for each criterion, the vertices of which are individual objects of the set and the arcs indicate the dominance relationship between objects according to this criterion; 3) taking into account the importance of the criteria and the preference of the objects, the matrices of the values of the special coefficients – indices of agreement and disagreement are calculated; 4) for each pair of objects (xi, xj) ∈ X, the preference ratio, xi over xj, is considered established if the value of the corresponding index of agreement is greater than some threshold value, and the index of disagreement is less than the corresponding threshold value. 5) a generalized preference graph is constructed, the structure of which depends on the selected threshold values. Example. Let X be the set of students participating in the scholarship competition. It is necessary to determine the best candidates based on the conducted examinations. The number, composition of disciplines and possible ways of evaluating students in disciplines may vary according to the specific features of the higher education institution. Let's consider the evaluations of three students in three disciplines on a five-point scale (Table 2). Table 2 - Assessments of the examination session Student Discipline Mathematics Physics Computer graphics х1 5 3 4 х2 5 4 3 х3 4 5 3 Notations: x1, x2, x3 ∈ X the set of evaluated objects (students); yi – grade of the object х∈Х according to the criterion i, i =1, m (grade by discipline); cki – weight factor of the criterion ki, i =1,m (importance of the discipline); 0 < cki < 1(10,100, ...). Let ck1 = 5, ck2 = 3, ck3 = 2. For each criterion i we build a graph Gi = (X, Vi), where Vi is a set of graph arcs Gi. An arc in the graph Gi from vertex хi to vertex xj exists if ai ≥ aj, equality of grades ai = aj in the graph is displayed as two arcs from хi to xj and from xj to хi. Let's build graphs of binary relations for the disciplines specified in the problem. Figure 1 – Graphs of binary relations in mathematics (a), physics (b) and computer graphics (c). The combined graph characterizes the complete agreement of the preference of some objects over others. Let's build a combined graph G0 = (X, V0), where is the intersection of three graphs with arcs Vi. Figure 2 – Combined graph G0 = (X, V0) In our example, V0 = {Ø}, since there are no arcs in the three graphs that coincide in direction at the same time. Let's build a matrix of agreement indices of preference of objects: Let's consider a couple of objects (xi, xj)∈ X. Regarding them, the set of all criteria can be divided into two "opposite" classes. To the first class C(xi, xj) we include all the criteria ki for which xi ≥ xj , i =1,m, j =1,m, that is, the criteria according to which in the graphs Gi there is an arc (xi, xj): In criterion language, we will determine the advantages of alternatives by performing pairwise comparisons. Alternative x1 is better than x2 according to the criteria k1, k3; alternative x1 is better than x3 according to the criteria k1, k3; alternative x2 is better than x1 according to the criteria k1, k2, etc.: C(x1, x2) = {k1, k3}, C(x1, x3) = {k1, k3}, C(x2, x1) = {k1, k2}, C(x2, x3) = {k1, k3}, C(x3, x1) = {k2}, C(x3, x2) = {k2, k3}. Agreement indices express the degree of agreement with the preference of xi over xj . We will calculate agreement indices using formulas where cij is the value of the index of agreement with the preference of the alternative xi over xj; cki is weight factor of the criterion ki ; с is the sum of the coefficients of the criteria's importance; m is the number of criteria. In our example, ck1=5 – Mathematics, ck2=3 – Pphysics, ck3=2 – Computer graphics, respectively, с = ck1 + ck2 + ck3 =5+3+2=10. We will calculate the values of the agreement index matrix: c12=( ck1+сk3)/( ck1 + ck2 + ck3)=(5+2)/(5+3+2)=7/10=0.7; c13=( ck1+сk3)/( ck1 + ck2 + ck3)=(5+2)/(5+3+2)=7/10=0.7; c21=( ck1+сk2)/( ck1 + ck2 + ck3)=(5+3)/(5+3+2)=8/10=0.8; c23=( ck1+сk3)/( ck1 + ck2 + ck3 k3)=(5+2)/(5+3+2)=7/10=0.7; c31=( ck2)/( ck1 + ck2 + ck3)=(3)/(5+3+2)=3/10=0.3; c32=( ck2+ ck3)/( ck1 + ck2 + ck3)=(3+2)/(5+3+2)=5/10=0.5. Matrix of agreement indices C(xi, xj): Let's build a matrix of indices of disagreement with the preference of objects. Indices of disagreement express the degree of disagreement with the preference of xi over xj. The second class D(xi, xj) includes pairs of objects (xi, xj) according to the criteria ki, for which in the graphs Gi there are no arcs (xi, xj): На критеріальній мові визначимо відсутність переваг альтернатив, виконуючи попарні порівняння. Альтернатива x1 гірше ніж x2 за критеріями k2; альтернатива x1 гірше ніж x3 за критерієм k12; альтернатива x2 гірше ніж x1 за критерієми k13 і т.д.: In criterion language, we will determine the lack of advantages of alternatives by performing pairwise comparisons. Alternative x1 is worse than x2 according to k2 criteria; alternative x1 is worse than x3 according to the criterion k12; the alternative x2 is worse than x1 according to the criteria k13, etc.: Student Discipline Mathematics Physics Computer graphics х1 5 3 4 х2 5 4 3 х3 4 5 3 D(x1, x2) = {k2}, D(x1, x3) = {k2}, D(x2, x1) = {k3}, D(x2, x3) = {k2}, D(x3, x1) = {k1, k3}, D(x3, x2) = {k1} We will calculate the disagreement indices as follows: , where d=2 is the normalizing coefficient, which is equal to the maximum difference of grades on the entire set of criteria. In our original table, the maximum score is equal to 5, and minimum is equal to 3, so d=5-3=2. We will calculate the values of the matrix of disagreement indices: d12= |y12-y22|/d=|3-4|/ 2 =1/2=0.5 (по предмету k2); d13= |y12-y32|/d=|3-5|/ 2 =2/2=1 (по предмету k2); d21= |y23-y13|/d=|3-4|/ 2 =1/2=0.5 (по предмету k3); d23= |y22-y32|/ d =|4-5|/ 2 =1/2=0.5 (по предмету k2); d31= max{|y31-y11|;|y33-y13|}/ d =max{|4-5|; |3-4|}/ 2 =1/2=0.5; (by subjects k1, k3); d32= |y31-y21|/d =|4-5|/ 2 =1/2=0.5 (by subject k1). Matrix of disagreement indices D(xi, xj): Let's introduce the preference ratio on the objects through the threshold values p for the agreement indices (it should be closer to one) and q for the disagreement indices (it should be closer to zero). The object xi has precedence over the object xj, if c(xi, xj) ≥ p and d(xi, xj) ≤ q, that is, the following conditions are met: • set of criteria (taking into account their relative importance) according to which the alternative has a sufficient advantage (more than the threshold p); • evaluations according to other criteria do not provide sufficient grounds for rejecting the preference (threshold q), the degree of distrust in this assumption does not exceed the permissible limit q. Let's build a generalized preference graph for threshold values {1,0}: For thresholds {1,0} all students are equal, it is impossible to make a choice. Let's build a generalized preference graph for threshold values {0.8, 0.5}: In this case, it can be concluded that preference should be given to the student х2. Conclusions: 1) the method is designed to solve tasks in which a given number of the best alternatives must be selected from the available set of alternatives, taking into account their evaluations according to several criteria, as well as the importance of these criteria; 2) the application of the method made it possible to choose the best candidate for the scholarship.
Consistent Sets of Formulas Consistent Sets of Formulas Definition We say that a set Γ of propositional formulas is consistent if there is no formula ϕ such that both Γ |- ϕ and Γ |- ¬ϕ. If Γ is not consistent, we say it is inconsistent. Theorem A set Γ of formulas is consistent if and only if there is some formula ϕ such that Γ 0 ϕ. Proof: We show that Γ is inconsistent iff Γ |- ϕ for all formulas ϕ. If Γ |- ϕ for all formulas ϕ, then in particular Γ |- P1 and Γ |- ¬P1, so Γ is inconsistent. Now suppose that Γ is inconsistent. Let ψ be such that Γ |- ψ and Γ |- ¬ψ. Let ϕ be an arbitrary formula. In an early example, we have seen that {P, ¬P} |- Q. Replacing P with ψ and Q with ϕ in that derivation, we obtain a derivation {ψ, ¬ψ} |- ϕ. Thus, Γ |- ϕ. Example Γ = {¬(P → ¬P), (P → Q), (Q → ¬P)} is inconsistent. Proof: We have Γ |- (P → ¬P) via the following derivation. (1) (P → Q) (premiss) (2) (Q → ¬P) (premiss) (3) (P → ¬P) (HS on (1) and (2)) Also Γ |- ¬(P → ¬P) since ¬(P → ¬P) ∈ Γ . Thus Γ is inconsistent. How do we find an example of a consistent set of formulas? Satisfiable Sets of Formulas are Consistent Theorem Let Γ be a satisfiable set of propositional formulas. Then Γ is consistent. Proof: Let Γ be a satisfiable set of formulas. Assume for a contradiction that Γ is inconsistent. So let ϕ be such that Γ |- ϕ and Γ |- ¬ϕ. By the Soundness Theorem, Γ |= ϕ and Γ |= ¬ϕ. Since Γ is satisfiable, there exists a truth assignment e such that e(γ) = T for all γ ∈ Γ. Then since Γ |= ϕ, e(ϕ) = T. But since Γ |= ¬ϕ, e(¬ϕ) = T so e(ϕ) = F, a contradiction. Hence, Γ is consistent. We will see that the converse of this theorem is also true. That is, the consistent sets of formulas are exactly the satisfiable sets of formulas. Question Which of the following sets of formulas are consistent? 1. {P, ¬Q, R} 2. {¬P, ¬(Q → Q)} 3. {(P → Q), (P → ¬Q), P} 4. {(P → Q), (¬P → Q)} Maximal Consistent Sets Consistent Sets of Formulas Theorem Let Γ be a set of formulas, and let ϕ be a formula. (1) If Γ is consistent and Γ |- ϕ, then Γ ∪ {ϕ} is consistent. (2) If Γ 0 ϕ, then Γ ∪ {¬ϕ} is consistent. Proof of (1): Suppose that Γ is consistent and Γ |- ϕ. Assume for a contradiction that Γ ∪ {ϕ} is inconsistent. Let ψ be arbitrary. Since Γ ∪ {ϕ} is inconsistent, Γ ∪ {ϕ} |- ψ. So by the Deduction Theorem, Γ |- (ϕ → ψ). But since Γ |- ϕ, Γ |- ψ by MP. As ψ was arbitrary, this shows that Γ is inconsistent, a contradiction. Proof of (2): Suppose Γ 0 ϕ. Assume for a contradiction that Γ ∪ {¬ϕ} is inconsistent. In particular, Γ ∪ {¬ϕ} |- ϕ. By the Deduction Theorem, Γ |- (¬ϕ → ϕ). We’ve also seen that |- ((¬ϕ → ϕ) → ϕ). So by MP, Γ |- ϕ, a contradiction. Maximal Consistent Sets of Formulas Definition Let Γ be a set of formulas. We say Γ is a maximal consistent set of formulas if Γ is consistent and if for every formula ϕ, either ϕ ∈ Γ or ¬ϕ ∈ Γ. That is, a maximal consistent set of formulas is a largest possible set of consistent formulas in the sense that there is no formula not already in the set that could be added and maintain consistency. Theorem Let Γ be a consistent set of formulas. Then there exists a maximal consistent set of formulas Θ such that Γ ⊆ Θ. Proof: To begin, note that we can generate a list ϕ1, ϕ2, ϕ3, ϕ4, . . . of all propositional formulas. (To see this, convince yourself that for each n, you can list all formulas of length at most n on the variables P1, . . . , Pn, so doing this in turn for each n generates such a list.) Theorem Let Γ be a consistent set of formulas. Then there exists a maximal consistent set of formulas Θ such that Γ ⊆ Θ. Proof (continued): We now define, for each n, a set of formulas Θn as follows. Let Θ0 = Γ Let We claim that Θ is the desired set. Certainly Γ = Θ0 ⊆ Θ. If ϕ is a formula, ϕ = ϕn for some n, so either ϕ ∈ Θn ⊆ Θ (if Θn−1 |- ϕ), or ¬ϕ ∈ Θn ⊆ Θ (if Θn−1 0 ϕ). So it remains to check that Θ is consistent. We first show by induction on n that each Θn is consistent. Indeed Θ0 = Γ, so it is consistent. Assume Θn−1 is consistent. If Θn−1 |- ϕn, then by (1) of the previous theorem, Θn−1 ∪ {ϕn} is consistent. But in this case Θn = Θn−1 ∪ {ϕn}, so it is consistent. Theorem Let Γ be a consistent set of formulas. Then there exists a maximal consistent set of formulas Θ such that Γ ⊆ Θ. Proof (continued): If Θn−1 0 ϕn, then by (2) of the previous theorem, Θn−1 ∪ {¬ϕn} is consistent. We also have Θn = Θn−1 ∪ {¬ϕn}, so Θn is consistent. Thus, , where each Θn is consistent. Note also that Θ0 ⊆ Θ1 ⊆ Θ2 ⊆ · · · Assume for a contradiction that Θ is inconsistent. So there is a formula ϕ such that Θ |- ϕ and Θ |- ¬ϕ. Let ψ1, . . . , ψk and γ1, . . . , γl be derivations of ϕ and ¬ϕ, respectively, from Θ. There are finitely many premisses among ψ1, . . . , ψk and γ1, . . . , γl . So there exists some n such that all the premisses among ψ1, . . . , ψk and γ1, . . . , γl belong to Θn. But then Θn ` ϕ and Θn |- ¬ϕ, contradicting the consistency of Θn. Thus, Θ is consistent.
FIT5145 Assessment 3 BirdTag: An AWS-powered Serverless Media Storage System with Advanced Tagging Capabilities 1 Background Monash Birdy Buddies (MBB) is a group of researchers, students, and staff who love everything about birds at Monash University. MBB is all about exploring the amazing world of birds – from the tiniest wrens hopping in the bush to the majestic raptors soaring overhead. During the past few years, MBB has expanded its operations and membership to multiple Monash campuses in many countries. Think about all the fantastic stuff MBB captures: those stunning shots of birds in action, the unique calls and songs recorded, and those hilarious or insightful video clips of behaviour. This is the gold mine for bird research! It’s how MBB identify species, tracks individuals, studies behaviour, monitors populations, and ultimately, figures out how to help protect our feathered friends. But right now, imagine trying to find that specific photo of the rare bird from last year if it’s buried on someone’s random hard drive, or losing a whole batch of important audio recordings because a memory card got corrupted. Data scattered everywhere is data that’s hard to use, easy to lose, and impossible to share properly. A good storage system means everything is safe, backed up, and organised in one central location. It means any MBB member who needs data can find it efficiently. Collaborating on projects is a breeze because we all look at the same organised data. It ensures the valuable information we collect isn’t lost, allowing us to build on our work over time and contribute robust findings to bird conservation and science. It’s the essential nest that keeps all our precious bird observations secure and accessible, allowing us to spend less time searching and stressing and more time doing the awesome work of understanding and helping our avian pals! This assignment aims to build an AWS-based online storage system that allows users to store, organise and retrieve media files based on auto-generated and manual tags. The focus of this project is to design a serverless application that enables clients to upload their media files (images, audios and videos) to public cloud storage. Upon upload, the application automatically tags the file with the bird species detected in it, automatically sorts/moves the file to the corresponding directory and adds a record in a database for searching. Later, files can also be queried based on the bird species in them. 2 Group Assignment Most software developers will work in a team at some point in their career. Therefore, this assignment is designed as a group project to prepare students to experience software development as a team. Students will be placed into software teams of up to four members to work on implementing the system described above. In this assignment, students need to organise their teams and collective involvement. There is no designated team leader, but teams may decide to establish processes for agreeing on work distribution. Understanding the dependencies between individual efforts and their successful integration is crucial to the success of the work and for software engineering projects in general. If teams encounter any “issues”, they should inform the teaching team as soon as possible, and help will be provided to resolve them. The due date for this assignment is firm, and there is no ’special consideration’ for granting an extension. If a team member fails to complete their work for any reason, other team members should handle their tasks and report this to the teaching team as soon as possible. We will evaluate individual involvement in the project. If a team member fails to satisfy their tasks, they may be penalised heavily, regardless of the project’s success. 2.1 Assignment Description Teams should develop an AWS-based solution that leverages services such as S3, Lambda, API Gateway, and database services (e.g., DynamoDB) to build a system for automated bird tagging (pretrained models and sample code are provided) and query handling. The teams should produce a solution that enables end-users to upload their files into an S3 bucket. Upon uploading a file to a designated S3 bucket, a lambda function is automatically triggered, which uses the pretrained model to identify the bird in the file and stores the list of detected birds along with the file’s S3 URL in a database. Furthermore, the end-user should be able to submit queries to an API endpoint using API Gateway to search for tagged files (more details to come). 3 Authentication and Authorisation (10%) Security is one of the most crucial aspects of developing cloud applications. When your application is publicly exposed, you must ensure that your endpoints and resources are safeguarded against unauthorised access and malicious requests. AWS, through its Cognito service, provides a straightforward, secure, and centralised approach to protect your web application and its various resources from unauthorised access. To leverage the AWS Cognito service, you first need to create a user pool that stores user credentials. Then, you need to create and configure a client app that provides access to your application and/or other AWS services to query and use the user pool. Finally, you have options to communicate with the AWS Cognito service and perform authentication and/or authorisation. You can use the AWS JavaScript/Python SDK to access the user pool and identity provider(s) that you have defined earlier. Your application should support the following workflow and features: • Detect whether a user is authenticated or not. If the user has not signed in, access to all pages or endpoints except the sign-up service needs to be blocked, and the user should be redirected to the sign-up page to register a new account. For each new account, you need to record the user’s email address, first name, last name, and password. Cognito will take care of sending an email to new users, asking them to verify their email address and change their temporary password. • Your application should include a login page that allows users to sign in. After successful authenti- cation, users should be able to upload files, submit queries, view query results, and sign out of the application. All of these services must be protected against unauthorised access. • You can implement login and sign-up web pages using either the Hosted UI feature of Cognito or your own version that calls Cognito APIs. • Uploading files to an S3 bucket, invoking Lambda functions to execute the business logic of your application, and accessing the database for data storage and retrieval all require fine-grained access control permissions that you need to set up via IAM roles and appropriate policies. It is important to note that IAM roles in AWS Academy have several limitations. Therefore, you should carefully consider how to perform authentication and authorisation in your system while considering these limitations. 4 Core Functionalities (50%) 4.1 Model Handling Machine learning and deep learning models are often updated to improve their quality. If MBB provide a new version of the model to you, your solution design should be flexible enough to use the new model without changing your source code/lambda function. 4.2 File Handling (20%) Your solution should provide a mechanism to upload a file to an S3 bucket. Uploading a file to an S3 bucket can be done either through an API Gateway endpoint (using POST REST APIs) or directly using AWS SDKs (for instance, boto3 if you are using Python). Whenever a file is uploaded to the S3 bucket, your system must trigger an event and invoke a Lambda function. • Building Images Thumbnails: Upon uploading an image to S3, a Lambda function should make a thumbnail for that image. Creating a thumbnail for an image involves resizing the original image to a smaller dimension while maintaining its aspect ratio, followed by compression to reduce file size. You can use OpenCV library for this purpose. You are expected to configure the triggers and grant the required Amazon resource permissions (execution roles) for the Lambda function. • Tagging Files: Another Lambda function should be triggered to read the uploaded file, detect birds in the images/audios/videos, and save the file type and a list of detected bird species (tags) along with the S3 URLs for that file and its thumbnail (in case of image) in an AWS database for future queries. 4.3 Queries (25%) Your solution should provide APIs that allow the following queries: • Find images and videos based on the tags: The user can send a JSON-based query to request URLs of files that contain specific tags with a species of bird and minimum counts (e.g., {”crow”: 3}, {“pigeon”: 2, ”crow”: 1}, which shows all files with ≥ 3 crows in the first case and ≥ 2 pigeon AND ≥ 1 crow in the second example). You are expected to create an API Gateway with a RESTful API allowing users to submit their requests, such as GET or POST. Your application might send a list of tags via specific GET parameters in the requested URL, for example: https://xxx.us-east-1.amazonaws.com/dev/search?tag1=crow&count1=1&tag2=pigeon&count2=2 or it can be a POST request with a JSON object including a list of tags and their counts. A response should include the list of URLs to all thumbnails of images and full URLs for videos that contain all the requested tags in the query. This can be a JSON message similar to the following: { "links": [ "https://xxx. s3. amazonaws. com/bird1-thumb. png", "https://xxx. s3. amazonaws. com/bird59-thumb. png", "https://xxx. s3. amazonaws. com/bird180-thumb. png " ] } Your query may require triggering one or more Lambda function that receives a list of tags from the database, i.e., logical AND operation, not OR operation between tags. In your UI, instead of showing the s3-urls of thumbnails you can preview the thumbnails found as the results. The user can request the full-size image by clicking on the thumbnails or sending another query to get the full-size image. In case of video files, show a link to allow the user to download the files. • Find files based on bird species: User can send a request similar to previous query without count, e.g. {”crow”}, your application will return all images, audios and videos contain at least one crow. • Find files based on the thumbnail’s URL: Users can input the s3-url of a thumbnail into the system and receive the corresponding full-size image s3-url. • Find files based on the tags of a file: The user can send a file as part of an API call. The list of all birds (tags) in the sent file is discovered and then all the files in the bucket containing those set of tags are found. Finally, as a response, the list of s3-URLs of the matching images thumbnails or audio/video files (similar to to the previous section) are returned to the user. You should ensure that the file uploaded for the query purpose is not added to the database or stored in s3. • Manual addition or removal of tags with bulk tagging: Your solution should also provide an API that allows end-users to add or remove tags from files. You are expected to create a POST API that enables users to submit their requests. A sample JSON message sent to add/remove tags is: { "url": [ "https://xxx. s3. amazonaws. com/image1-thumb. png", "https://xxx. s3. amazonaws. com/image60-thumb. png", "https://xxx. s3. amazonaws. com/image23-thumb. png", ] "operation": 1, /* 1 for add and 0 for remove */ "tags": [ "crow,1", "pigeon,2" ] } “operation” can be set to 1 or 0 for adding or removing a tag, respectively. The above request adds 1 ”crow” and 2 ”pigeon” tags to the tag list of the files in the list of URLs. If “operation” is set to 0, the tags are removed from the tag list of the file. If a tag is not included in the list of tags requested for deletion, you can simply ignore it in the request. • Delete files: The user can send a list of URLs to an API, and the system should remove the files and their thumbnails (in case of images) from S3, and all relevant entries from the database. 4.4 Tag-based Notifications (5%) Users can receive email notifications or updates related to files based on specific tags. For example, users can receive notifications when new images with specific birds are added or updated to the system. You can use AWS SNS for this purpose. 5 User Interface (15%) You can design a simple user interface (UI) (We suggest web-based GUI). But UI can be of any form that includes the following: upload files, submit queries, and view query results. A UI makes your system easier and more enjoyable to use. However, you have the option not to create a UI for application or have UI for some parts and not the others. If you opt to ignore UI or full-fledged UI, you can write scripts (e.g., Python) to handle communications with your application APIs. Please be aware that you might need to manually copy credentials provided by the identity pool to your scripts each time if you choose to work with the latter option. 6 Demo and Final Reports (25%) You should write an individual and team report on the developed application. Use a highly legible font such as Arial, Helvetica, or Times New Roman with a font size of 12 points. 6.1 Demo Performance 6.2 Team Report - 750 words Please prepare a team report based on the following guidelines: • Include an architecture diagram in the team report. For the architecture diagram, you must use AWS Architecture Icons (more info can be found here: https://aws.amazon.com/architecture/icons/). • Include a table to describe the role of each team member in your team report, You can provide a three-column table in your report that shows student name and id, percentage of contribution and elements of the project the member contributed (maximum of 100 words per member). • Report includes a simple user guide for testing your application. • Your report should include a link to the source code (GitHub, Gitlab or Bitbucket). All students must commit their code to a private code repository rather than delegate this to a single team member. This can also provide an evidence base if teams run into “issues” and how you contributed to the project. You should share your private repository with the whole teaching team. Please do not use a public repository to avoid any plagiarism. Note that the tables, architecture diagram, screen shots of UI, and references are excluded from the word count limit. 6.3 Individual Report - 750 words Please prepare an individual report based on the following guidelines: • In your individual report, you should describe your role in the project, and how you contributed to the delivery of the system (150 words). • Include a personal reflection on the team work your experience in working with other individual team members in your group. Comment on your teammates’ work, challenges the entire team faced, and how well the team worked (150 words). • You should answer the following questions (a paragraph with 100 word each): – What sort of design changes you will make to reduce chance of failures in your application? — What are the design changes you will make to increase the performance of your applications in terms of response time, query handling, and loading images? — What are the updates you will perform to your application if you have users from all over the world? Note that the individual report should be done with little or no consultation with other team members. Please be careful about plagiarism and collusion. 7 Submission You need to submit the following via Moodle: • Your team report in PDF format. Only one of the team members submit this report. Please do not forget to include your team members’ names and student ids. One submission per team! • Your individual report in PDF format. Every team member should submit this report. Please do not forget to include your name and student ids. 8 Demonstration Schedule, Venue and Peer Assessment • Teams are required to demonstrate the working application via Zoom. • All team members must be present at the demonstration time slot to answer questions. • The presentation should start with the architecture of your application as per your report, along with the design and implementation choices made. • Each team has up to 3 minutes to present their architecture. • This is followed by the demo of application as per examiners’ guideline for up to 15 minutes and Q&A. We will announce the demo date and time closer to the due date. • We will ask you to select a time slot during the allocated hours to join a Zoom meeting. • As mentioned earlier, this is a group assignment. If one of the team members is experiencing diffi- culties or has special circumstances, the rest of the team should proceed with the project without their fellow member. This aligns with industry practices where the entire project cannot be delayed due to a team member’s departure or absence. • At the end of the session, teams will participate in peer assessments regarding their fellow members’ contributions and involvement in the project. Those who do not actively contribute to the group project may be penalised for up to 50% off their group mark. • This feedback may be gathered through a Google form. Each team member is required to submit a confidential report detailing their role in the project and their experiences collaborating with team members. • These reports will be treated with utmost confidentiality, alongside your final report. The purpose of this evaluation is not to assign blame, but rather to ensure that all team members have an opportunity to provide comments and to guarantee active participation from everyone. • We encourage all team members to collaborate effectively towards achieving the project’s objectives to optimise your team’s performance. Should you observe a team member encountering difficulties with their tasks, please offer assistance. If a team member fails to fulfil their assigned tasks or deviates from the project’s expectations, we urge you to promptly inform the teaching team. Alternatively, you can utilise this opportunity to bring the matter to our attention.