KEMBAR78
Project Report | PDF | Agriculture | Support Vector Machine
0% found this document useful (0 votes)
32 views62 pages

Project Report

The project report titled 'Application of Machine Learning to Enhance Crop Production' focuses on using machine learning to improve crop yield by recommending suitable crops and optimal fertilizer amounts based on soil parameters. The Naïve Bayes Algorithm is employed for its efficiency and accuracy in high-dimensional data. The project aims to address the challenges faced by farmers in India, such as low soil fertility and crop yield, to enhance their profitability and living conditions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views62 pages

Project Report

The project report titled 'Application of Machine Learning to Enhance Crop Production' focuses on using machine learning to improve crop yield by recommending suitable crops and optimal fertilizer amounts based on soil parameters. The Naïve Bayes Algorithm is employed for its efficiency and accuracy in high-dimensional data. The project aims to address the challenges faced by farmers in India, such as low soil fertility and crop yield, to enhance their profitability and living conditions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 62

A Project Report

on
APPLICATION OF MACHINE LEARNING TO ENHANCE CROP

PRODUCTION

Submitted in partial fulfillment of the requirements

for the award of the degree of

Bachelor of Technology

in
Information Technology
by

Purushottam Varshney- 2000970130087


Paras Chandra- 2000970130074
Rohan Kumar Sinha- 2000970130095
Semester- VIII
Under the Supervision of
Ms. Sakshi Malhotra

Galgotias College Of Engineering & Technology


Greater Noida, 201306
Affiliated to

Dr. APJ Abdul Kalam Technical University, Lucknow


GALGOTIAS COLLEGE OF ENGINEERING &
TECHNOLOGY, GREATER NOIDA, 201306, UTTAR
PRADESH, INDIA.

DECLARATION
We hereby declare that the project work presented in this project report entitled
“Application of Machine Learning to Enhance Crop Production” in partial
fulfillment of the requirement for the award of the degree of Bachelor of Technology
in Information Technology, submitted to A.P.J. Abdul Kalam Technical University,
Lucknow, is based on our work carried out at Department of Information Technology,
Galgotias College of Engineering and Technology, Greater Noida. The work
contained in the report is original and project work reported in this report has not
been submitted by us for the award of any other degree or diploma.

Signature

Purushottam Varshney
2000970130087

Signature

Paras Chandra
2000970130074

Signature

Rohan Kumar Sinha


2000970130095

Date:
Place: Greater Noida

i
GALGOTIAS COLLEGE OF ENGINEERING &
TECHNOLOGY, GREATER NOIDA, 201306, UTTAR
PRADESH, INDIA.

ACKNOWLEDGEMENT

We have taken efforts in this project. However, it would not have been possible
without the kind support and help of many individuals and organizations. We would
like to extend our sincere thanks to all of them. We are highly indebted to Ms. Sakshi
Malhotra for their guidance and constant supervision. We are extremely indebted to
Dr. Sanjeev Kumar Singh (HoD-IT), Dr. Javed Miya (Project Coordinator),
Department of Information Technology, GCET for their valuable suggestions and
constant support throughout our project tenure.
We would also like to express our sincere thanks to all faculty and staff members of
the Department of Information Technology, GCET for their support in completing
this project on time. We also express gratitude towards our parents for their kind
cooperation and encouragement which helped us in the completion of this project.
Our thanks and appreciation also go to our friends in developing the project and all
the people who have willingly helped us out with their abilities.

Purushottam Varshney
(2000970130087)

Paras Chandra
(2000970130074)

Rohan Kumar Sinha


(2000970130095)

ii
GALGOTIAS COLLEGE OF ENGINEERING &
TECHNOLOGY, GREATER NOIDA, 201306, UTTAR
PRADESH, INDIA.

CERTIFICATE

This is to certify that the project report entitled “Application of Machine Learning
to Enhance Crop Production” submitted by Purushottam Varshney
(2000970130087), Paras Chandra (2000970130074), Rohan Kumar Sinha
(2000970130095) to the Galgotias College of Engineering and Technology, Uttar
Pradesh in partial fulfilment for the award of Degree of Bachelor of Technology in
Information Technology is a bonafide record of the project work carried out by them
under my supervision during the year 2023-2024.

Ms. Sakshi Malhotra Dr. Sanjeev Kumar Singh

(Assistant Professor) (HOD IT)

Dept. of IT

iii
ABSTRACT

Agriculture is the main source of earning for various farmers. Their earning largely
depends on the crop yield and the amount paid for their crops. In India, the crop yield
is not up to the expectation. This happens due to low soil fertility, not growing desired
crops according to the need of the soil, exhaustive over use of fertilizer. This low crop
yield adversely affects the famers living condition. The low crop yield is the major
reason for the plight of the farmers.

The present work focuses on recommendation of suitable crops to be sown in the


particular field or soil and also endorsing the farmer in sprinkling desired amount of
fertilizer in the soil for the particular crop so that the farmer can make significant
profit. Our work focuses on recommending four to five crops which are suitable for
growing in particular type of field or soil either corresponding to the N, P, K, pH
values entered by the farmer or district wise suitable crops. This system uses different
parameters such as pH, N, P, K values to predict the suitable crops. Our work also
facilitates endorsing farmer in sprinkling the required amount of fertilizer in their field
for the particular crop by using the N, P, K values. Our work uses the Naïve Bayes
Algorithm for recommending the suitable crops to the farmers. We have used this
algorithm as it is highly efficient, easy to implement and works for high dimensional
data. This algorithm is highly accurate in high dimensional space and data.

Our present work aims to address the low crop yield problem and offering farmers
choices to grow one or more crops out of four to five crops suitable for the particular
soil i.e. companion cropping so that they could make high profit and also maintains
soil fertility.

KEYWORDS- Naïve Bayes Algorithm, Crop Yield, High Dimensional Data,


Companion Cropping

iv
CONTENTS

DECLARATION ……………………………………………………………………. i
ACKNOWLEDGEMENT …………………………………………………………. ii
CERTIFICATE ……………………………………………………………………. iii
ABSTRACT ...……………………………………………………………………… iv
CONTENTS ………………………………………………………………………… v
LIST OF FIGURES ...……………………………………………………………... vi
LIST OF TABLES ………………………………………………………………... vii
CHAPTER 1: INTRODUCTION 1-10
1.1 PRECISION AGRICULTURE 1-3
1.1.1 How does Precision Agriculture work? 2
1.1.2 Benefits of Precision Agriculture 2-3
1.1.3 Use cases of Precision Agriculture 3-4

1.2 MOTIVATION 4
1.3 PROJECT DESCRIPTION 4-10
1.3.1 Description of the Theoritical Concepts 5-10

1.4 PURPOSE OF THE PROJECT 8-9


1.5 RESEARCH GAP 9-10

CHAPTER 2: LITERATURE SURVEY 11-18


2.1 BRIEF HISTORY 11-12
2.2 RELATED WORK 12-16
2.3 PROBLEM STATEMENT 17
2.4 PROPOSED SOLUTION 17-18

CHAPTER 3: SYSTEM DESIGN & METHODOLOGY 19-44


3.1 SYSTEM DESIGN 19-20
3.1.1 System Architecture 20

3.2 STRUCTURAL AND DYNAMIC MODELLING 21-24


3.2.1 Data Flow Diagram 21
3.2.2 Use Case Diagram 21-22
3.2.3 Component Diagram 22
v
3.2.4 State Chart Diagram 23
3.2.5 Workflow Diagram 23-24

3.3 PROJECT SCOPE AND FEATURES 24


3.4 METHODOLOGY AND TOOLS USED 24-30
3.4.1 Approach 24-25
3.4.2 Description of Modules 25-27
3.4.3 Used Technologies 27-30

3.5 IMPLEMENTATION 30-44


3.5.1 Environment Setup 30-32
3.5.2 Source Files 32-44

CHAPTER 4: RESULTS / SNAPSHOTS 45-47


4.1 HOME PAGE 45
4.2 CROP RECOMMENDATIONS 46
4.3 FERTILIZER RECOMMENDATIONS 46
4.4 CLASSIFIERS’ ACCURACY COMPARISON 47

CHAPTER 5: CONCLUSION AND FUTURE SCOPE 48-49


5.1 CONCLUSION 48
5.2 FUTURE SCOPE 48-49

REFERENCES 50-52

LIST OF FIGURES

vi
FIG. 3.1: ARCHITECTURE FOR BACKEND MODEL 20
FIG. 3.2: ARCHITECTURE FOR FRONTEND MODULE 20
FIG. 3.3: DATA FLOW DIAGRAM 21
FIG. 3.4: USE CASE DIAGRAM 22
FIG. 3.5: COMPONENT DIAGRAM 22
FIG. 3.6: STATE CHART DIAGRAM 23
FIG. 3.7: WORKFLOW DIAGRAM 24
FIG. 3.8: FOLDER STRUCTURE OF FRONTEND MODULE. 30
FIG. 3.9: CODE FILE FOR MAIN.JS WITH ROUTING. 31
FIG. 3.10: CODE FILE OF APP.JS COMPONENT. 31
FIG. 3.11: CODE FILE OF HEADER.JSX COMPONENT 32
FIG. 3.12: CODE FILE OF HOME.JSX COMPONENT. 33
FIG. 3.13: CODE FILE OF CROP RECOMMENDATION COMPONENT. 34
FIG. 3.14: CODE FILE FOR FERTILIZER COMPONENT. 37
FIG. 3.15: CODE FILE FOR NAÏVE BAYES ALGORITHM. ERROR! BOOKMARK NOT
DEFINED.

FIG. 3.16: CODE FILE FOR FERTILIZER COMPONENT. ERROR! BOOKMARK NOT
DEFINED.

FIG. 4.1: SCREENSHOT OF HOME PAGE OF APP.............................................................43


FIG. 4.2: SCREENSHOT OF SERVICES SECTION OF HOME PAGE.....................................43
FIG. 4.3: SCREENSHOT OF CROP RECOMMENDATION PAGE..........................................44
FIG. 4.4: SCREENSHOT OF FERTILIZER RECOMMENDATION PAGE.................................44
FIG. 4.5: SCREENSHOT OF CROP PREDICTION MODEL...................................................45
FIG. 4.6: SCREENSHOT OF FERTILIZER RECOMMENDATION MODELS..................ERROR!
BOOKMARK NOT DEFINED.

LIST OF TABLES
vii
TABLE No. TABLE NAME PAGE No.
Table.1 Literature Survey Table 17

viii
CHAPTER 1

INTRODUCTION
Food is a fuel that our body requires to carry day to day functions. Food directly
relates to crop farming. Cultivations of crops encompasses many agricultural practices
taken care by farmers. The economists failed to evolve a system fair to farmers. As
farmers are not technically skilled, so they require a smart solution that can assist
them in increases the efficiency and profitability of cultivation. And those solutions
can be produced by smart agriculture.
1.1 PRECISION AGRICULTURE

Smart agriculture, also known as precision agriculture, is an innovative approach to


farming that integrates technology and data analytics to optimize crop yields, reduce
waste, and minimize environmental impact. Precision agriculture (PA) is an
agricultural management concept based on monitoring, measuring and responding to
inter-field and intra-field variability of crops. PA is also sometimes referred to as
precision agriculture, satellite agriculture, on-demand agriculture, and site-specific
crop management (SSCM). Precision agriculture uses information technology (IT) to
ensure that crops and soil receive exactly what they need for optimal health and
productivity. It also ensures profitability, sustainability and environmental protection.
It takes into account aspects such as soil type, terrain, weather, plant growth and
yields in crop management.
Smart agriculture projects use a variety of cutting-edge technologies, including
sensors, drones, and machine learning algorithms, to collect and analyze data about
soil conditions, weather patterns, plant growth, and other key variables. By applying
advanced analytics and automation, farmers can make more informed decisions about
planting, fertilizing, watering, and harvesting crops, leading to increased efficiency
and profitability. Overall, smart agriculture represents an exciting opportunity to
transform the way we grow food and manage natural resources. By harnessing the
power of technology and data, we can create a more sustainable, efficient, and
equitable food system that benefits farmers, consumers, and the planet.
Our solution establishes a system which entitles all diverse set of skills in order to
support job of farmers efficiently and successfully. The system’s framework
encompasses 360° farming / all aspects of farming such as soil preparation, sowing of
seed, irrigation, manure and pesticides, and harvesting. Further it focuses on
optimized production by influencing on factors affecting crop growth i.e., internal and
external factors. Also, our system has the capability to detect plant diseases which are
unavoidable and needed to effectively deal with them and check them with the help of
timely prevention on specific types of crops. And the recommendation system
included in the solution recommends varies things based on different farming
parameters like soil, humidity, moisture, and climate. The system also covers the

1
companion planting practice of agriculture adhering to land limitations or for home
gardening.
Overall, the system enables the farmers to maximize the use of their resources like
land, seeds, water, etc., so that they can perform effective farming and can increase
their production as well as their profits using smart solutions. This system can also
help to promote sustainable agriculture practices by reducing the use of harmful
chemicals and promoting efficient use of resources. Also, it helps farmers make
informed decisions by providing recommendations and information based on data
collected.
1.1.1 How Does Precision Agriculture Work?

Precision agriculture relies on specialized equipment, software and IT services to do


its job. This includes access to real-time data on crop, soil and ambient air conditions,
along with other relevant information such as hyperlocal weather forecasts, labour
costs and equipment availability.
Real-time data is collected using sensors in the fields that measure the moisture
content and temperature of the soil and ambient air. Satellites and robotic drones can
also provide farmers with real-time images of individual plants.
1.1.2 Benefits of Precision Agriculture

After the data is collected, predictive analytics software uses the collected data to
provide guidance to farmers regarding crop rotation, optimal planting times,
harvesting, and soil management.
Agricultural control centres can integrate sensor data and imaging inputs with other
data to enable farmers to identify fields that need treatment and determine the optimal
amount of water, fertilizer and pesticides to apply.
This helps farmers avoid wasting resources and prevent runoff, ensuring the soil
contains the right number of nutrients for optimal health while reducing costs and
controlling the farm's environmental impact.
Cost reduction- The ability to precisely reduce the amount of fertilizer, herbicide or
seed in areas where it will not be economical to use is one of the key benefits of
precision agriculture.
Increased profitability- Increasing yields through the use of high-resolution
agronomic principles while reducing costs increases overall profitability. Farmers
Edge offers one of the lowest priced, high value packages in the industry through our
unique application of technology.
Increased sustainability- Ensuring that applied plant-based products actually reach the
plant and do not impact the environment elsewhere not only delivers better results, but
also promotes a safer environment and may even give you access to new markets for
your crops in the future. Using our accurate services, we have been able to quantify

2
that on average a Farmers Edge Variable Rate (VR) customer has reduced their
carbon footprint by over 10% while increasing production.
Better harvest- One of the most significant benefits of precision farming is the ability
to understand the nutrient levels on the farm and the soil types on the farm. We know
that fields and geographies are not created equal, and this can affect the amount of
nitrogen mineralization, water holding capacity, and much more. By understanding
these differences, we can make sure we don't overdo nitrogen, which can lead to
lodging, or we can increase nutrients like potassium that help with stability in areas
where it's low. To top it all off, we can do VR desiccation, which means we can have
lower desiccant on hilltops or sandy areas and higher rates on low-lying areas to
ensure your crop is easily harvested.
Increased land values- We know that accuracy is an excellent practice from an
agronomic point of view, but it can also affect the value of land prices, as shown here.
Higher resolution Understanding your farm- Farmers know their soil better than
anyone else. Precision farming gives you the ability to understand why certain areas
of your farm are not producing or producing better, giving you a basis for making
decisions that continually improve the farm.
Better understanding of yield in season- Using accurate imagery or accurate weather
services can not only help you understand areas of your farm that are facing problems
or need more attention, but with this combination of farm and field information, we
can provide an accurate yield forecast for the season. , enabling better decision-
making both from an agronomic point of view and for marketing or asset purchase
purposes.
They are all interconnected, but they are only the beginning of the value that precision
agriculture brings. As technology improves, the use of technology improves and we
continue to improve products, experiences and outcomes for farmers from the High
Level of Canada to the Deep South of Australia.
1.1.3 Use Cases for Precision Agriculture

In the past, precision agriculture was limited to larger operations that could support
the IT infrastructure and other technology resources needed to fully implement and
reap the benefits of precision agriculture.
Today, however, mobile apps, smart sensors, drones and cloud computing make
precision farming possible for agricultural cooperatives and even small family farms.
Some of the most popular applications for precision agriculture today include:
• Agricultural mapping and field survey. Camera-equipped drones can create
high-resolution field maps. This data can identify problem areas, monitor
crops and assess yield potential.
• Soil sampling and analysis. Mobile apps can collect data on soil type, fertility,
moisture content and more. This information can inform decisions about
irrigation, fertilization and other aspects of crop management.

3
• Weather monitoring. Hyperlocal weather data can help users decide when to
plant, how much to water crops, and when to harvest.
• Work management. GPS-enabled mobile applications can track the location
and activity of field workers. This data can optimize workflows and ensure
that tasks are performed efficiently.
• Device management. Farming equipment is expensive, and precision
agriculture can help farmers track their equipment, schedule maintenance, and
schedule repairs.

1.2 MOTIVATION

Our motivation towards building this project is to provide farmers a solution that is
backed by machine learning and data analysis which can be implemented by them
without any difficulties and that can be scalable. Our project will assist the farmers in
the following aspects:
Sustainable Agriculture: The solution promotes sustainable agriculture practices by
reducing the use of harmful chemicals and resources, such as water and fertilizer.
Additionally, by using data-driven approaches, our solution can help farmers to
minimize environmental impact and enhance biodiversity.

Improved Crop Management: Our system can improve crop management by


providing information on crop health, growth patterns, and potential threats. With this
information, farmers can take corrective actions and make informed decisions to
optimize crop yields.

Efficient Resource Utilization: The presented solution can improve resource


utilization by optimizing water, fertilizer, and energy use. By using sensors and data
analytics, farmers can determine the precise number of resources needed and
minimize waste.
Economic Benefits: This project can benefit farmers economically by reducing
production costs, increasing yields, and improving crop quality. Additionally, by
reducing waste and optimizing resource use, the solution can contribute to increased
profitability and income for farmers.
Overall, the presented solution provides numerous benefits to the agricultural sector
and society as a whole. Undertaking this smart agriculture solution project can help to
improve agricultural practices, increase food security, promote sustainability, and
contribute to economic development.

1.3 PROJECT DESCRIPTION

Our work focuses on recommending four to five crops according to the N, P, K, pH


values. We have developed user friendly interface for the farmers where the farmers

4
either can enter the details of the N, P, K, pH values or select the district. The system
will recommend four to five crops according to the details entered by the farmers or
will recommend the crops suitable for particular districts if the farmer is unaware the
details of N, P, K values. Our work also recommends the required amount of fertiliser
needed in the particular soil for specified crop. The whole front end is user friendly
and very easy to navigate. As we know that generally farmers have low technical
knowledge that’s why we have developed a user-friendly interface so that farmers
could easily navigate through the portal.

1.3.1 Description of the Theoretical Concept

1.3.1.1 Machine Learning

ML is a branch of artificial intelligence (AI) and computer science that focuses on


using data and algorithms to mimic the way humans learn and gradually improve its
accuracy. Over the next few decades, technological advances in storage and
computing power will enable some of the innovative products we know and love
today, such as the Netflix recommendation engine or self-driving cars. ML is an
important part of the growing field of data science. Using statistical methods,
algorithms are trained to produce classifications or predictions that reveal key insights
within data mining projects. These insights then drive application and enterprise
decision-making, ideally influencing key growth metrics as big data continues to
expand and grow, market demand for data scientists will grow, requiring them to help
identify the most important business questions and then the data that answers them
ML is a part of artificial brain (AI) and software engineering that focuses on using
information and computation to mimic the way humans learn, bit by bit, and work on
its accuracy. Over the following years and years, innovative improvements in capacity
and handling performance will empower several creative items we know and love
today, such as the Netflix design engine or self-driving vehicles. ML is a significant
part of the emerging field of information science.
The ml algorithm learning system is divided into three main parts.
• Decision-making process: Generally, ml algorithms are used for prediction or
classification. Based on some input data, which may or may not be labelled,
your algorithm will make an estimate of a pattern in the data.
• Error function: The error function is used to evaluate the prediction of the
model. If there are known examples, the error function can perform a
comparison and assess the accuracy of the model.
• Model optimization process: If the model fits the data points in the training set
better, the weights are adjusted to reduce the discrepancy between the known
example and the model estimate.

5
1.3.1.2 Naïve Bayes Algorithm

Naive Bayes is a classification algorithm based on Bayes' theorem, which assumes


that the features used to describe an observation are conditionally independent given
the class label. It's commonly used in machine learning for classification tasks,
particularly in natural language processing (NLP) for tasks like spam filtering and
sentiment analysis.
Over the past year, the incorporation of the Naive Bayes algorithm into our analytical
framework has proven to be a valuable asset, particularly in tasks involving text
classification, spam filtering, and sentiment analysis. Naive Bayes is a probabilistic
algorithm that is based on Bayes' theorem. Its "naive" assumption of feature
independence simplifies computations, making it computationally efficient and well-
suited for large datasets.
One of the most notable advantages of Naive Bayes is its ease of implementation. The
algorithm excels in scenarios where interpretability is critical, providing a clear
picture of how different features contribute to instance classification. This property is
especially useful in applications where decision-makers must understand the
reasoning behind predictions.
When training data is scarce, Naive Bayes has demonstrated robust performance in
situations with limited labelled data, making it a reliable choice. Its ability to handle
high-dimensional data, such as text data represented by word frequencies,
demonstrates its versatility in a variety of applications.
Furthermore, because of its ability to handle categorical and continuous data, Naive
Bayes is applicable to a wide range of datasets. Its ability to classify documents,
emails, and other text-based content is particularly impressive.
As we approach the one-year anniversary of incorporating Naive Bayes into our
analytical toolkit, the impact on streamlining classification tasks and providing
interpretable insights is clear. Naive Bayes is a reliable and efficient algorithm that
contributes to the success of our data-driven decision-making processes in a variety of
domains.

1.3.1.3 Random Forest

Over the past year, the strategic integration of Random Forest into our analytical
repertoire has proven to be a critical advancement in our data-driven decision-making
framework. Random Forest, a powerful ensemble learning technique, leverages the
collective intelligence of multiple decision trees to produce superior predictive
accuracy and resilience. Random Forest reduces overfitting concerns and improves
generalization capabilities through the bagging process, in which each decision tree is
trained on a distinct subset of the data, and the introduction of randomness in feature
selection at each split. This has been especially helpful in navigating the complexities
of our datasets, allowing for a more nuanced understanding of complex relationships.

6
Random Forest's adaptability is evident in its ability to perform well in a variety of
applications, including classification and regression tasks. Its ability to handle high-
dimensional data and its robustness in the face of outliers are perfectly aligned with
the requirements of our analytical endeavours. Notably, the ensemble nature of
Random Forest contributes to a heightened level of model robustness, ensuring
reliable predictions even in the presence of noise or outliers.
As we approach the one-year anniversary of incorporating Random Forest into our
analytical toolkit, the tangible impact on predictive accuracy and model resilience is
clear. This ensemble learning technique has become a cornerstone in our data-driven
decision-making processes, offering a sophisticated and dependable solution to the
challenges posed by complex datasets.

1.3.1.4 SVM

Support Vector Machines (SVM) integration has significantly improved our analytical
capabilities over the last year, particularly in classification and regression tasks. SVM
is a powerful supervised learning algorithm that is well-known for its ability to handle
both linear and non-linear relationships in our datasets. SVM works by determining
the optimal hyperplane that best separates data points from different classes while
maximizing the margin between them. This robust margin maximization helps SVM
generalize well to new, previously unseen data.
One of SVM's notable strengths is its adaptability, as it can be used for a variety of
tasks such as image classification, text categorization, and anomaly detection. The
addition of kernel functions broadens the applicability of SVM, allowing it to capture
intricate non-linear relationships in data. This adaptability fits in perfectly with the
variety of our analytical challenges.
Furthermore, SVM has been shown to be especially effective in high-dimensional
spaces, making it well-suited to our complex datasets. The ability to handle sparse
data and the potential for fine-tuning through kernel selection and regularization
parameters further enhance SVM's versatility.
As we commemorate the one-year milestone of integrating SVM into our analytical
toolkit, its impact on achieving accurate classifications and robust regression models
is evident.

1.3.1.5 Decision Tree

The use of decision trees is a critical component of our analytical approach,


contributing to a thorough understanding of complex decision-making processes.
Decision trees, which are extensively used in our data analysis framework, have
proven to be invaluable tools for predictive modelling. We successfully navigated
through multifaceted datasets by breaking down intricate decision points into a

7
visually accessible tree structure. The interpretability of decision trees has proven
especially useful in communicating insights to stakeholders and facilitating informed
decision-making. Our use of decision trees spans a wide range of domains, from
financial forecasting to risk assessment and customer segmentation. The adaptability
of decision trees in dealing with both categorical and numerical data is noteworthy,
providing a versatile solution to our analytical needs. As we approach the one-year
mark since incorporating decision trees into our methodology, the impact on the
accuracy and interpretability of our analyses is clear, cementing their role as a
cornerstone in our data-driven approach."

1.3.1.6 Logistic regression

Over the last year, the incorporation of Logistic Regression into our analytical
framework has played a critical role in improving our understanding of binary and
multi-class classification tasks. Despite its name, Logistic Regression is primarily
used for classification rather than regression. It uses the logistic function to estimate
the probability of a specific outcome by modelling the relationship between the
dependent binary or categorical variable and one or more independent variables.
One of Logistic Regression's distinguishing features is its ease of use and
interpretability. The algorithm provides a clear understanding of how each
independent variable affects the probability of a given outcome, making it a useful
tool for feature selection and model explanation. This transparency is especially
important in situations where interpretability is required.
Logistic Regression is a reliable and interpretable component in our data-driven
decision-making processes, contributing to the success of various projects across
various domains.
Furthermore, Logistic Regression seamlessly adapts to situations with imbalanced
datasets and offers insights into the odds ratios, aiding in risk assessment and decision
support. As we mark the one-year milestone of incorporating Logistic Regression into
our analytical arsenal, its impact on accurate classifications and the interpretability of
our models is undeniable. Logistic Regression stands as a reliable and interpretable
component in our data-driven decision-making processes, contributing to the success
of various projects across diverse domains.

1.4 PURPOSE OF THE PROJECT

Nowadays the small-scale farmers struggle to survive. More often they attempt for
suicide due to heavy loss and debt incurred by them. The main reason for their plight
is the low crop yield. Low crop yield happens due to not sowing exact seeds of the
crops which are suitable for their soil or agricultural land and the other reason is over
use of fertiliser. Over use of fertiliser leads to crop damage and thus resulting in low

8
crop yield. Sometimes over use of fertiliser decreases the quality of crops and
ultimately such crops remain unsold and thus got wasted.
So, our project aims to eliminate or minimise the loss incurred by farmers by assisting
farmers to grow crops which are suitable for that particular soil. Our project will
recommend four to five crops to farmers and farmers can have a choice to grow crops
which is feasible for them. By recommending four to five crops, we gave farmer the
choice for companion farming so that they can profits out of their agricultural
produce. Our project is also endorsing farmers to use optimal fertiliser for their crops
so that quality of crops can be improved and farmers can timely harvest.

1.5 RESEARCH GAP


The application of smart agricultural solutions has gained significant attention
in recent years, as technology has been increasingly incorporated into
traditional agricultural practices. Despite this, there are still several research
gaps that need to be addressed in the field of smart agricultural solutions.
Some of these gaps include:
i. Limited Adoption of Smart Agricultural Solutions: Despite the
numerous benefits of smart agricultural solutions, their adoption rate is
still relatively low, particularly in developing countries. There is a
need for further research to investigate the factors behind this limited
adoption and how to increase the adoption rates. Such research could
examine the financial barriers faced by small farmers, the lack of
technical knowledge and skills, and the challenges of integrating smart
technologies into existing farming practices.

ii. Lack of Standardization: Smart agricultural solutions rely on various


sensors, data collection methods, and data analytics tools. The lack of
standardization in these technologies can result in inconsistent and
incomparable data across different systems. Addressing this research
gap will involve developing standards for data collection, processing,
and interpretation across different smart agricultural solutions.

iii. Scalability of Solutions: Smart agricultural solutions need to be


scalable to accommodate different farming systems and environments.
Addressing this research gap will involve developing adaptable
solutions that can be easily implemented by small and medium-sized
farmers. Additionally, research could explore how to tailor solutions to
specific farming environments and local conditions.

iv. Cost-effectiveness: Smart agricultural solutions can be expensive,


which can be a significant barrier to their adoption, especially among
small farmers. There is a need for further research to develop cost-

9
effective solutions that are affordable to small and medium-sized
farmers. This research could involve exploring the use of low-cost
sensors, open-source technologies, and collaborative approaches to
implementing smart agricultural solutions.

v. Data Security and Privacy: Smart agricultural solutions rely heavily on


data collection and storage, which raises concerns about data security
and privacy. Farmers must have control over their data, and the data
collected should be secure. Addressing this research gap will involve
developing data security and privacy policies that protect farmers' data
and ensure their rights to data privacy. Additionally, research could
explore the use of blockchain and other technologies to secure data in
smart agricultural solutions.
Overall, addressing these research gaps is critical to ensuring the widespread
adoption of smart agricultural solutions. Through addressing these research
gaps, smart agricultural solutions can enhance agricultural productivity,
reduce resource waste, and promote sustainable agriculture practices.

10
CHAPTER 2

LITERATURE SURVEY

2.1 BRIEF HISTORY

Precision agriculture can be traced back to the 1950s and 1960s, when the first GPS
(global positioning system) satellites were launched.
However, it wasn't until the 1980s and 1990s that precision ag technology became
widely used by farmers. This was due to the development of more affordable and
user-friendly GPS receivers and mapping software, as well as the availability of
satellite imagery and other remote sensing data.
Since then, the field of precision agriculture has continued to evolve and expand with
the introduction of new technologies such as sensors, drones and autonomous
vehicles, as well as advances in data management and analytics tools. Today,
precision agriculture is used by farmers around the world to improve the efficiency,
productivity and sustainability of their operations.
The world is on the verge of a third modern agricultural revolution, and precision
agriculture is an important part of it. The first agricultural revolution, which took
place from 1900 to the 1930s, mechanized agriculture allowed each farmer to produce
enough for 26 people. Long after that, it was the 1990s when the second revolution
known as the Green Revolution took place. Scientific advances have introduced
genetically modified newer sets of crops that are resistant to pests and need less water,
so each farmer can feed 155 people.
The world population is expected to reach 9.6 billion by 2050, and food production
must double from current levels to feed every person. Key elements of the third
revolution will be advanced analytics and ever-improving IoT capabilities such as
drones for precision agriculture.
But how is precision agriculture different from what farmers and farms have already
been doing?
Precision agriculture and traditional cultivation differ greatly in practice. In traditional
agriculture, farmers apply the same amount of pesticides, fertilizers and irrigation

11
across the field, at prescribed times and frequencies, according to general
recommendations for the region.
However, there are always differences in biological, physical and chemical
parameters even within one field. Treating fields uniformly without considering
inherent differences leads to overuse of inputs in fertile land and underuse in poor
areas. This inefficient use of land, water, fuel, fertilizers and pesticides increases costs
and impacts the environment.
Precision agriculture focuses on internal differences in farmland and optimizes input
through variable rate application (VRA). To implement VRA, detailed spatial data
across fields and sites need to be collected through geographic information systems
(GIS) and crop life cycle using GPS and remote sensing. Precision agriculture tools in
use include precision irrigation systems, yield mapping and monitoring tools, and
information management systems. Using advanced descriptive, predictive and
prescriptive analytics engines to analyse data, precision agriculture makes data-driven
management decisions and implements cost-effective and environmentally friendly
solutions for sustainable modern agriculture.

2.2 RELATED WORK

[1] Dr. S. Usha Kiruthika, Dr. S. Kanaga Suba Raja. “Design and
Implementation of Fertiliser Recommendation System for Farmer”. This paper
aims to estimate nutrient dimension of soil and suggest appropriate fertilizer.
Their methodologies comprise of four stages-
(i) Soil analysis
(ii) Data preprocessing
(iii) Data Analysis
(iv) Recommendation.
They have collected the NPK ratio of the soil nutrient using NPK sensor. The
gathered data are processed using machine algorithm to identify the correct fertiliser
required for that soil. Their proposed model computes the ratio of NPK for the given
soil sample and thereby recommends the required fertiliser for the given soil.
Their proposed model estimates the content of nutrient through sensor and then
recommends the desired amount of fertiliser. They have used Java API for data
processing and for calculating the factors of the soil.
[2] Suresh, G., A. Senthil Kumar, S. Lekashri, and R. Manikandan. “Efficient
Crop Yield Recommendation System Using Machine Learning for Digital
Farming”. This proposed system uses the data acquired by the location of the land
and suggests the effective crops based on the soil fertility of that area. The system also
provides the required quantity of fertilizers.
The work mainly used two datasets to produce the required output. One dataset is the
sample dataset of location and its soil fertility parameters and the other one is for the

12
crop data according to soil parameters. In order to suggest crops and fertilizer, the
framework utilizes the calculations of support vector machine.
This proposed work utilizes supervised machine learning algorithm to suggest
appropriate crops to maximize the yield. The system recommended particular crops
based on nutrients (N, P, K and pH) values of the soil for the crops like rice, maize,
black gram, carrot and radish.
[3] Aqeel-ur-Rehman, Abu Zafar Abbasi, Noman Islam and Zubair Ahmed
Shaikh, “A Review of Wireless Sensors and Networks’ Applications in
Agriculture”. This particular paper reviewed the applications of wireless sensors,
WSN technology and its network application in various aspects of agriculture. Also,
this paper presented the different systems available for this particular domain.
This paper presented the use case of different technologies in different aspects of
agriculture such as irrigation, fertilization, pest control, horticulture and greenhouse.
For the irrigation purpose, they reviewed the work of Damas et al. [4] in which they
developed and tested remotely controlled, automatic irrigation system which utilizes
WLAN network to connect all the regions and control them from a control system.
And also, the work of Morais et al. [5] which implemented wireless data acquisition
network to collect climate and soil moisture data for smart irrigation in Portugal.
Similarly, for fertilization they reviewed different works in which GPS technology,
sensors and Bluetooth technology was used to collect the data of soil and its nutrients
to maximize crop yield.
The paper concluded that there are various applications of technologies in different
aspects of agriculture but are very complex to implement and require major technical
support. Also, the use of WSAN based solutions requires the development and
utilization of low-cost sensor nodes and architecture.
[6] Dhruvi Gosai, Chintal Raval, Rikin Nayak, Hardik Jayswal, Axat Patel,
“Crop Recommendation System using Machine Learning”. The bad quality of
crop is also due to the either excessive fertilizer or using not enough fertilizer. This
proposed system of IoT and ML is using the soil sensors and collecting the
information by observing the soil parameters. This lowers the probability of the
degradation of the soil and helps maintain crop health.
By the use of Kaggle dataset based on different soil and climate parameter for
different crops has been picked and pre-processed means removal of the noise and
also identifying most suitable and relevant attribute from the dataset. Then by the help
of the Decision Tree classifier methodology, the model was trained and by the help of
SVM crops are classified as well as regression challenge. It is mainly used in
classification challenge and using logistic regression for the model binary dependent
variables. XG boost is used to maintain the accuracy.
This gives an intelligent crop recommendation system which can be used by farmer
all over the India. This also help them in making better decision according to the
different parameters.

13
[7] Qiming Zhou & Ali Ismaeel, “Integration of maximum crop response with
machine learning regression model to timely estimate crop yield”. This literature
utilizes the satellite remote sensing data to predict crop yield. The collected data is
then utilized by machine learning models to predict the yield.
In the study, they integrated the maximum Enhanced Vegetation Index (EVI) during
the crop growing season with the Machine Learning Regression (MLR) models to
estimate the crop yield for wheat and rice in Pakistan’s Punjab province. They utilized
the five-fold cross-validation model for predictive accuracy.
The proposed system was able to predict the crop yield 6-8 weeks before he harvests.
The prediction then further can be utilized in the formulation of agricultural policies
for social, environmental and economic progress.
[8] N. Bhavya, K. Govinda, “Targeted Yield Approach of Fertiliser
Recommendation for Sustaining Soil and Crop Productivity.” This research paper
aims to focus on fertilizer recommendation to increase crop production. This research
uses STCR (Soil Test Crop Response) technique, which uses the test values of soil
and targeted yield equation. STCR is one of the most scientific approaches to nitrogen
application for crops among the different types of fertilizer recommendation.
They used STCR Approach as:
i. To develop a relationship between soil test values and crop response to
chemical fertilizer and organic manures.
ii. To obtain a basis for making fertilizer recommendations for targeted yield.
iii. To evaluate various soil test methods for their suitability under field
conditions.
iv. To evaluate the targeted yield equations in the farmer’s field through
follow-up trials.
Their research came to find that STCR approach is significant and economically
viable than the STL (Soil Test Laboratory) technique. Their model also predicts soil
test values after harvesting which ultimately serves as the initial value of soil test
value for next crop to grown in that field. In this way they reduce the effort as well as
saves time.
[9] Dr. N. Suma, Sandra Rhea Samson, S. Saranya, G. Shanmugapriya, R.
Subhashri, “IOT Based Smart Agriculture Monitoring System”. This literature
describes about the proposed system that makes the use of various sensors and Wi-Fi
and cameras with microcontroller.
The proposed system includes various features like GPS based remote controlled
monitoring, security, leaf moisture, irrigation facilities, moisture and temperature
sensing. In the framework, they deployed various sensors in different regions of the
field such as moisture sensor, temperature sensor and PIR sensor. And the data
collected through these sensors are connected to the microcontroller through RS232.
The system includes both automatic and manual modes.

14
Remote controlled monitoring can be done from anywhere with the help of the
application developed which determines temperature, humidity, moisture and intruder
detection. The system only supports small fields and it can be enhanced with cost
effective architecture.
[10] Abhinav Sharma, Arpit Jain, Prateek Gupta, Vinay Chowdary, “Machine
Learning Application for Precision Agriculture”. This research paper presented a
review of application of machine learning in the dimension of agriculture. Their
research focussed on the prediction of different soil parameters. The different soil
parameters are organic carbon and moisture content, crop yield prediction, species
detection and weed detection. They have used computer vision of machine learning
for classifying different sets of images of crops to assess crop yield and quality.
In their research paper they have also analysed the performance of different machine
learning algorithms. They have also depicted the different types of learning algorithm
used for soil and weather prediction.
[11] M Vetrivel, U. Bagavathi Ammal, “Soil Test Based Fertiliser Prescription
Equation for Rice in Inceptisols of Puducherry, India” This paper uses the STCR
study data conducted during 2015-16 in Karikkaklampakkam village of U.T
Puducherry for rice under IPNS to develop the fertiliser adjustment equation for
different target yield. They calibrated the different fertiliser adjustment equation of
target yield of 6t per ha and 7t per ha of rice.
They also disclose the N, P, k value for the soil after harvest so that the farmer can
have idea of the required fertiliser to be used for next crops.
Their research also concluded that for getting higher yield and better nutrient uptake
by rice IPNS Treatment is mor better than NPK alone treatment. Their research also
demonstrated that cost of production can be reduced through IPNS treatment and also
highlighted the optimal use of fertiliser for targeted Yield. Their research also focused
on improving soil fertility of soil through optimal use of fertiliser.
[12] Ramesh, Vijay, “Data mining techniques for crop yield prediction” This
paper presents different crop yield forecasting strategies using information mining
methods.
The agrarian framework is unpredictable because it handles huge informational
circumstances that comes from different components. The expected harvest yield was
the subject of interest for producers, specialists and agricultural associations. In this
post, the creators focus on the use of information mining methods in the agrarian
field. Characteristic data mining methods such as K-Means, K-Nearest Neighbour
(KNN), Artificial Neural Networks (ANN) and Support Vector Machines (SVM) for
continued use of agribusiness information mining practices.
Innovation in information mining has seen incredible progress due to rapid
improvement software engineering, artificial intelligence. Information mining is an
emerging research field investigation of yields of horticultural crops. Information
mining is a way to recognize the hidden examples from a huge amount of

15
information. Expected yield is a crucial rural issue that needs to be resolved
depending on available information. The problem of expected return can be solved
using information mining methods.
[13] Satish Babu, “A Software Model for Precision Agriculture for Small and
Marginal Farmers”. The article outlines the requirements and planning needed to
develop a software model for precision agriculture. He discusses the basics of
precision agriculture in depth. The author starts from the basics of precision
agriculture and moves towards the development of a model that would support it. This
paper describes a model that applies Precision Agriculture (PA) principles to small,
open farms at the individual farmer and crop levels to influence the degree of
variability control. The comprehensive goal of the model is to provide direct advisory
services to even the smallest farmer at the level of his smallest crop plot using the
most available technologies such as SMS and email. This model was designed for the
scenario in the state of Kerala, where the average farm size is much lower than most
of India. Therefore, this model can be deployed elsewhere in India with only minor
modifications.
[14] Anshal Salva, Parul Dhawan, Himatanya Bhadada, Nivedita Israni, Alisha
Mandholia, Sanya Bhardwaj, “Survey of Classification Algorithm for
Formulating Yield prediction Accuracy in Precision Agriculture”. The article
conducts a comparative study of classification algorithms and their performance in
predicting yields in precision agriculture. These algorithms are implemented in the
dataset collected over several years in soybean crop yield prediction. The algorithms
used for yield prediction in this paper are Support Vector Machine, Random Forest,
Neural Network, REPTree, Bagging and Bayes. The conclusion made at the end is
that bagging is the best yield prediction algorithm out of the above algorithms because
the error variance of bagging is minimal with a mean absolute error of 18985.
[15] R.Harine Rajashree, C.Kavya, S.Pudumular, E.Ramanujam, “Crop
Recommendation System for Precision Agriculture”. This paper focuses
recommending crops based on the soil condition through an ensemble model with
majority voting using techniques using random tree, CHAID, KNN and naïve bayes
algorithm. In this paper they have used ensembling technique for prediction with high
accuracy.
Ensemble is a data mining model also known as the Committee Methods or Model
Combiners, that combine the power of multiple models to acquire greater prediction,
efficiency than any of its models could achieve alone.
In this research, they have used Random Tree Model for decision tree, CHAID
(another type of decision tree technique) etc.
[16] S. Kulkarni, S. N. Mandal, G. S. Sharma, M. R. Mundada and Meeradevi,
"Predictive analysis to improve crop yield using a neural network model". This
research paper utilized DL models to predict rice crop yield. The authors utilized soil
properties and nutrients measurements recorded over 31 years and historic rainfall

16
data. The input data was fed to recurrent neural network models for crop yield
prediction. For effective prediction the authors explored different activation functions
viz. sigmoid, reLu, and linear in the neural network.
[17] Priyadharshni A, Swapneel Chakraborty, Aayush Kumar, “Intelligent Crop
Recommendation System using Machine Learning”. This research work has
proposed a system to assist the farmers in crop selection by considering all the factors
like sowing season, soil, and geographical location. Furthermore, precision agriculture
is being implemented with a modern agricultural technology and it is evolving in
developing countries that concentrates on site-specific crop management.
2.3 PROBLEM STATEMENT

i. To demonstrate the application of Machine Learning in the field of precision


agriculture for improved resource use efficiency, productivity, quality,
profitability and sustainability of agricultural production.
ii. To develop an application that can recommend proper crops to be sown based
on the condition of soil parameters and climate and also to provide fertilizer
related recommendations required for the crop.

2.4 PROPOSED SOLUTION

Plant diseases are having an effect on agriculture generally and monoculture


specifically. As we all know, plant diseases cause huge losses for farmers, causing
some to go bankrupt and be unable to repay their loans, i.e., they are unable to live a
prosperous life. So, what if we could predict the upcoming diseases on these plants at
an early stage, allowing them to take major precautions?
As we all know, farmers lack proper technological and agricultural chemical
knowledge, and as a result, they are unable to select the proper crop to be grown
based on favourable natural conditions such as soil, climate, and rainfall, and they are
also unable to estimate the amount of fertiliser they need to provide to plants in order
to keep them healthy, and as a result, they are increasing the amount of chemical in
the soil, underground water, and also in fruit. Whereas not knowing what type of crop
to grow degrades soil fertility and causes losses.
Although some farmers have limited land, they are unable to grow more than one crop
on the same field and thus cannot maximise profits. They can, however, told what
types of crops can be grown together because some crops require the same climate
conditions.
So, keeping all of these issues in mind, our project proposes a crop, a companion crop
based on soil and climate conditions, and estimates the amount of fertiliser required in
the crop, as well as future diseases that may attack the crop.

17
Literature Survey Comparison Table
Paper Name Date/ Problem Methodology Outcomes
Volume/ Statement
Issue
Design and Vol.83, Estimate nutrient Collection of NPK Analysis of
Implementation of March- dimensions of soil ratio of soil through soil nutrients
Fertiliser April. and suggest sensors and fertilizer and
Recommendation 2020 appropriate estimation through estimation of
System for Farmer fertilizer. ML algorithms. required
Used Java API for fertilizers.
data processing.

Efficient Crop Yield Volume Crop NPK quantity data Crop


Recommendation 10, No.1, recommendation collection, prediction and
System Using Machine 2021 using soil Crop and fertilizer quantity of
Learning for Digital parameters (NPK) recommendation, fertilizer
Farming SVM required
A Review of Wireless Volume Reviewed Use cases of Concluded the
Sensors and Networks’ 36, Issue applications of technologies in best
Applications in 2, 2014 wireless sensors different areas like technologies
Agriculture and WSN irrigation, that are usable
technologies. fertilization, etc. in cost
effective
manner.
Crop Recommendation Volume 7, Proposed system IoT, Convolutional Produced
System using Machine Issue 3 of IoT and ML is Neural Network, informed
Learning May-June enabled for soil KNN, Naïve bayes, decisions
2021 testing using Regression about which
sensors. crop to
plant based on
soil condition.
Integration of 2021, The early Remote sensing Estimation of
maximum crop VOL. 24, prediction of crop data, SVR, ML crop yield
response with machine NO. 3 yield and its regression model, time period in
learning regression spatial Decision Tree, weeks.
model to timely distribution in the Gaussian process
estimate crop yield region. regression
Targeted Yield Volume Fertilizer Develop a relation STCR
Approach of Fertiliser 5,2023, recommendation soil test value and approach is
Recommendation for to increase crop crop response and economically
Sustaining Soil and production using evaluation of viable than
Crop Productivity STCR technique. targeted yield STL
equations. technique.

18
Soil Test Based Volume: 6 Develop and Gather the STCR Results of
Fertiliser Prescription Issue: 3, calibrate the study data and NPK values
Equation for Rice in December fertilizer calibrate the of soil before
Inceptisols of 2017 adjustment fertilizer adjustment and after
Puducherry, India equations for rice equations for the harvest and
crop. target yield of 6 – 7 STCR
t per ha of rice. adjustment
equations.

CHAPTER 3

SYSTEM DESIGN AND METHODOLOGY

3.1 SYSTEM DESIGN

Machine learning is a versatile tool that can be applied to a wide range of problems. It
is important to note, however, that ML algorithms are not perfect. They are human,
and they can make mistakes and be biased. It is critical to carefully evaluate and use
machine learning algorithms.
Over the last year, the integration of various machine learning techniques into our
analytical framework has marked a transformative journey in leveraging data to make
informed decisions. Machine learning algorithms have been critical in extracting
patterns, predicting outcomes, and uncovering insights from large datasets. Several
key algorithms have been critical to our data-driven efforts.
Machine learning is a subset of AI that allows computers to learn without being
explicitly programmed. It accomplishes this by allowing computers to recognize
patterns and make predictions based on data. Machine learning is used in numerous
applications, including:
Machine learning algorithms can be used to analyse data and predict future events in
predictive analytics. For example, machine learning can be used to forecast customer
churn, fraud, or stock prices.
Machine learning algorithms can be used to recommend products, movies, or music to
users based on their previous actions and preferences.
Natural language processing (NLP) is the use of machine learning algorithms to
understand and generate human language. For example, machine learning can be used
to translate languages, create chatbots, and more.
Just like every model, our model also consists of various modules. In this model there
are four modules and they are-:
a. Data Preparation Module
b. Backend Module

19
c. Frontend Module
d. Integration Module
The system design of our project typically involves several key components and steps.
Here's an overview of the system design:
1. Dataset Preparation Module - The data is collected from previous research
work and Kaggle dataset repository. Further, data cleaning and modification is
done to prepare final dataset preparation.
2. Backend Module - Various ML algorithm’s is tested along with their accuracy
and the finally the model is trained with highest accuracy algorithm.
3. Frontend Module - Various libraries is used such as React JS, React-Router-
Dom, Tailwind CSS and other libraries. Designing of Application UI/UX and
its implementation.
4. Integration Module - In this module, synchronisation of backend and frontend
is done. We have used Flask to connect frontend with backend through API.

3.1.1. SYSTEM ARCHITECTURE

1. BACKEND MODULE

Fig 3.1: Architecture for Backend Model

2. FRONTEND MODULE

20
Fig 3.2: Architecture for Frontend Module
3.2 STRUCTURAL AND DYNAMIC MODELLING SYSTEM

3.2.1 DATA FLOW DIAGRAM:

DFD (Data flow diagram) is a diagram that shows how data moves through a system.
It is a visual tool that shows the flow of information and processes in an organization
or institution regarding the transformation of materials into products through various
processes.
Precision farming technology uses machine learning to follow a simple flow of data.
First, collect important information about the soil, such as nitrogen, phosphorus,
potassium concentrations, and climactic characteristics from the user. Then that data
is passed through the Machine Learning algorithm and predicted the output and based
on the predicted output the module provides efficient solution for the soil based on the
amount to N, P, K in terms of the fertilizer. The predicted crop and solution are
presented to users through an interface, enabling them to make informed decisions.

Fig 3. 3 Data Flow Diagram

21
3.2.2 USE CASE DIAGRAM:

A use case diagram is a visual representation in the Unified Modelling Language


(UML) that describes the interaction between users (actors) and the system and
focuses on how the system responds to different users. The use of diagrams is
especially useful for capturing and communicating functional requirements in the
early stages of software development.
User interact with the interface and enter the data like Nitrogen, Phosphorus,
Potassium and etc. on the web page and that information is passed through the
algorithm and which recommends the crop and based on the data entered by the user
and that output is presented using interface also passed through other module for the
prediction of fertilizer as the solution to condition of the soil.

Fig 3. 4 Use case diagram

3.2.3 COMPONENT DIAGRAM

Component Diagram is a UML (Unified Modelling Language) diagram that shows the
organization and relationship between components in a system. A component is a
modular, flexible and independent part of a system that encapsulates functionality
and/or data. Diagrams are useful for visualizing the decision-making structure of a
system and how components interact.
Our Precision agriculture consist of the mainly 3 important components user interface,
machine learning module, dataset. Dataset is associated with the machine learning
module and which works for recommendations of the crops and fertilizer based on the
input received from the user through user interface and present it using the user
interface for the right decision of the user.

22
Fig 3. 5 Component diagram
3.2.4 STATE CHART DIAGRAM

A state chart is a UML (Unified Modelling Language) diagram that represents the
various states an object or process can be in and the transitions between those states. It
is particularly useful to model the dynamic aspects of a system, showing how the
system responds to events and changes its state accordingly.
State chart diagram of precision agriculture consist of the different states where user
input’s the enter N, P, K, and other climatic characteristics and then process the data
and pass through naïve bayes algorithm predict the crop and fertilizer a/c soil nature
and the present it using user interface and stop the process.

Fig 3.6 State Chart Diagram

23
3.2.5 WORKFLOW DIAGRAM

A functional diagram is a visual representation of a process or operation that shows


the steps, decisions, and interactions involved in completing a specific task or
achieving a specific goal. Workflow diagrams help organizations and individuals
understand, analyse and optimize their processes. Web page sends the request to the
backend machine learning algorithm for the output according to the feed input by the
user. Use specialized selection and engineering methods to identify the most
important features and create new ones. The selected features and previous data are
used to train machine learning models. The training model is evaluated to evaluate its
effectiveness and accuracy. After the evaluation, the model will perform the
prediction process by inputting new data to obtain the recommended crop. Finally, the
estimated crop is presented to the user through the interface, allowing them to make
an informed decision. The diagram works to clarify and explain the entire building
estimation process and makes improvements to obtain reliable estimates.

Fig 3. 7 Workflow diagram

3.3 PROJECT SCOPE AND FEATURES

1. The application provides functionality of analysis of soil nutrients and


recommending crops based on parameters like – soil macro nutrients, pH,
temperature, and humidity.
2. It also provides recommendations of fertilizers and manure based on soil
nutrients and crop.
3. The project can be implemented in real world through integration with real
time dataset.
4. Accuracy of the recommendation can also be increased with the integration of
IoT.

24
3.4 METHODOLOGY AND TOOLS USED

3.4.1 Approach

Our approach towards building this project was that first we discussed and selected an
appropriate problem statement to work upon keeping in mind it’s relevancy and
practicality. While analysing the problem and selecting it we ensured that it should
remain in accordance with the need of project and curriculum.
After this, our next step was to search for the various resources and information
required for our project from different sources available. We browsed on web and
gone through several sites and documentations and also discussed from teachers and
our seniors for problem analysis and work required.
Then after, we searched for the solutions to our problem statement. We researched
and discussed the various approaches already available and what our solution should
be and we collected relevant data regarding the development of our project.
Then we distributed the work among us regarding various phases of development of
our project. First, we’ve done the designing part of the app and then gained some
basic knowledge about the topics to be used like frontend technologies, ML
algorithms, APIs and various Python libraries to be used and then we studied tutorials
and documentations present on the web related to our project.
At the point of studying tutorials, we’re also coding, implementing, testing, and
debugging to develop our intended application.
Finally, at the later stages of this project when the project was almost completed, we
did tests and analysed our model if it is working as intended or not and fixed some
minor bugs to avoid the malfunctioning of the system. Also, we’ve tested the
application on real world data available.

3.4.2 Description of Modules


 Dataset Preparation Module –
Proposed methodology for crop recommendations can be implemented on
Agricultural Crop dataset available on Kaggle dataset repository of the previous
work [2]. This dataset consists of parameters like the ratios of Nitrogen,
Phosphorous, and Potassium, pH level of soil, temperature required for the crop,
humidity conditions, rainfall and crop labels. The dataset is then cleaned and
prepared according to the need of our project including labelling and removal of
obsolete features. The sample of finally prepared crop dataset is:

25
Table.2: Crop dataset sample

For fertilizer recommendations, the dataset is prepared from the STCR


recommendation report of ICAR-IISS, Bhopal. The dataset consists of the
coefficients of regression equations for respective crops, soil and field location.
These coefficients are required for formulizing the STCR fertilizer
recommendation equations to calculate the fertilizer quantity required for
achieving targeted yield. The Sample for the dataset is:

Table.3: STCR Regression eq. coefficients dataset sample

 Backend Module –
The backend module consists of model selection and model training part. In
model selection, different ML algorithms as discussed before in the introduction
chapter are trained on the dataset to compare their accuracies. Naïve Bayes
algorithm shown the highest accuracy of 96.14% among other four algorithms, so
it is selected for utilizing in the project for recommendations. After the model is
trained, it is tested on test dataset. The model was found to be correctly
recommending the crops.

For fertilizer recommendation, the module utilizes the STCR adjusted fertilizer
recommendation equations to provide the quantity of fertilizer required to produce
the targeted yield of the crop provided. The module estimates the soil nutrient
content as provided by the user and recommends the suitable fertilizer content

26
required for targeted yield by utilizing the particular STCR fertilizer
recommendation equations for the provided field location and soil type.

The general STCR equations used for recommendations are:

FN = ( NR
CF
×100 ×T )−(
CS
CF
× SN ) (1.1)

F P 2 O 5= ( CF
NR
× 100× T )−(
CS
CF
×S P O )
2 5 (1.2)

F K 2 O= ( NR
CF
× 100 ×T )−(
CS
CF
× S K O)
2 (1.3)

Where, FN: fertilizer N (kg ha-1); FP2O5: fertilizer P2O5 (kg ha-1); FK2O:
fertilizer K2O (kg ha-1); SN: soil test value of available N (kg ha-1); SP2O5: soil
test value for available P2O5 (kg ha-1); SK2O: soil test value for available K2O
(kg ha-1); NR: nutrient requirement; CF: contribution of nutrients from fertilizer;
CS: contribution of nutrient from soil. [8]

The ratios ( CF
NR
) and ( CF
CS
) varies according to vivid crops, soil type and
locations. So, we’ve substituted them variables ai and bi respectively for above
three equations as:

FN =(a¿¿ 1 ×T )−(b1 × SN )¿ (1.4)


F P2 O5=(a¿¿ 2 ×T )−(b 2 × S P2 O5)¿ (1.5)
F K 2 O=(a¿¿ 3 ×T )−(b3 ×S K 2 O)¿ (1.6)

The user inputs the crop he wants with soil nutrients content and the location of
field. Now, with the details of location and crop, variables ‘a’ and ‘b’ are fetched
from the dataset prepared and fertilizers are calculated and recommended.

 Frontend Module –
The frontend module functioning is to collect the parameters required for
recommendations from user through the UI and send it to backend to process it
and then to display the results to the user. The UI/UX is built using React JS and
Tailwind CSS along with some other libraries like- React-router-dom, html-

27
parser, etc. The functionalities and wiring of components are also done using
React. To connect the frontend module with backend and establish
communication between them an API is crafted with the help of Flask.

 Integration Module –
The integration module is developed using Flask web framework for Python. The
working of integration module is to synchronise the frontend with backend for
proper transfer of data and functions. This module works as an API for the project
and all communications are done using API calls.

3.4.3 Used Technologies


In order to develop the intended app, the technologies used with their role in the
project are discussed.
3.4.3.1 Python
Python is an easy to learn, powerful programming language. It has efficient high-level
data structures and a simple but effective approach to object-oriented programming.
Python’s elegant syntax and dynamic typing, together with its interpreted nature,
make it an ideal language for scripting and rapid application development in many
areas on most platforms.
The Python interpreter and the extensive standard library are freely available in source
or binary form for all major platforms from the Python web site,
https://www.python.org/, and may be freely distributed. [1]
In the development of this project, it is used as the main programming language for
whole backend and integration module.
3.4.3.2 Visual Studio Code
Visual Studio Code is a lightweight but powerful source code editor which runs on
your desktop and is available for Windows, macOS and Linux. It comes with built-in
support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions
for other languages (such as C++, C#, Java, Python, PHP, Go) and runtimes (such
as .NET and Unity). [2]
All our app programming is done on VS Code as it makes coding easy and comes
with a lot of extension supports and features.
3.4.3.3 Flask
Flask is a micro web framework written in Python. It is classified as a
microframework because it does not require particular tools or libraries. It has no
database abstraction layer, form validation, or any other components where pre-
existing third-party libraries provide common functions. [3]
The integration module is developed with Flask technology as a web framework for
Python to connect the Python backend with React frontend.

28
3.4.3.4 React JS
React JS was created by Jordan Walke and deployed first at Facebook in May 2013. It
is based on open-source JavaScript library. It is also known as React JavaScript
library, which is used for the developing of User Interfaces (UI).
It consists of independent, isolated and reusable components which are pieces of UI.
Every React JS project has a main root component called as Application (App).
Application root component contains other related child components. React JS
application comprises of React element and React component. React component is the
function or class which renders React element or HTML element. [4]
The frontend module is completely developed using React and its libraries. All the
reusable components and UI/UX is done using React.
3.4.3.5 Tailwind CSS
A utility-first CSS framework packed with classes like flex, and pt-4 that can be
composed to build any design, directly in your markup. Tailwind CSS works by
scanning all of your HTML files, JavaScript components, and any other templates for
class names, generating the corresponding styles and then writing them to a static CSS
file. It's fast, flexible, and reliable — with zero-runtime. [5]
In this project tailwind is used to design the responsive UI of the application.
3.4.3.6 Vite
Vite is a build tool that aims to provide a faster and leaner development experience
for modern web projects. Vite is opinionated and comes with sensible defaults out of
the box. Vite is also highly extensible via its Plugin API and JavaScript API with full
typing support. [6]
Vite is used in this project to make the application light-weight by removing useless
dependencies.
3.4.3.7 Open Weather API
The open weather API is based on OpenWeather model. OpenWeather model allows
to calculate weather data for any location. OpenWeather’s advanced ML-based
numerical weather model performs at up to 500 m resolution and allows its users to
consider highly local nuances of climate and build accurate, efficient products.
The model uses a number of data sources - radars, models from global meteorological
agencies (e.g., Met Office, NOAA, ECMWF), weather satellites, and a vast network
of weather stations.[7]
This API is used by the backend module to collect live data of weather as a parameter
for crop recommendations.
3.4.3.8 Seaborn
Seaborn, this is a Python documentation library. Seaborn is often used to create infor
mative an-D interesting graphics.

29
Seaborn is a library for creating graphics in Python. It is developed by Matplotlib and
is tightly integrated with pandas data structure.
Seaborn helps you search and understand your data. Its program operates on data fram
es and arrays containing entire data sets and internally performs the graphs and calcul
ations necessary to create data reports. API declaration of data allows you to focus on
their meaning, not the details of how to draw different elements in the image.
3.4.3.9 Matplotlib
Matplotlib is a versatile and adaptable platform for creating a wide range of plots,
such as line plots, scatter plots, bar plots, histograms, and more. Its adaptability
enables us to tailor visualizations to the specific needs of various projects and
stakeholders. Matplotlib's incorporation into our data analysis workflow has
significantly improved our ability to explore and present data in a meaningful and
understandable manner.
3.4.3.10 Scikit-Learn
Scikit-Learn, also known as sklearn, is an open-source machine learning library for
Python. Scikit-Learn is widely used for various machine learning tasks, including
classification, regression, clustering, dimensionality reduction, and more.
Scikit-Learn, also known as sklearn, is an open-source Python learning library. Scikit-
Learn provides classification, regression, clustering, dimensionality reduction, etc. It
is widely used for many machine learning tasks.
Scikit-Learn, also known as Sklearn, is a free and opensource machine learning
library for the Python programming language. It contains a variety of classifications,
iterations, and integrations, including support vector machines, random forests,
gradient boosting, k-means, and DBSCAN, and is designed to collaborate with
Python's math and science libraries NumPy and SciPy.
Scikit-Learn is a popular choice for machine learning due to its ease of use,
efficiency, and data quality. It is also highly scalable and has a large developer
community that constantly contributes new algorithms and features.
3.4.3.11 Pandas
Pandas is an open-source Python package widely used for data science/data analysis
and machine learning. It is built on top of another package called NumPy, which
provides support for multiple arrays. One of the most popular data manipulation
packages, Pandas works well with many other data science modules in the Python
ecosystem, and Active State is often included as the operating system by default in all
Python distributions for Active Python and other commercial products.
Pandas simplifies many time-consuming, repetitive tasks associated with working
with data; for example: Data maintenance, Data Filling, Data Normalization, Merges
and joins, Data Visualization, Statistical Analysis, Data Review, Data Loading and
Storage.

30
3.4.3.12 NumPy
NumPy is a central package for scientific computing in Python. It is a Python library th
at provides many different objects, many derived objects (such as masks and matrices),
and many functions for fast operations, including arithmetic, logic, efficient operations
sorting, selection, I/O, discrete Fourier transform, simple operation, etc. linear algebra,
simple statistical operations, stochastic simulation, etc.

The core of the NumPy package is the n-D array object. It encompasses an N-
dimensional array of homogeneous data types, and many tasks are performed in
compiled code to improve performance.

3.5 IMPLEMENTATION
3.5.1 Environment Setup
This project requires the environment setup for both backend and frontend modules
that includes the installation of different libraries and frameworks.
3.5.1.1 Backend Environment Setup
3.5.1.1a Jupyter Notebook
You can use the open-source web application Jupyter Notebook to create and share
files containing time codes, equations, visualizations, and annotations. Python, R,
Julia, and other programming languages are supported.
You can create and run code in cells in the Jupyter Notebook interactive environment.
Units can be completed individually or in a predetermined order. To give your code a
clearer description, you can fill it with text, images, equations, and other rich
information.
Jupyter Notebook has many important features, including:
Interactive: Jupyter Notebook supports interactive data exploration and coding
experiments without the need for a separate session.
Code Execution: Jupyter Notebook allows you to execute code on the fly and see
results immediately. This makes it easy to iterate on your code and see results
immediately.
Charts, charts, and maps, as well as other types of data visualization, can be done
through the capabilities of Jupyter Notebook.
Jupyter Books allows you to share your files with others and collaborate instantly
between them. Git or other management software can also be used to manage your
library

31
3.5.1.2 Frontend Environment Setup
3.5.1.2a Node JS & NPM Installation
NodeJS is JavaScript runtime open-source environment which helps developers to
build web applications with the help of frameworks like web pages, images, video
clips, social network sites and application forms. The Chrome’s V8 engine compiles
the JavaScript code into machine code that makes our program code runs smoother
and faster. [10]
Npm stands for Node Package Managers. It is the world´s largest open-source library
which is used for Nodejs. [11]
To install Node JS, we went to the official website i.e., http://nodejs.org. NPM comes
with the installation of Node JS. After the installation check for the versions –
C:\Users\paras>node -v
v20.9.0
C:\Users\paras>npm -v
10.1.0
The above commands show that npm and node is installed with the latest version.
3.5.1.2b Create React App
For creating the project, open the terminal and follow the steps:
1. $npm create vite@latest – to create a vite + react project.
>Project name: …frontend
>Select a framework: React
>Select a variant: JavaScript
2. $npm i – to install project dependencies.
3.5.1.2c Tailwind CSS Installation
To configure tailwind, open terminal and follow the commands:
1. npm install -D tailwindcss postcss autoprefixer
2. npx tailwindcss init -p
3. Add the paths to all of your template files in your tailwind.config.js file.
4. Add the @tailwind directives for each of Tailwind’s layers to your
./src/index.css file.
Now, run command: $npm run dev to run the project.

32
Fig. 3.8: Folder structure of frontend module.

3.5.2 Source Files

3.5.2.1 main.js
React provides index.html and main.js file in basic file structure. In React, the app
components are passed into the main.js file which provides the output through a html
div. Following is the code file of main.js:

Fig. 3.9: Code file for main.js with routing.

33
3.5.2.2 Components

3.5.2.2a App Component


This is main app component which is passed to the index.js file to render the
application. The layout of the app is defined in this component.

Fig. 3.10: Code file of App.js component.

3.5.2.2b Header Component

This component renders the header on all pages of application. It consists route links
to other pages also.

Fig. 3.11: Code for logo in header component

34
Fig. 3.12: Code for routing in header component

3.5.2.2c Home Component

This is the landing page of the application. It consists the information about the
project and links to other pages.

35
Fig. 3.13: Code file of hero section of home component

Fig. 3.14: Code file of about section of home component

36
Fig. 3.15: Code for services section in home component

3.5.2.2d Crop Recommendation Component

This component consists of a form to take parameters from user and also displays the
result of crop recommendation.
The results of crop prediction are fetched from API in JSON format and are shown in
the component by parsing it to HTML.

Fig. 3.16: Code for libraries and data templates

37
Fig. 3.17: Code for fetching result from API

Fig. 3.18: Code for form handling.

38
Fig. 3.19: Code for form with required fields.

Fig. 3.20: Code for displaying results.

39
3.5.2.2e Fertilizer Recommendation Component

This component consists of a form to take soil parameters from user and displays the
fertilizer recommendation.

Fig. 3.21: Code of functions used in fertilizer component.

40
Fig. 3.22: Code for displaying fertilizer recommendations.

3.5.2.3 Backend Modules

3.5.2.3a Naïve Bayes Model Training Module

Naïve Bayes model training module splits the dataset in training and testing data and
then using GaussianNB classifier from sklearn library trains the Naïve Bayes
Classifier model.
Accuracy and cross validation scores are also checked following the training and
testing.

Fig. 3.23: Python code for data splitting.

41
Fig. 3.24: Code for Naïve Bayes model training and testing.

Fig. 3.25: Code for saving the model in pickle file format.

42
3.5.2.4 API Modules

3.5.2.4a Crop Recommendation Module

This module loads the trained Naïve Bayes model and uses weather API to fetch
temperature and humidity. The module then uses this information to predict crops
from model and sends it to the frontend module.

Fig. 3.26: Code for loading Naïve Bayes model

Fig. 3.27: Function to fetch weather data using API

43
The following flask API method communicates to frontend and collects data from
user request and utilizes that data to get the crop recommendations using the pre-
loaded model.
After getting the results from the model, this method posts these results to frontend
module in JSON format.

Fig. 3.28: API method to fetch data and post crop recommendations

44
3.5.2.4b Fertilizer Recommendation Module
The fertilizer recommendation module utilizes the STCR fertilizer recommendation
equation to calculate the results and posts it to the frontend module.

Fig. 3.29: API method to fetch request and post fertilizer recommendations.

45
CHAPTER 4

RESULTS / SNAPSHOTS

4.1 Home Page

Fig. 4.1: Screenshot of about section of the app

Fig. 4.2: Screenshot of services section of home page.

46
4.2 Crop Recommendation Page

Fig. 4.3: Screenshot of crop recommendation page.

4.3 Fertilizer Recommendation Page

Fig. 4.4: Screenshot of fertilizer recommendation page.

47
4.4 Classifiers’ Accuracy Comparison

Fig. 4.5: Bar plot for classifiers’ accuracy comparison

Fig. 4.6: Accuracy percentage of different classifiers after testing

48
CHAPTER 5

CONCLUSION AND FUTURE SCOPE

5.1 CONCLUSION
We proposed a crop and fertiliser recommendation system in this report using
machine learning and artificial intelligence techniques. The system is intended to
assist farmers in making informed crop and fertiliser management decisions, which
can improve crop yield while reducing environmental impact.

Our Work demonstrated the application of machine learning in the field of agriculture
to improve the efficiency, productivity, profitability and quality of crops. Our research
also focuses on the accuracy check of all algorithm and use the best algorithm for
recommendation of crops. Our research also aims to recommend suggestion and
solution for the required deficiency of fertiliser using STCR equation.

Our results showed that the proposed system predicted crops with high accuracy and
precision, used companion farming techniques, and recommended the appropriate
amount of fertiliser for the targeted yield. Recommending fertiliser follows target
yield approach in which farmers can get information about require amount of fertiliser
for their target yield from the given area of soil. The system outperformed other
approaches and demonstrated the potential for crop improvement, companion farming
techniques, and fertiliser reduction.

Our research helps to advance precision agriculture and sustainable crop management
practises. Farmers can use the system to optimise crop and fertiliser management,
reduce environmental impact, and increase profitability.

5.2 FUTURE SCOPE


Future work includes incorporating additional data sources, such as remote sensing
and drone imagery, to improve the accuracy and timeliness of recommendations. The
system can also be integrated with existing agricultural technologies, such as IoT
sensors and precision irrigation systems, to enable real-time crop and fertiliser
management monitoring and control.

The dataset used here come up with no guarantee from the source. If the original and
authentic data is obtained then our model can be implemented in real time condition
and can have significant impact in the field of agriculture on ground level. The scope
of this project will be the using the model upon the real and authenticated data so that
its application can be seen on the ground level. The dataset for fertiliser
recommendation can be extended for more areas for this project to be scaled up.

49
Overall, our research shows the potential of machine learning and artificial
intelligence techniques for improving crop and fertiliser management, and it
contributes to the development of sustainable agricultural practises.

50
REFERENCES

[1] A. Abubakar et al., “A support vector machine classification of computational


capabilities of 3D map on mobile device for navigation aid,” Int. J. Interact. Mob.
Technol., vol. 10, no. 3, pp. 4–10, 2016, doi: 10.3991/ijim. v10i3.5056.
[2] H. H. Patel and P. Prajapati, "Study and Analysis of Decision Tree-Based
Classification Algorithms," Int. J. Computer. Sci. Eng., vol. 6, no. 10, pp. 56–61,
2018.
[3] B. T. Jijo and A. M. Abdulazeez, “Classification Based on Decision Tree
Algorithm for Machine Learning,” J. Appl. Sci. Technol. Trends, vol. 2, no. 01,
pp. 20–28, 2021, doi: 10.38094/jastt20165.
[4] V. Y. Kulkarni and P. K. Sinha, “Effective Learning and Classification using
Random Forest Algorithm,” Int. J. Eng. Innov. Technology, vol. 3, no. 11, pp.
267–273, 2014.
[5] Mitchell, T. M. The Discipline of Machine Learning, Machine Learning
Department technical report CMU-ML-06-108. Pittsburgh, PA: Carnegie Mellon
University, July 2006.
[6] P. Domingos and M. Pazzani. On the optimality of the simple Bayesian classifier
under zero-one loss. Machine Learning, 29:103–130, 1997.
[7] https://www.kdnuggets.com/2020/01/decision-tree-algorithm-explained.html
[8] https://aws.amazon.com/what-is/logistic-regression/
[9] Bartlett P. and Shawe-Taylor J., “Generalization performance of support vector
machine and other pattern classifiers”, In C.~Burges B.~Scholkopf, editor,
“Advances in Kernel Methods--Support Vector Learning”. MIT press, 1998
[10] N. Friedman, D. Geiger, and Goldszmidt M. Bayesian network classifiers.
Machine Learning, 29:131–163, 1997.
[11] Cortes, Corinna; Vapnik, Vladimir (1995). "Support-vector networks" (PDF).
Machine Learning.
[12] DeCoste, Dennis (2002). "Training Invariant Support Vector Machines"
(PDF). Machine Learning.
[13] https://scikit-learn.org/stable/
[14] https://numpy.org/doc/stable/user/whatisnumpy.html
[15] https://seaborn.pydata.org/tutorial/introduction
[16] https://matplotlib.org/
[17] V. Chaurasia, S. Pal, and B. B. Tiwari, “Prediction of benign and malignant
breast cancer using data mining techniques,” J. Algorithms Compute. Technol.,
vol. 12, no. 2, pp. 119–126, 2018, Doi: 10.1177/1748301818756225.
[18] Abhinav Sharma, Arpit Jain, Prateek Gupta, Vinay Chowdary, “Machine
Learning Application for Precision Agriculture”, Institute of Electrical and
Electronic Engineers, ISSN: 2169-3536, Volume: 9 Issue: 31 December 2020.
[19] Anand. H. Kulkarni, Ashwin Patil R. K. “Applying image processing
technique to detect plant diseases”, IJMER, Vol.2, Issue.5, Sep-Oct. 2012, pp-
3661-3664.

51
[20] Aqeel-ur-Rehman, Abu Zafar Abbasi, Noman Islam and Zubair Ahmed
Shaikh, “A Review of Wireless Sensors and Networks’ Applications in
Agriculture”, Computer Standards & Interfaces, Volume 36, Issue 2, 2014, Pages
263-270, ISSN 0920-5489
[21] Dhruvi Gosai, Chintal Raval, Rikin Nayak, Hardik Jayswal, Axat Patel, “Crop
Recommendation System using Machine Learning”, International Journal of
Scientific Research in Computer Science, Engineering and Information
Technology, May-June - 2021, 7 (3): 554-557
[22] Dr. N. Suma, Sandra Rhea Samson, S.Saranya, G.Shanmugapriya,
R.Subhashri, “IOT Based Smart Agriculture Monitoring System”, International
Journal on Recent and Innovation Trends in Computing and Communication,
ISSN: 2321-8169, Volume: 5 Issue: 2, February 2017, 177 – 181.
[23] https://curatti.com/pros-cons-reactjs/
[24] https://reactjs.org/docs/getting-started.html
[25] https://www.peerbits.com/blog/reasons-to-choose-reactjs-for-your-
webdevelopment-
[26] M. Damas, A.M. Prados, F. Gómez, G. Olivares, HidroBus system: fieldbus
for integrated management of extensive areas of irrigated land, Microprocessors
and Microsystems, 25 (2001) 177-184.
[27] Nikesh Gondchawar, Prof. Dr. R.S. Kwaitkar, “IoT Based Smart Culture”.
[28] OpenWeather API- https://openweathermap.org/guide
[29] Piyush Anand, Shorya Aggarwal, Sachin Sharma Song Recommendation
Using Emotion
[30] Priyadharshni A, Swapneel Chakraborty, Aayush Kumar, “Intelligent Crop
Recommendation System using Machine Learning”. International Conference on
Computing Methodologies and Communication (ICCMC) 6may 2021
[31] project.html
[32] Python- https://docs.python.org/3/tutorial/index.html
[33] ¬Qiming Zhou & Ali Ismaeel, “Integration of maximum crop response with
machine learning regression model to timely estimate crop yield”, Geo-spatial
Information Science, 24:3, 474-483, DOI: 10.1080/10095020.2021.1957723
[34] R. Morais, A. Valente, C. Serôdio, A wireless sensor network for smart
irrigation and environmental monitoring, in: EFITA/WCCA Joint Congress on IT
in Agriculture, Portugal, 2005, pp. 845-850.
[35] Ramesh A, Vijay. S. Rajpurohit, “A survey on Data Mining Techniques for
Crop Yield Prediction”, “International Journal of Advance Research in Volume 2,
Issue 9, September 2014”.
[36] React JS- React JS Features and documentation
[37] S. Kulkarni, S. N. Mandal, G. S. Sharma, M. R. Mundada and Meeradevi,
"Predictive analysis to improve crop yield using a neural network model", Proc.
Int. Conf. Adv. Comput. Commun. Informat. (ICACCI), pp. 74-79, Sep. 2018
[38] Suporn Pongnumkul, Pimwadee Chaovalit, and Navaporn Surasvadi,
“Applications of Smartphone-Based Sensors in Agriculture: A Systematic Review

52
of Research”, Hindawi Publishing Corporation Journal of Sensors, Volume 2015,
Article ID 195308, http://dx.doi.org/10.1155/2015/195308
[39] Suresh, G., A. Senthil Kumar, S. Lekashri, and R. Manikandan. “Efficient
Crop Yield Recommendation System Using Machine Learning for Digital
Farming”, International Journal of Modern Agriculture, Volume 10, No.1, 2021
[40] Tailwind CSS- https://tailwindcss.com/docs/installation
[41] Tom M. Mitchell. Machine Learning. McGraw-Hill, 1997
[42] Visual Studio Code- https://code.visualstudio.com/

53

You might also like