Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

DPARTMENT OF ELECTRONIC AND ELECTRICAL ENGINEERING

Pro-forma to accompany assignment / coursework


2023/2024

This pro-forma should be the first page to any set assignment / coursework. A full assignment brief should
accompany this pro-forma.
Module Code: EE5627/5657 Module Title: Artificial Intelligence Systems Techniques

Module Leader: Maysam Abbod Assessor: Maysam Abbod and Liliana Teodorescu

Assessment Title: Artificial Intelligence System Design Weighting: 40%

Main Objectives of the Assessment:


To familiarise yourself with the operation of a mobile robot by implementing a basic model of the robot
(dynamics and kinematics) using MATLAB/Simulink. Then design intelligent controllers to manipulate the robot
movements in following a defined trajectory and test it performance.

Brief Description of the Assessment:


After completing this lab, you should be able to:
Part 1: AI system Design
• Use MATLAB/Simulink to simulate and test a mobile robot dynamic and kinematics models. The mobile robot
simulation and trajectory blocks are provided.
• Simulate the kinematics model, the design a Fuzzy Logic Controller to replace the inverse kinematics.
• Using the inverse kinematics model, generate training data for designing ANN, Neuro Fuzzy systems to be
used as a controller. Test the controller performance in controlling the robot for different trajectories.
Part 2: Deep Learning

Learning Outcomes for the Assessment: Assessment and marking criteria


(A) Knowledge and Understanding The work will be assessed based on the following:
Design and evaluate a neural network classifier.
Mamdani FLC 20%
(B) Cognitive (thinking) Skills ANFIS controller 20%
Create a neural network system, train and test it ANN controller 20%
Comparison 20%
(C) Other Skills and Attributes Report 20%
(Practical/Professional/Transferable)
MATLAB computing

Assessment method by which a student can demonstrate learning outcomes:


Design, simulation and evaluation.
Format for the assessment/coursework (Guidelines on the expected format and length of submission):
Written report (10 pages maximum)

Distribution date to students: 26 October 2023


Submission Deadline: 15 December 2023
Indicative Reading List: MATLAB documentation, Python programming, and lecture notes

Further information:
Department of Electronic and Electrical Engineering
College of Engineering, Design and Physical Sciences
Brunel University London

Assessed Coursework 2022/2023

Courses: MEng, MSc


Level: 7
Module Code: EE5627/EE5657
Module Name: Artificial Intelligence Systems Techniques
Title of Assessment: Artificial Intelligence Systems Design
Set By: Dr M Abbod and Dr Teodorescu
Contribution to Module Mark: 40% (EE5627/EE5657)

Part 1: AI System Design


AIM
The aim of this assignment is to familiarise the student with the operation of a mobile robot by implementing a basic
model of the robot (dynamics and kinematics) using MATLAB/Simulink. Then design intelligent controllers to
manipulate the robot movements in following a defined trajectory and test it performance.

OBJECTIVES
The principal objective is to gain knowledge of the different intelligent system when working on an unrehearsed
problem. The advantages and disadvantages of various methodologies will be evaluated when applied to a simulated
control system. Experience will also be gained in designing a Fuzzy Logic and ANN systems to control the trajectory of a
mobile robot.

REPORT STRUCTURE
The report should not exceed more than 10 pages

WORK DESCRIPTION
1. Introduction

A differential drive mobile robot (DDMR) is a mobile robot equipped with a front castor wheel and a pair of co‐axial
drive wheels at the rear. Each of these wheels is driven by a DC motor.

The DDMR movement is based on the control of these two separately driven wheels. It can change its direction by
varying the relative rate of rotation of its wheels. If both wheels are driven in the same direction and speed, the robot
will go in a straight line. If both wheels are turned with equal speed in opposite directions, as is clear from the diagram
shown in Figure 2, the robot will rotate about the central point of the axis. Since the DDMR cannot drive in the direction
transversal to the wheels’ axis, therefore it is considered as nonholonomic mobile robots.
Figure 1: Differential drive mobile robot (DDMR).

Figure 2: Differential drive.

The modelling of the DDMR consists of deriving the kinematic and dynamic models of the robot in addition to the
models of the actuators (DC motors). The kinematic model describes the geometric relationships that govern the
motion of the system and does not consider forces and torques applied to the DDMR. The dynamic model, on the other
hand, is the study of the motion in which forces, and energies are modelled and included. Actuator modelling is needed
to find the relationship between the control signal and the mechanical system’s input.

The aim of this lab is to develop these mathematical models of the DDMR in MATLAB/Simulink and to design a
trajectory tracking controller for the robot. This lab includes three parts which can be carried out independently.

2. MATLAB/Simulink Implementation of Differential Drive Robot

The simplified dynamic model of this DDMR is (refer to reference [2] for more details):

where u is the linear velocity, w is the angular velocity, x, and y are the coordinates, and theta is the angle of the robot
direction.
Let

Then the inverse of A is:

Then the inverse dynamics is given by:

Figure 3 shows the dynamic and kinematic model of the robot (Simulink models are provided):

Theta

Figure 3: Combined kinematic and dynamic models of the DDMR.

Simulate and analyse the trajectory of DDMR using the overall model (kinematic and dynamic) under different inputs to
illustrate straight line drive, left‐turn, right‐turn and rotation conditions as illustrated in Figure 2.

3. Controller Design for Trajectory Tracking

The simplified dynamic model of this DDMR is (refer to reference [2] for more details):

and the inverse kinematic controller is given by:

where a = 0.05, Ix = Iy = 0.1, and kx = ky = 0.1

The developed model based on the kinematic and dynamic models is shown in Figure 4.
xd

x_dot
dxd x
U_r
uref u u
y_dot
d2xd Final
y
theta
yd wref w w
x_tilda theta
W_r
dyd
y_tilda DDMR DDMR
Dynamics Kinematics
d2yd

Reference

Figure 4 Inverse kinematic controller of the DDMR.

Simulate the response of the kinematics and dynamics models with the control law on the model of Figure 4 for two
different trajectory types (1: circle and 2: number Eight shape).

4. Neural Network Based Control

a) Design an inverse-kinematics neural network model for the DDMR using data collected from the Simulink model of
the controlled DDMR. Train ANN controller for the following: circle, Eight shape and combined.
b) Using the same data obtained in part b), design a neuro-fuzzy controller for the same purpose.
c) Implement the proposed controllers in parts a) and b) and compare the results with those obtained using the
inverse kinematic controller.

Note: The controller inputs, x_tilda and y_tilda, are for corrections, you can ignore these on the assumption that the
robot is moving on a smooth surface.

References

[1] R. Dhaouadi and A. Abu Hatab, Dynamic Modelling of Differential ‐Drive Mobile Robots using Lagrange and
Newton‐Euler Methodologies: A Unified Framework, Advances in Robotics and Automation, Vol. 2, Issue 2, 2013.
[2] Felipe N. Martins, Wanderley C. Celeste, Ricardo Carelli, Mario Sarcinelli ‐Filho, Teodiano F. Bastos ‐Filho, An
adaptive dynamic controller for autonomous mobile robot trajectory tracking, Control Engineering Practice
(Elsevier), 16 (2008) 1354– 1363.
[3] P. Suster and A. Jadlovska, Neural tracking trajectory of the mobile robot Khepera II in internal model control
structure, 9th International Conference Process Control, June 7 – 10, 2010, Kouty nad Desnou, Czech Republic.
Part 2: Deep Learning Network Design
Task

An IoT system containing three sensors placed in three physical locations with variable environmental conditions is
used to identify motion in the proximity of the sensors. Sensor readings were collected regularly for a certain period.
Data collected is stored in the file data,cvs attached to this assignment.

The data file contains the following data columns:

ts - time stamp

device – sensor ID

co – environmental carbon monoxide

humidity – environmental humidity

light – boolean to indicate if light is detected

gas – environmental gas

motion – Boolean to indicate if motion is detected

smoke – environmental smoke

temp – environmental temperature

Using this dataset, design and implement a convolutional neural network (CNN) to model the “motion” feature (the
model developed should predict the feature “motion”). Optimise the model (its hyperparameters) and analyse its
performance.

In implementing the CNN, use Keras or another preferred Python based AI tool.

Present the design, implementation, and optimisation process, together with the analysis of the performance in a
technical report.

The report should focus on the practical achievements with diagrams, plots, tables, numerical results. Include only the
necessary text to clearly explain the practical work (avoid extensively long text).

The report should contain only the key points about the code implementation and testing. The full code should be
submitted separately (see below).

Submission of the assignment

Submit the technical report as a single pdf document on Wiseflow.

Submit the full code of your project as an archived file (zip or a similar format) as Appendix material on Wiseflow.

You might also like