A Smart Air Quality Monitoring System with Learning Capabilities
The time period ‘poor air quality’ is used to explain an setting that is not appropriate for humans/animals to be in, probably causing an immediate or long-term effect to the particular person breathing in this air. This project makes an attempt to design and develop an air monitoring gadget that can alert the registered user if there are any urgent points that come up inside the setting. The system may even try to warn the user of any uncommon readings, by comparing the current air pollution ranges with latest information.
The system will hook up with a Wi-Fi connection to ship text/email alerts to the user. Currently different types of air air pollution are generally monitored by multiple different gadgets, with this gadget aiming to combine these multi function. A machine learning strategy will be taken to consider any results that are sudden. This gadget can be considered in a working surroundings, where the business may be working with unsafe supplies, notifying the corporate of any unsafe air high quality levels.
This project offers the opportunity to check new applied sciences, combining a number of new areas of research. Exploring these applied sciences further will assist combine multiple residence monitoring units into one system. After researching this problem previously, there are ongoing issues with the rise of pollution levels, on account of this my project goals to analyze and warn people relating to these points. There are still many deaths attributable to house air monitoring techniques either being out of battery, or not put in throughout the property, the finish result of this project would be a profit as it will assist install all monitoring inside one location, meaning that a quantity of different gadgets would not need to be checked often.
· To investigate the implications of poor air quality, together with long run impacts.
· To examine the best suited hardware for this project.
· To examine using machine learning to supply correct readings.
· To create and show a system that can monitor protected ranges of air, alert the user of any anomalies and retailer historic knowledge for AI learning.
· To design and implement an android software that may receive real-time statistics from the hardware system.
· To create and comply with a project plan detailing when sure sections of the project should be completed by.
This chapter of the report will detail any present analysis regarding the project. The sources found might be analysed to discover a related justification for this project, while additionally discovering any gaps or connections between research areas. This section may even be used to discover the attainable analysis and project techniques/terminologies that would be relevant to this project. A evaluation of which applied sciences shall be selected to be used within the design/implementation section of this project will be included within this chapter weighing up the positives and negatives of quite a lot of choices available for use.
Within this part of the literature evaluate a number of various varieties of methodologies might be reviewed to find which would be most fitted for this project.
Within Figure 1, there are a quantity of different elements that have been considered relating to the result of the methodology for this project. The knowledge inside the table has been produced from the outcome of the below analysis.
When a waterfall project is initiated all timelines are set for each particular person chapter of the project, meaning that the timing for the project is already determined earlier than the project begins. This might turn into a difficulty because the different levels of the project all have hard deadlines, subsequently sure phases of the project may not be completed when the subsequent section of the project begins. (Balaji and Murugaiyan, 2012, p.27).
Time is one of the highest priorities within agile growth, with small deadlines being met frequently, so that any modifications inside a specification, may be modified throughout the artefact of the project. Time might be managed effectively with boards used to separate duties in an iterative manner. (Tarwani and Chug, 2016, p.418). This quote is related to each Scrum and Kanban as they’re both an agile methodology with the aim to create an artefact with many small iterative tasks. (Lei et all, 2017, p.59).
Due to the structure of the waterfall methodology, there are strict requirements as to what information members of the staff must possess within each section of the lifecycle. The teams will work individually to kind the overall artefact. If the phases are not completed appropriately then there could also be issues across the whole project, as some mistakes inside totally different teams may not be comprehendible by the opposite areas of the project group. (Kulkarni and Padmanabham, 2017, p.18).
An article by (Tanner and Takpuie, 2016, p.36) states that all through the scrum process, there are regular meetings to run by way of the progress of all the features of the Scrum board. This might include meetings with the client to debate any potential new developments which will need to be added/modified on the Scrum board. These conferences depend on the Scrum staff having different roles all through the project, such because the Scrum master and the product proprietor. This shows that the Scrum technique is reliant on group members, as there are particular role and meeting features that require a team to participate.
As mentioned with the Scrum methodology previously, a similar role-based method is taken for a Kanban project, with a senior administration staff persistently being involved with the project to offer the correct assist and knowledge to the the rest of the Kanban team. The staff will have regular meetings with other team members or external purchasers, to find attainable enhancements to the ongoing/completed duties. (Mojarro-Maga?a et al, 2018, p.7). This exhibits that this agile methodology can also be suited to a team-based surroundings, where common conferences are required to ensure all members of the team are required to offer their input.
The waterfall mannequin will only permit the scope of the project to be outlined at the start of the project lifecycle, all the initial knowledge must be to the usual of the expected consequence. All necessities ought to therefore be recorded to a very high commonplace. This provides no flexibility within the project, as any issues encountered all through the project wouldn’t have the ability to be resolved because of the linear construction of this technique. (Akbar et al, 2018, p.8067).
An article by (Lei et al, 2017, p.60) said that the scrum methodology is adaptable and that if certain elements of the unique specification were deemed unacceptable, then the specification could be adjusted to the correct approach. This signifies that using Scrum, it’s attainable for the project lifecycle to repeat until the necessary outcome has been reached.
The Kanban methodology will enable full management of any change throughout the project, with all high-level tasks being split into totally different sections, with the potential for using a Kanban board to manage any new/existing duties. Different sections could be created inside the Kanban board to allow for change, corresponding to a recycle bin, or totally different phases of the project. (Anderson, 2010, p.226).
All these methodologies enable for a while structure, with exhausting deadlines being available inside the waterfall methodology, due to this fact offering the general project with a structure that may be followed. (Balaji and Murugaiyan, 2012, p.27). Both agile methodologies permit for constant quick deadlines that must be met by meeting factors. (Tarwani and Chug, 2016, p.418).
All the reviewed methodologies are primarily based round a staff. This project will not be a staff project and the team structure of those methodologies will must be adapted to a project for a person. (Kulkarni and Padmanabham, 2017, p.18). As all sections of this project might be completed by a person, all areas should be coated by an individual’s skillsets. Although this is not a group project, an agile strategy may be adaptable as common conferences shall be held with the project supervisor to see the present progress of the project, this being just like the required conferences which are held to offer updates of labor e.g. wanting over a Kanban board. (Tanner and Takpuie, 2016, p.36).
The life cycle of a waterfall project is not going to enable for any modifications all through the project, which means that any modifications that might be required are not possible since sections of the project are frozen as soon as they’ve met their initial milestones. (Akbar et al, 2018, p.8067). One of the agile approaches would be best suited because the construction allows for adaptability as a outcome of fixed enable for change (Lei et al, 2017, p.60).
As this project is made up of numerous completely different chapters, a combination of two totally different methodologies shall be required. The analysis chapter will all be accomplished with a structured approach; therefore the waterfall method shall be best suited due to the onerous deadlines that allow sure timelines for particular sections, this shall be used to finish milestones of the analysis.
As proven by Figure 1 and the comparability of the totally different methodologies for all the researched areas, each agile approaches acquired a better mark regarding compatibility with this project, one of these agile approaches shall be used for the design and implementation phase of this project. Although each reviewed agile approaches acquired the identical total score, Scrum provides the project with a primary structure, involving regular conferences and particular deadlines for each quick set of tasks. (Nikitina and Kajko-Mattsson, 2011, p.159). Therefore, Scrum shall be used for the design and implementation phases of the project.
Existing Uses of Machine Learning Within Hardware
Existing Libraries for Machine Learning
(Abadi et al, 2017) wrote an article relating to the performance of TensorFlow as properly as a review of a few of the different options which are obtainable to the public. When a computation is made within TensorFlow, a dataflow graph might be created utilizing completely different mathematical features that had been used within the machine learning performance that has been developed, to indicate the trail that the information has taken all through the mathematical computation.
Another example of an present machine studying library is Java-ML. (Abeel et al, 2009, p.931) wrote an article discussing the makes use of of machine studying, together with how Java-ML could be integrated and structured within your personal languages which have been developed, confirming that this set of libraries is open supply and offers straightforward implementation of new libraries, including the chance to increase the functionality that the libraries already possess. Java-ML provides assist for Junit testing inside an IDE such as Eclipse or NetBeans. Java-ML supplies intensive documentation, with a large API handbook offering information on all attainable sections of the libraries which might be out there. (Java-ML, 2008).
Deeplearning4j (DL4J) is one other example of a machine learning library that is used within Java development. DL4J is open source and is commonly used as a business standard for machine studying frameworks. (Sakhawat, 2018, p.22). DL4J can be utilized across a number of different platforms, offering help for a lot of java-related languages, together with mobile-compatible languages similar to Kotlin. Python and C++ can be used. Just like the opposite reviewed libraries, DL4J is open source with access to a well-documented API file containing very important information regarding the libraries. (Deeplearning4j, 2019).
- Lei, H., Ganjeizadeh, F., Jayachandran, P. and Ozcan, P. (2017). A statistical analysis of the consequences of Scrum and Kanban on software growth projects. Robotics and Computer-Integrated Manufacturing, vol.forty three, pp.59-67.
- Akbar, M., Sang, J., Khan, A., Amin, F., Nasrullah, Hussain, S., Sohail, M., Xiang, H. and Cai, B. (2018). Statistical Analysis of the Effects of Heavyweight and Lightweight Methodologies on the Six-Pointed Star Model. IEEE Access, vol.6, pp.8066-8079.
- Anderson, D. (2010). Kanban. Sequim, Wash.: Blue Hole Press, p.226.
- Balaji, S. and Murugaiyan, M. Sundararajan (2012). Waterfall vs. V-Model vs. Agile: A comparative study on SDLC. International Journal of Information Technology and Business Management, vol.2, no.1, p.27.
- Tarwani, S. and Chug, A. (2016), “Agile methodologies in software maintenance: A systematic review”, Informatica (Slovenia), vol. 40, no. four, pp. 415-426.
- Takpuie, D. and Tanner, M. (2016) ‘Investigating the Characteristics Needed by Scrum Team Members to Successfully Transfer Tacit Knowledge During Agile Software Projects’, Electronic Journal of Information Systems Evaluation, vol.19, no.1, pp. 36-54
- Mojarro-Maga?a, M., Olgu?n-Tiznado, J., Garc?a-Alcaraz, J., Camargo-Wilson, C., L?pez-Barreras, J. and P?rez-L?pez, R. (2018). Impact of the Planning from the Kanban System on the Company’s Operating Benefits. Sustainability, vol.10, no.7, pp.1-24.
- Kulkarni, R. and Padmanabham, P. (2017). Integration of synthetic intelligence actions in software program development processes and measuring effectiveness of integration. IET Software, vol.eleven, no.1, pp.18-26.
- Nikitina, N. and Kajko-Mattsson, M. (2011). Developer-Driven Big Bang Process Transition from Scrum to Kanban. ICSSP 2011, ACM, pp.159-168.
- TensorFlow. (2019). Introduction to TensorFlow | TensorFlow. [online] Available at: [Accessed 20 Oct. 2019].
- Abadi, M., Isard, M. and Murray, D. (2017). A computational model for TensorFlow: an introduction. Proceedings of the first ACM SIGPLAN International Workshop on Machine Learning and Programming Languages – MAPL 2017, pp.1-7.
- Abeel, T., Van De Peer, Y. and Saeys, Y. (2009), “Java-ML: A machine learning library”, Journal of Machine Learning Research, vol. 10, pp. 931-934.
- Java-ml.sourceforge.net. (2008). Running regression tests | Java Machine Learning Library (Java-ML). [online] Available at: [Accessed 20 Oct. 2019].
- Sakhawat, Z., Ali, S. and Hongzhi, L. (2018), “Handwritten digits recognition primarily based on deep learning4J”, “Proceedings of the 2018 International Conference on Artificial Intelligence and Pattern Recognition” , pp. 21-25.
- Deeplearning4j.org. (2019). Deeplearning4j. [online] Available at: [Accessed 20 Oct. 2019].