From 149dbd63fd7a27768536e9518f54762cdaa9d07d Mon Sep 17 00:00:00 2001 From: "Danner, Jonas" Date: Tue, 3 Aug 2021 16:49:16 +0200 Subject: [PATCH 1/8] edited code to fulfill minimum requirements --- main.py | 141 ++++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 111 insertions(+), 30 deletions(-) diff --git a/main.py b/main.py index 9aac7f0..590dce2 100644 --- a/main.py +++ b/main.py @@ -2,39 +2,120 @@ # -*- coding: utf-8 -*- """A Random Walk Simulation """ + # Python code for 2D random walk. # Source: https://www.geeksforgeeks.org/random-walk-implementation-python/ -import numpy +import sys +import numpy as np import matplotlib.pyplot as plt -import random - -# defining the number of steps -n = 100000 - -# creating two array for containing x and y coordinate -# of size equals to the number of size and filled up with 0's -x = numpy.zeros(n) -y = numpy.zeros(n) - -# filling the coordinates with random variables -for i in range(1, n): - val = random.randint(1, 4) - if val == 1: - x[i] = x[i - 1] + 1 - y[i] = y[i - 1] - elif val == 2: - x[i] = x[i - 1] - 1 - y[i] = y[i - 1] - elif val == 3: - x[i] = x[i - 1] - y[i] = y[i - 1] + 1 + + +def create_walkers(number_of_steps, number_of_walkers): + """ + + :param number_of_steps: + :param number_of_walkers: + :return: + """ + scene = [] + for _ in range(number_of_walkers): + walker = np.random.randint(low=0, high=number_of_steps, + size=(number_of_steps, 2)) + scene.append(walker) + + return scene + + +def do_the_steps(walker, number_of_steps): + """the main program""" + # split coordinates + x_coord = walker[:, 0] + y_coord = walker[:, 1] + + # calculate new coordinates for each step + for stepnumber in range(1, number_of_steps): + direction_of_step = np.random.randint(1, 4) + if direction_of_step == 1: # east + x_coord[stepnumber] = x_coord[stepnumber - 1] + 1 + y_coord[stepnumber] = y_coord[stepnumber - 1] + elif direction_of_step == 2: # west + x_coord[stepnumber] = x_coord[stepnumber - 1] - 1 + y_coord[stepnumber] = y_coord[stepnumber - 1] + elif direction_of_step == 3: # north + x_coord[stepnumber] = x_coord[stepnumber - 1] + y_coord[stepnumber] = y_coord[stepnumber - 1] + 1 + else: # south + x_coord[stepnumber] = x_coord[stepnumber - 1] + y_coord[stepnumber] = y_coord[stepnumber - 1] - 1 + + # return all coordinates of the path + return walker + + +def plot_the_paths(list_of_walkers, outputfilename): + """ + + :param list_of_walkers: + :param outputfilename: + :return: + """ + if len(list_of_walkers) == 1: + columns_of_plots = 1 else: - x[i] = x[i - 1] - y[i] = y[i - 1] - 1 + columns_of_plots = 2 + rows_of_plots = round(len(list_of_walkers)/2) + figure, axis = plt.subplots(rows_of_plots, columns_of_plots) + for counter in enumerate(list_of_walkers): + x_coords = counter[1][:, 0] + y_coords = counter[1][:, 1] + + row = int(counter[0]/2) + if counter[0] % 2 == 0: + column = 0 + else: + column = 1 + + axis[row, column].plot(x_coords, y_coords) + axis[row, column].set_title(f'Walker {counter[0]+1}') + + if len(list_of_walkers) % 2 != 0: + figure.delaxes(axis[(rows_of_plots - 1), 1]) + + + figure.tight_layout() + plt.savefig(outputfilename) + plt.show() + + +def main(): + """ + + :return: + """ + try: + number_of_steps = int(sys.argv[1]) + 1 + number_of_walkers = int(sys.argv[2]) + outputfilename = sys.argv[3] + + assert number_of_steps > 1 + assert number_of_walkers > 0 + except ValueError as err: + print("Error: one of the inputs was not correctly specified.\n" + "The Input must be specified as 'python main.py number_of_steps " + "number_of_walkers outputfilename'.\n" + "Inputformats: number_of_steps --> Integer, number_of_walkers --> " + "Integer, outputfilename --> string\n" + "outputfilename: path_to_output/filename.png\n" + "The number of walkers and the number of steps to be made must be " + "positive & at least 1\n\n\n", + err) + sys.exit(1) + + scene = create_walkers(number_of_steps, number_of_walkers) + for walker in scene: + walker = do_the_steps(walker, number_of_steps) + plot_the_paths(scene, outputfilename) -# plotting the walk -plt.title("Random Walk ($n = " + str(n) + "$ steps)") -plt.plot(x, y) -plt.savefig("./rand_walk_{}.png".format(n)) -plt.show() \ No newline at end of file +if __name__ == "__main__": + main() From 9010b3e1145207e2d922cfe3f9d62b52a4a1b687 Mon Sep 17 00:00:00 2001 From: Jonas <36933111+hn437@users.noreply.github.com> Date: Tue, 3 Aug 2021 17:39:05 +0200 Subject: [PATCH 2/8] Edited commenting and docstrings (#2) * edited assertions * Edited commenting and docstrings --- main.py | 52 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 33 insertions(+), 19 deletions(-) diff --git a/main.py b/main.py index 590dce2..25deb3e 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -"""A Random Walk Simulation """ +"""A Random Walk Simulation For Multiple Walkers""" # Python code for 2D random walk. @@ -12,13 +12,17 @@ def create_walkers(number_of_steps, number_of_walkers): """ - - :param number_of_steps: - :param number_of_walkers: - :return: + Creates a list of numpy arrays which each hold the coordinates of a walker. The coordinates + are randomly chosen in a range from 0 to the number of steps + :param number_of_steps: the number of steps the walker will make. This defines the + dimension of the array which represents the walker + :param number_of_walkers: the number of walkers defines the number of arrays, which + will be created + :return: a list, the 'scene' which contains all walkers, so all arrays containing coordinates """ scene = [] for _ in range(number_of_walkers): + # create the array of a walker and add it to the scene-list walker = np.random.randint(low=0, high=number_of_steps, size=(number_of_steps, 2)) scene.append(walker) @@ -26,8 +30,13 @@ def create_walkers(number_of_steps, number_of_walkers): return scene -def do_the_steps(walker, number_of_steps): - """the main program""" +def calculate_the_path(walker, number_of_steps): + """ + Calculates the path the walker walks + :param walker: The array representing the walker, holding random coordinates + :param number_of_steps: the number of steps the walker takes + :return: the updated array representing the walker, holding all coordinates the walker walks to + """ # split coordinates x_coord = walker[:, 0] y_coord = walker[:, 1] @@ -54,18 +63,22 @@ def do_the_steps(walker, number_of_steps): def plot_the_paths(list_of_walkers, outputfilename): """ - - :param list_of_walkers: - :param outputfilename: - :return: + Creates the plot of the calculated path of the walker + :param list_of_walkers: Arrays representing the walkers. Each array holds the + coordinates of the respective path the walker walked. + :param outputfilename: The file which will be created with the plotted paths """ + # define the number of rows and columns of subplots if len(list_of_walkers) == 1: columns_of_plots = 1 else: columns_of_plots = 2 rows_of_plots = round(len(list_of_walkers)/2) + + # create the subplots figure, axis = plt.subplots(rows_of_plots, columns_of_plots) for counter in enumerate(list_of_walkers): + # get the coordinates of this walker, get its subplot and plot the path in it x_coords = counter[1][:, 0] y_coords = counter[1][:, 1] @@ -79,26 +92,27 @@ def plot_the_paths(list_of_walkers, outputfilename): axis[row, column].set_title(f'Walker {counter[0]+1}') if len(list_of_walkers) % 2 != 0: + # if the number of walkers is odd, delete the last (unused) subplot figure.delaxes(axis[(rows_of_plots - 1), 1]) - + # arange subplot to not interfere each other, save the figure to the outputfile and + # show the plot to the user figure.tight_layout() plt.savefig(outputfilename) plt.show() def main(): - """ - - :return: - """ + """The main program. Reads in the user definitions, creates the scene, calculates + the path and plots it""" try: + # read in specifications defined by the user number_of_steps = int(sys.argv[1]) + 1 number_of_walkers = int(sys.argv[2]) outputfilename = sys.argv[3] - assert number_of_steps > 1 - assert number_of_walkers > 0 + assert number_of_steps > 1, "'{}' must be greater than 0".format(number_of_steps - 1) + assert number_of_walkers > 0, "'{}' must be greater than 1".format(number_of_walkers) except ValueError as err: print("Error: one of the inputs was not correctly specified.\n" "The Input must be specified as 'python main.py number_of_steps " @@ -113,7 +127,7 @@ def main(): scene = create_walkers(number_of_steps, number_of_walkers) for walker in scene: - walker = do_the_steps(walker, number_of_steps) + walker = calculate_the_path(walker, number_of_steps) plot_the_paths(scene, outputfilename) From f1d54a1d9d416bb9d47f09b5116eefe1b243b229 Mon Sep 17 00:00:00 2001 From: "Danner, Jonas" Date: Tue, 3 Aug 2021 18:20:12 +0200 Subject: [PATCH 3/8] adjusted assertion errors and renamed file --- walker.py | 139 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 139 insertions(+) create mode 100644 walker.py diff --git a/walker.py b/walker.py new file mode 100644 index 0000000..7a08609 --- /dev/null +++ b/walker.py @@ -0,0 +1,139 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +"""A Random Walk Simulation For Multiple Walkers""" + + +# Python code for 2D random walk. +# Source: https://www.geeksforgeeks.org/random-walk-implementation-python/ +import sys +import numpy as np +import matplotlib.pyplot as plt + + +def create_walkers(number_of_steps, number_of_walkers): + """ + Creates a list of numpy arrays which each hold the coordinates of a walker. The coordinates + are randomly chosen in a range from 0 to the number of steps + :param number_of_steps: the number of steps the walker will make. This defines the + dimension of the array which represents the walker + :param number_of_walkers: the number of walkers defines the number of arrays, which + will be created + :return: a list, the 'scene' which contains all walkers, so all arrays containing coordinates + """ + scene = [] + for _ in range(number_of_walkers): + # create the array of a walker and add it to the scene-list + walker = np.random.randint(low=0, high=number_of_steps, + size=(number_of_steps, 2)) + scene.append(walker) + + return scene + + +def calculate_the_path(walker, number_of_steps): + """ + Calculates the path the walker walks + :param walker: The array representing the walker, holding random coordinates + :param number_of_steps: the number of steps the walker takes + :return: the updated array representing the walker, holding all coordinates the walker walks to + """ + # split coordinates + x_coord = walker[:, 0] + y_coord = walker[:, 1] + + # calculate new coordinates for each step + for stepnumber in range(1, number_of_steps): + direction_of_step = np.random.randint(1, 4) + if direction_of_step == 1: # east + x_coord[stepnumber] = x_coord[stepnumber - 1] + 1 + y_coord[stepnumber] = y_coord[stepnumber - 1] + elif direction_of_step == 2: # west + x_coord[stepnumber] = x_coord[stepnumber - 1] - 1 + y_coord[stepnumber] = y_coord[stepnumber - 1] + elif direction_of_step == 3: # north + x_coord[stepnumber] = x_coord[stepnumber - 1] + y_coord[stepnumber] = y_coord[stepnumber - 1] + 1 + else: # south + x_coord[stepnumber] = x_coord[stepnumber - 1] + y_coord[stepnumber] = y_coord[stepnumber - 1] - 1 + + # return all coordinates of the path + return walker + + +def plot_the_paths(list_of_walkers, outputfilename): + """ + Creates the plot of the calculated path of the walker + :param list_of_walkers: Arrays representing the walkers. Each array holds the + coordinates of the respective path the walker walked. + :param outputfilename: The file which will be created with the plotted paths + """ + # define the number of rows and columns of subplots + if len(list_of_walkers) == 1: + columns_of_plots = 1 + else: + columns_of_plots = 2 + rows_of_plots = round(len(list_of_walkers)/2) + + # create the subplots + figure, axis = plt.subplots(rows_of_plots, columns_of_plots) + for counter in enumerate(list_of_walkers): + # get the coordinates of this walker, get its subplot and plot the path in it + x_coords = counter[1][:, 0] + y_coords = counter[1][:, 1] + + row = int(counter[0]/2) + if counter[0] % 2 == 0: + column = 0 + else: + column = 1 + + axis[row, column].plot(x_coords, y_coords) + axis[row, column].set_title(f'Walker {counter[0]+1}') + + if len(list_of_walkers) % 2 != 0: + # if the number of walkers is odd, delete the last (unused) subplot + figure.delaxes(axis[(rows_of_plots - 1), 1]) + + # arange subplot to not interfere each other, save the figure to the outputfile and + # show the plot to the user + figure.tight_layout() + plt.savefig(outputfilename) + plt.show() + + +def main(): + """The main program. Reads in the user definitions, creates the scene, calculates + the path and plots it""" + try: + # read in specifications defined by the user + number_of_steps = int(sys.argv[1]) + 1 + number_of_walkers = int(sys.argv[2]) + outputfilename = sys.argv[3] + + assert number_of_steps > 1, "number_of_steps must be greater than '0'. " \ + "You stated '{}'".format(number_of_steps - 1) + assert number_of_walkers > 0, "number_of_walkers must be greater than '1'. " \ + "You stated '{}'".format(number_of_walkers) + assert number_of_walkers <= 12, "number_of_walkers must be max. '12'. " \ + "You stated '{}'".format(number_of_walkers) + except ValueError as err: + print("Error: one of the inputs was not correctly specified.\n" + "The Input must be specified as 'python main.py number_of_steps " + "number_of_walkers outputfilename'.\n" + "Inputformats: number_of_steps --> Integer, number_of_walkers --> " + "Integer, outputfilename --> string\n" + "outputfilename: path_to_output/filename.png\n" + "The number of walkers and the number of steps to be made must be " + "positive & at least 1\n\n\n", + err) + sys.exit(1) + + scene = create_walkers(number_of_steps, number_of_walkers) + for walker in scene: + walker = calculate_the_path(walker, number_of_steps) + plot_the_paths(scene, outputfilename) + + +if __name__ == "__main__": + main() From d43eda46ca9e25ced1f77b7fa5a28e0a6ac410b6 Mon Sep 17 00:00:00 2001 From: "Danner, Jonas" Date: Tue, 3 Aug 2021 18:21:29 +0200 Subject: [PATCH 4/8] delete redundant copy of main.py --- main.py | 135 -------------------------------------------------------- 1 file changed, 135 deletions(-) delete mode 100644 main.py diff --git a/main.py b/main.py deleted file mode 100644 index 25deb3e..0000000 --- a/main.py +++ /dev/null @@ -1,135 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -"""A Random Walk Simulation For Multiple Walkers""" - - -# Python code for 2D random walk. -# Source: https://www.geeksforgeeks.org/random-walk-implementation-python/ -import sys -import numpy as np -import matplotlib.pyplot as plt - - -def create_walkers(number_of_steps, number_of_walkers): - """ - Creates a list of numpy arrays which each hold the coordinates of a walker. The coordinates - are randomly chosen in a range from 0 to the number of steps - :param number_of_steps: the number of steps the walker will make. This defines the - dimension of the array which represents the walker - :param number_of_walkers: the number of walkers defines the number of arrays, which - will be created - :return: a list, the 'scene' which contains all walkers, so all arrays containing coordinates - """ - scene = [] - for _ in range(number_of_walkers): - # create the array of a walker and add it to the scene-list - walker = np.random.randint(low=0, high=number_of_steps, - size=(number_of_steps, 2)) - scene.append(walker) - - return scene - - -def calculate_the_path(walker, number_of_steps): - """ - Calculates the path the walker walks - :param walker: The array representing the walker, holding random coordinates - :param number_of_steps: the number of steps the walker takes - :return: the updated array representing the walker, holding all coordinates the walker walks to - """ - # split coordinates - x_coord = walker[:, 0] - y_coord = walker[:, 1] - - # calculate new coordinates for each step - for stepnumber in range(1, number_of_steps): - direction_of_step = np.random.randint(1, 4) - if direction_of_step == 1: # east - x_coord[stepnumber] = x_coord[stepnumber - 1] + 1 - y_coord[stepnumber] = y_coord[stepnumber - 1] - elif direction_of_step == 2: # west - x_coord[stepnumber] = x_coord[stepnumber - 1] - 1 - y_coord[stepnumber] = y_coord[stepnumber - 1] - elif direction_of_step == 3: # north - x_coord[stepnumber] = x_coord[stepnumber - 1] - y_coord[stepnumber] = y_coord[stepnumber - 1] + 1 - else: # south - x_coord[stepnumber] = x_coord[stepnumber - 1] - y_coord[stepnumber] = y_coord[stepnumber - 1] - 1 - - # return all coordinates of the path - return walker - - -def plot_the_paths(list_of_walkers, outputfilename): - """ - Creates the plot of the calculated path of the walker - :param list_of_walkers: Arrays representing the walkers. Each array holds the - coordinates of the respective path the walker walked. - :param outputfilename: The file which will be created with the plotted paths - """ - # define the number of rows and columns of subplots - if len(list_of_walkers) == 1: - columns_of_plots = 1 - else: - columns_of_plots = 2 - rows_of_plots = round(len(list_of_walkers)/2) - - # create the subplots - figure, axis = plt.subplots(rows_of_plots, columns_of_plots) - for counter in enumerate(list_of_walkers): - # get the coordinates of this walker, get its subplot and plot the path in it - x_coords = counter[1][:, 0] - y_coords = counter[1][:, 1] - - row = int(counter[0]/2) - if counter[0] % 2 == 0: - column = 0 - else: - column = 1 - - axis[row, column].plot(x_coords, y_coords) - axis[row, column].set_title(f'Walker {counter[0]+1}') - - if len(list_of_walkers) % 2 != 0: - # if the number of walkers is odd, delete the last (unused) subplot - figure.delaxes(axis[(rows_of_plots - 1), 1]) - - # arange subplot to not interfere each other, save the figure to the outputfile and - # show the plot to the user - figure.tight_layout() - plt.savefig(outputfilename) - plt.show() - - -def main(): - """The main program. Reads in the user definitions, creates the scene, calculates - the path and plots it""" - try: - # read in specifications defined by the user - number_of_steps = int(sys.argv[1]) + 1 - number_of_walkers = int(sys.argv[2]) - outputfilename = sys.argv[3] - - assert number_of_steps > 1, "'{}' must be greater than 0".format(number_of_steps - 1) - assert number_of_walkers > 0, "'{}' must be greater than 1".format(number_of_walkers) - except ValueError as err: - print("Error: one of the inputs was not correctly specified.\n" - "The Input must be specified as 'python main.py number_of_steps " - "number_of_walkers outputfilename'.\n" - "Inputformats: number_of_steps --> Integer, number_of_walkers --> " - "Integer, outputfilename --> string\n" - "outputfilename: path_to_output/filename.png\n" - "The number of walkers and the number of steps to be made must be " - "positive & at least 1\n\n\n", - err) - sys.exit(1) - - scene = create_walkers(number_of_steps, number_of_walkers) - for walker in scene: - walker = calculate_the_path(walker, number_of_steps) - plot_the_paths(scene, outputfilename) - - -if __name__ == "__main__": - main() From 02948735f5e5ac84ac879fc49a13d33d5504e27b Mon Sep 17 00:00:00 2001 From: Yannik-M <74663897+Yannik-M@users.noreply.github.com> Date: Tue, 3 Aug 2021 18:30:41 +0200 Subject: [PATCH 5/8] Yannik (#3) * changed name of README.md * created README.md file * changed README.md * changed * changed * changed * changed name of python script * added screenshot * changed * changed * changed * added output * added * added * added * added * added --- README.md | 60 ++++++++++++------------------------------ output.png | Bin 0 -> 45673 bytes screenshot_readme.PNG | Bin 0 -> 6548 bytes tasks.md | 55 ++++++++++++++++++++++++++++++++++++++ walker.py | 3 +-- 5 files changed, 73 insertions(+), 45 deletions(-) create mode 100644 output.png create mode 100644 screenshot_readme.PNG create mode 100644 tasks.md diff --git a/README.md b/README.md index a53d95c..9b691f5 100644 --- a/README.md +++ b/README.md @@ -1,55 +1,29 @@ -# Random Walk Simulation +# Instructions for the random walker scipt: -This is a **group exercise**, so you should be working in pairs of two students. It's **30% of your final grade**. +The random walker creates a random path for a number of steps and number of walkers, specified by the user. The output is an image, which shows the walk for every walker in different +plots. -The Goal is to **practise writing readable, maintainable and reliable code collaboratively.** +## Instructions to the user -## Group Exercise +1. Clone the repository from Github +2. Move to the cloned repository via the command line +3. Specify the number of steps, the number of walkers and the name of the outputfile (as can be seen in the screenshot below) + Important: **the number of walkers cannot be higher than 12** +4. You need to call the script with python, writing: python walker.py ... +5. For example: python walker.py 10 4 ./test_image.png -1. One student of your group forks the code from [https://github.com/advanced-geoscripting-2021/random_walker.git](https://github.com/advanced-geoscripting-2021/random_walker.git) + 100000 = number of steps -2. This student invites the other student as a collaborator to the forked repository. Now you can both work on the code. -3. Adapt the code to fulfil the requirements (see below). + 4 = number of walkers -4. Code review: Each group reviews the code of another group. + ./test_image.pn = name of the outputfile -5. Improve your code based on the review you got. +Example for setting the parameters: -## Write an extended random walk program +![image](https://github.com/hn437/random_walk/blob/yannik/screenshot_readme.PNG) -In this repo you find a basic implementation of a [random walk simulation](https://en.wikipedia.org/wiki/Random_walk) in 2-dimensional space taken from [this blogpost](https://www.geeksforgeeks.org/random-walk-implementation-python/). Running the code yields an image which shows the path of the random walk. - -![random_walk](rand_walk_100000.png) - -The program works but it is not very readable. In addition, you should **extend the program based on the requirements listed below. - -**Remember to apply the best practices in scientific computing** to make the code more readable, maintainable, reusable and efficient. - -### Minimum requirements: - -Extend the program so the following requirements are met: - -1. The program should be able to simulate multiple random walkers. -2. The program should be executable from the command line. -3. The user should be able to specify the number of random walkers through a command line parameter. -4. Document the dependencies and instructions of how to run the program in your README.md. - -### Additional requirements: - -1. Create three different types of walkers, e.g. a "fast walker" which has a bigger step size. -2. Add a "landscape" in which the random walkers are walking in which contains obstacles which the walkers cannot cross (e.g. a lake) -3. Invent and implement another functionality of your own. - -Be creative here! :) - -## Code Review - -Review the code of another group: (tuesday afternoon or wednesday morning) - -1. Does it work properly? Try to make it fail! -2. Are the best-practices implemented in the code? -3. Is the documentation clear? -4. Can you adapt the code easily? E.g. try to create a new type of random walker which moves two cells per iteration. +Example for the output: +![image](https://github.com/hn437/random_walk/blob/yannik/output.png) diff --git a/output.png b/output.png new file mode 100644 index 0000000000000000000000000000000000000000..b839cda79fa604c1f543a2736838dde8ecfbdfcc GIT binary patch literal 45673 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 HE+_v5dp#Z} literal 0 HcmV?d00001 diff --git a/screenshot_readme.PNG b/screenshot_readme.PNG new file mode 100644 index 0000000000000000000000000000000000000000..9e170200022e7faf3e03dbb573d27368accd8277 GIT binary patch literal 6548 zcmb_gi$BwC|5tZ9mm*Dy6`>T8@ThF1gv7cXq8wIKZiHAUcIZe<4#}-(E$34Xi#gj$ z4k;{=v0-Iwn2nijcK&&)`+1%};CH>Q@AbWopU-u@ug~H2xf0Gh+ihB}xn4<0X_JHf zX%{7>KT4MCC)ciCF3on2zhC~XfVtS&C{^_CnqF?K3OMO>Qb`GyvO#)9dAYsrru{{j zlG5f6|Nd5Vh815`QrfZK;q*zj+rDhfXtLh7$WEsIS>xwxzAN8Qy?F1Q^WEzj@Ahmt zxb2!!|GzYL+#9VmZQFkD`u(aW>XU<-lWh)bX@}rLPt_y0nF})1)vO{0yq|mbI?k^? zh8I-0yVqVy`d=F8t%+{`EZY5- zsit>6Qar6_5YiN1T7+W~b>I>fytMlSI9l{h*l=swS}`|=6b6PU|A*Xt@$wpNAZi>W zUm}i5-2W8&xjkg>jwurN0Co?=o z`}#~q!cY<-Uj3hKye@Ne`jK%ZPzRfwlETU(6o;H8t^t$~MLml8Z(v!qWK8%f5)2pF zan^w0!-zVusPz$G)QkitTgw({^+g0;l0@K23#W+(T{+n_X>IIyLRft!R30m2K~dgb z39P?}5myz(pi6I)N8}|w(cB2cb9H{0+T6fv9B*o&ebi`pL&;M_!>loa;}N_>ex+)$D?UA z2=arqLb`#2>m)D;(s^A@PP|~`feLcidj8!hPGv86iqpUZ2|wzlG^T*W*FyAiKLbWN z90HZ*gIrPPn??}`mA`Y^OTDukcPM1O-P5#2!{JQb=r+7%Id1?N*#UHGXIV^W|B{26 zCzL^*jH~K-+565rJU|cRr67N37q9;!nNv6l=f^xoT7<|hOy&AMJ8e<0a4IjQ0mkG+ zEZ-~r4ujO&=6XBub)@;m8!`pgek5(<6T~5RCuI3+vSO zyc7Vfw=cg{Lwq!+ed-rD)Yl=#E)H+^Wq={&?`;j$vxJCgWL-6^S~BB7WN63EhDSr( zi^mYc7S4}&;<%vHkKbh=lyQyfMi^Ewda{HUD{qxanF?Po+}^SFnHIDMKpRlDGB@hN z_VaSx*5=2~_pYGcm^H^LB)UCN>$+1t zW2BDXK(nmr6AebuX!2u;0&$Rp+HBIePtVIswE6IF$ZqwS1v={?7~23v*@pi{&CT#g z$@k_TaoJfqM>=1a9phA(jIlw|`2f87Da`l@fJ5Y;?d_}7w=axVo{2Q2cRsQycJ02c z>^0i@xHF$IoxH&|XE99=kvj8ANYCc4rjCvurt7BgL5a9Hk`wKf)@O(+{vubeD;zH~ z8p-?u8M<*=<`*3QOL70sEqvTnwKrp_`UnGrFBP z0$6lI^jL$N*EBkD^~L%no!tGq8G1L7cB0i*-7~?Q4K>_`S1= zPuQZt?>hXi1;VoXJm+W`KVYQCl6I+Wll#f0rr0J$^^w}*s_!;7t+tMZ_JQJrmGr&n zoaZW9fmD~$5FcR61TJ*LoZn_+mpqnZx7JSoH$B0l=Kb}5N_3ce`fh&!|5kg={iWd% zhSO&8Z*p(BKAKtP*i$zaRd+#|xvU=XoDI+=x(-Mo0!N@?coh<|hi`fLzP_f57@G&r z42#=vyI5#d4xl3w@#Y!&Y1{Fjk!vE{*J2eHO6@cAxuc+`6X8|;ZMy^Q&Z^()7<|B|@7P6IZh`T?;QTa07n?ph;ERN3o^$tya@2<1AYiql zOQ+l70KF0VC4J#uL5Smy5SDnzYBMAdbv_y(IUHLcZFMF4bmkl+4t8Gw$ z05e;5N{+eKj9&kHw0gbmjCy(afBnoChYkO2{69Gzo3ww}ZCPb>2BX6t%l=;%#Vhg1 z_l5PCFMH^p>D^^}EJ856@2Kre1M7VL%HQ3dDP3r{qgDFqdRzrh%-?L>ucA%?#^ zEoJm72BZe>Q$_Iv5PR3IMmqhI1&+e1;Wn4Gq(jYM1yHOblr|tYVv7RzQ8|jEH^lNf z2Z@=ANk>&6*I;)DDd_MBRr6Q1<|vaO;%aA}eBgEYSlGQ5z?Ff4qN{f-vS# z#ap^J@@X*yiWi>_*Q@Sg8Q3|otIIPo!xP~Mf+-*YJv>xqnGHVnz} zu+B;-jZ|5V&q17HLo2PncD7zZ+Xl&z$iJCk{RTL>H}VsYD|w)$==DsfGV37B_74@O znc7d9{6M@G*b_(OcD(9CL|1uQScz;;E)URF2`1PqeNCyXf*=9Mv2F9gF0sz3;D{$U zzQfrY_~2}wCDn&affqm_qCvp9v+*iWHZIV z5>?Fu62@A)hKdI*GceU8lyU1=pbJ)rQEev{&)f#ch` z24rK0a(_=L)!deBAh2qF#}ARz#=vKl_atp%gN(nQ4}OHF5IMF?6(+hi97Owlc4ePQP81yJAf z`E{=^KadrOCi#<0HSYdl4^6cuP)7y!ae2zT;IuTp*0J??6ttxhQ~MBgxHFQo^{DpS z6g&;&8-((cctptJB8LfT6ygXD-=Ps>w7o=hmaf|w9KjOO%|yeCt~^iSn&6(A!Xf^L ze0HbM5>R;)lu679`Ah!QRFwXiG$!W{?hulMkXcBVw1BHSAkU!m(tmK~fs1 zy=vSk)#wET$LCscis)z0qZWt>kNV>0>AJD+@)O+*&+jP1n4$+f$2+D%UBGwV>~5FbVGKiI*xr zXMyuEq^+h3jk3{X)boC5y|Uy3z^cyiElUktjlzh`Bwm`>XDR*yAeVYtdI{?&(>*A8 z+Q6(^%j-wi#W5js*qUnw(k;!d@f( zsmn~kc|@c{u;Ixc%lnh?kN70qVH5F5?zcz}QSX^wI%mV$ zpYx8vWS7{g{k3+CXo_MRh*3J1%IeJee98473dS-x%j=&B=zzXSAx-*1m*FoZsPSGp%`YlF<82aAS=B4Wx3K10vgvjIUWN7#7ilZ#!@!?mJxw22xz zoumS;$WGth;~j@+HFSx*Qkr5u8tqbf45074swe1kNUloUrB%wg!$;JME$q#6M;l-3 zU02oXm{7f>b|W(V_D1pbBLk>072i|Fpte-=V2LK12!g;O2Qxoo8?9r~Ki2T9a<5`+ zxk9GRIhe%19P-o$yYxbqX#xAUOb-zPhkU2yx=0`W1ngFCzp+v_#Sg1uQ(z8r=d4ijg?RURx|ePMAq(JN;)X!_X6TuQFfw$({}!e_F-lT9rr5 zo$7!90U3^2zEYWYkYa5w@f>oY;W}{u$q<-C%P!IN8e|9f;5aXnhsGN=VHZRJO=i_B$SfQZq2xzSKD8T>YGVX}g?Iti;rkI?B?*80uO+3R) z0W%Rnb9E)MbWa}3d!B%n=D=KsGP!+%2!U((2Ha!lPR$leQ|g3T`$HjC#`F(H?f6^> z2JA4qF3a-dIJgiz*?SDWsz6UqWsYrNV<*EtiVi^?kQU4`jbRdmD?8ADL>yl~N6d0j zxZald$*bbtvY;f$k~~2aNthh0lyp{!Ge&@G!4_)OE|Lh;se@!9YJvijU_X;OLJ>|= zOuHwO&>&OOZin_YPcP@OO?pvt6$NAChCYFGK)8v$XJ@@+1&W1cbBH18VC+Jxamd^f zRd*E<%usHZL)58$l2y-KAXjLoxjG7^{y3|8t&q@;jmhrMSrz85tPL}^7{4w@Q z>3-G5Bz|oBDIR6+~+e?44Ngu141ID!U;8`PKf58qPf89>iqkwk= zj20!J^ud!FW&&jipb05@*^BFyWiq$3F*2ihupPJ~1YXSpj1Z6dZ=$)dAd^Lb*kTD2 zoh+5d1=@yhHa_IJ05r=om~ zx6_Vo3$(_e%ul~#gKjPGEKN|=%c5rxh>lQTg~_{anRktmFlA48D(5ia5Xc$J&$?#l| z(Swl4X4T3Rwf!zDeg{N%RsSbA+PLpO{RdZnHNe8(T2yZP#IV6p_SNlufpkWLhR4ntRFCo3H;?ddWZJ^Ni(ovBl8? zq`*zTclGXD$As-nB(t|pMHsulN~Km7*UAf@9w#eeSXqr9|6-HdK?iE z5_b_!cxfFGcpdZENjM)g8@-{SSJRz)ghEW?GGV6oWmVd&u=cph_sLXj6NWT7AA7oe ze|h*R+tSHkW5o++b}!-3jDi3mSoeJ6Zr;)0G)1KN)|Y zxwfFgmo~7n;+-#UnTk%DctHGyT?RB;P+$$cTw{AyqrVrslf?AAqmqNY(BU&KCXxj&?`2OzvHj~0H#@`6Kz@0l4CK+lkl zyV!a{{FYMA`gMEWm~+1QV{Td#+J1Z->YYX6T|C+?uQ=5|f-dsjIBa<#|5Nmw=0-`i zdWkaExtt}EIS2h7Kz z_l1s~jmEiR9+``6z>wPKmEFw8Y$&@N4-#K29|-j$^#SiB^J3_7h$S`bqWLC0(b4?L z#vAj}Gi?TVHq!J0U~@b_bN-`6E8ymtD}TqXWkiXTI7|w))A0g>-2rfViUi&7EgI{4}SZq(FfL1}LO z9eWR!-|9Cei;jS;e}_2qo2V+b5%#4CtjmGcz=2(`I+ZK-q4qAerS3<9T!N?Y2~pKO z^I+fy{sNlnDq@jMIuGpp$#Yp;mVE}?9>0&hChp#nN%nbZ2Fg1+FsWxJE065GMHleX z4!nC~8^oc Date: Wed, 4 Aug 2021 11:08:38 +0200 Subject: [PATCH 6/8] Update readme.md fixed links of screenshots --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9b691f5..612b5d1 100644 --- a/README.md +++ b/README.md @@ -22,8 +22,8 @@ plots. Example for setting the parameters: -![image](https://github.com/hn437/random_walk/blob/yannik/screenshot_readme.PNG) +![image](https://github.com/hn437/random_walk/blob/main/screenshot_readme.PNG) Example for the output: -![image](https://github.com/hn437/random_walk/blob/yannik/output.png) +![image](https://github.com/hn437/random_walk/blob/main/output.png) From bac5d249a8e1bce12d0a808dc3cfb730a350ca13 Mon Sep 17 00:00:00 2001 From: "Danner, Jonas" Date: Wed, 4 Aug 2021 12:11:08 +0200 Subject: [PATCH 7/8] fixed a bug in getting walking direction which ignored a shouthwards step, fixed a bug in the subplot creation when using a single walker and replaced pythons round() function with maths ceil function to correctly round the number of subplots up --- walker.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/walker.py b/walker.py index c23bb9c..d0a1ae5 100644 --- a/walker.py +++ b/walker.py @@ -5,6 +5,7 @@ # Python code for 2D random walk. # Source: https://www.geeksforgeeks.org/random-walk-implementation-python/ import sys +import math import numpy as np import matplotlib.pyplot as plt @@ -28,7 +29,7 @@ def create_walkers(number_of_steps, number_of_walkers): return scene - + def calculate_the_path(walker, number_of_steps): """ Calculates the path the walker walks @@ -42,7 +43,7 @@ def calculate_the_path(walker, number_of_steps): # calculate new coordinates for each step for stepnumber in range(1, number_of_steps): - direction_of_step = np.random.randint(1, 4) + direction_of_step = np.random.randint(1, 5) if direction_of_step == 1: # east x_coord[stepnumber] = x_coord[stepnumber - 1] + 1 y_coord[stepnumber] = y_coord[stepnumber - 1] @@ -72,10 +73,10 @@ def plot_the_paths(list_of_walkers, outputfilename): columns_of_plots = 1 else: columns_of_plots = 2 - rows_of_plots = round(len(list_of_walkers)/2) + rows_of_plots = math.ceil(len(list_of_walkers)/2) # create the subplots - figure, axis = plt.subplots(rows_of_plots, columns_of_plots) + figure, axis = plt.subplots(rows_of_plots, columns_of_plots, squeeze=False) for counter in enumerate(list_of_walkers): # get the coordinates of this walker, get its subplot and plot the path in it x_coords = counter[1][:, 0] @@ -90,7 +91,7 @@ def plot_the_paths(list_of_walkers, outputfilename): axis[row, column].plot(x_coords, y_coords) axis[row, column].set_title(f'Walker {counter[0]+1}') - if len(list_of_walkers) % 2 != 0: + if len(list_of_walkers) % 2 != 0 and len(list_of_walkers) != 1: # if the number of walkers is odd, delete the last (unused) subplot figure.delaxes(axis[(rows_of_plots - 1), 1]) From 88da3121fce4ccd869a1751959232bafdd88b4e6 Mon Sep 17 00:00:00 2001 From: Jonas <36933111+hn437@users.noreply.github.com> Date: Fri, 13 Aug 2021 09:57:33 +0200 Subject: [PATCH 8/8] changes for additional tasks (#5) * Introduced classes for different walker behaviours, added type annotation, revised comments and docstrings, added plotting of start- and endpoint as well as a legend * Renamed classes and reformatted * Reformatted some comments * added running Walker and flying walker to the script and renamed some variables for better understanding Co-authored-by: Yannik * implemented functions to get starting and ending positions instead of writing them mandatorily * reformatted docstrings and removed repeating code * fixed bug in step calculation and added marker definitions for plots * added assert statement * added figtext for flying walkers * first draft of a landscape implementation * moved functions into class * implemented all necessary functions into walker class, adjusted way of calculating path * moved user input check into create_walker function and fixed typos * added filling to building in plot * added files with tests for the walker script * fixed typo and removed temporary input definition * resort imports and fixed typo * introduced outfile_name variable instead of writing it directly * added improved try-except-statement * removed fixed dpi setting * changed a walking speed description to casually * updateed readme * update files which where deleted/newly created * added dependency numbers * fixed typo Co-authored-by: Yannik --- README.md | 81 +++++---- TheRoutesOfMyWalker.png | Bin 0 -> 108075 bytes output.png | Bin 45673 -> 0 bytes rand_walk_100000.png | Bin 51659 -> 51249 bytes screenshot_readme.PNG | Bin 6548 -> 0 bytes test_walker.py | 246 +++++++++++++++++++++++++++ walker.py | 366 +++++++++++++++++++++++++++++----------- 7 files changed, 565 insertions(+), 128 deletions(-) create mode 100644 TheRoutesOfMyWalker.png delete mode 100644 output.png delete mode 100644 screenshot_readme.PNG create mode 100644 test_walker.py diff --git a/README.md b/README.md index 612b5d1..c2d7e98 100644 --- a/README.md +++ b/README.md @@ -1,29 +1,52 @@ -# Instructions for the random walker scipt: - -The random walker creates a random path for a number of steps and number of walkers, specified by the user. The output is an image, which shows the walk for every walker in different -plots. - -## Instructions to the user - -1. Clone the repository from Github -2. Move to the cloned repository via the command line -3. Specify the number of steps, the number of walkers and the name of the outputfile (as can be seen in the screenshot below) - Important: **the number of walkers cannot be higher than 12** -4. You need to call the script with python, writing: python walker.py ... -5. For example: python walker.py 10 4 ./test_image.png - - 100000 = number of steps - - - 4 = number of walkers - - ./test_image.pn = name of the outputfile - - -Example for setting the parameters: - -![image](https://github.com/hn437/random_walk/blob/main/screenshot_readme.PNG) - -Example for the output: - -![image](https://github.com/hn437/random_walk/blob/main/output.png) +# A Random Walk Simulation: + +In this repository you can find a basic implementation of a random walk simulation in a +2-dimensional space. The scenario is always the same: Our walker is bored with being +inside, he rather goes for a stroll outside. So, the walker leaves the house and starts +walking, without any destination in mind… and refuses to go back inside! + +You can specify for how long the walker should walk and at what pace. You’ll get +a map of the route the walker took returned! But be aware: if you let the walker walk to +far, he might rather take a plane... + + +## How to use the Script +In order to use the script, you have to clone this repository to your drive and the +following libraries need to be installed your python environment: +### Dependencies +For running: +- Python 3.7.10 +- NumPy 1.20.3 +- Matplotlib 3.3.4 + +For testing if the script is executed correctly: +- pytest 6.2.4 + +### Usage +To use the script, you need to navigate to the cloned repository on your machine from +the command line. If you're in your directory and the correct python environment is +activated, you can run the script. Therefore, you state the command `python walker.py ` +followed by your settings. You have to specify the following settings: +```` +1. The walking time +2. The number of walker who are walking at usual speed +3. The number of walker who are walking fast +4. The number of walker who are running +5. The path the outfile should be saved at +```` + +However, note that all settings have to be defined, so if you want to have a single +walker, just define all the others as 0. Furthermore, a maximum of 12 walker overall are +allowed. + +As an example, you would need to state the following command to get the walking maps of +two walker at usual speed, one fast-walking walker and a running walker if you let them +walk over a time of 1000: + +`python walker.py 1000 2 1 1 ./TheRoutesOfMyWalker.png` + +The resulting image of the maps would look similar to the one below: + +![image](https://github.com/hn437/random_walk/blob/main/TheRoutesOfMyWalker.png) + +### And now: let them walk! diff --git a/TheRoutesOfMyWalker.png b/TheRoutesOfMyWalker.png new file mode 100644 index 0000000000000000000000000000000000000000..d244c496569eb4fbd34c13443f0addff61dd93db GIT binary patch literal 108075 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 z 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 HE+_v5dp#Z} diff --git a/rand_walk_100000.png b/rand_walk_100000.png index 5582dd816c148b85c804b50392f36c6b5d12224a..62b4d57c0c0fb24a85c7ac68d1edcf86203d5b7e 100644 GIT binary patch literal 51249 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 diff --git a/screenshot_readme.PNG b/screenshot_readme.PNG deleted file mode 100644 index 9e170200022e7faf3e03dbb573d27368accd8277..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6548 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 0 + and counter_south > 0 + and counter_west > 0 + and counter_east > 0 + ) + + +def test_create_building(): + """Tests whether the building is created correctly. The starting coordinates are set + manually as well as the expected building. The actual building is calculated + with the walker function and compared to the expected""" + expected_building = [-20.5, 19.5, 0.5, 15.5] + walking_time = 1 + walking_speed = 1 + test_walker = walker.Walker(walking_time, walking_speed) + test_walker.x_coordinates = np.array([0, 0]) + test_walker.y_coordinates = np.array([0, 0]) + actual_building = test_walker.create_building() + assert actual_building == expected_building + + +def test_avoid_building(): + """tests whether the walker avoids the building. + + Testing mode: as the building is avoided using a while loop, the test is not + that simple using a real walker. Instead, the coordinates of the walker are set + and the building is set to be reached by the walker if he does a step eastwards + (x-coordinate +1). Then, the path-calculation is executed. The resulting + coordinate is checked, it must be outside the building. However, the chance of + the walker walking in the direction of the building is only 25%. Therefore, the + check is done 100 times, so hypothetical the walker tries to walk into the + building 25 times""" + walking_time = 1 + walking_speed = 1 + test_walker = walker.Walker(walking_time, walking_speed) + for _ in range(100): + test_walker.x_coordinates = np.array([1, 1]) + test_walker.y_coordinates = np.array([1, 1]) + test_walker.building = [1.5, 10.5, -20, 20] + test_walker.calculate_the_path() + assert test_walker.x_coordinates[1] != 2 + + +def test_get_start_point(): + """Test whether the correct coordinates are returned for the start point""" + walking_time = 1 + walking_speed = 1 + test_walker = walker.Walker(walking_time, walking_speed) + test_walker.x_coordinates = np.array([0, 1]) + test_walker.y_coordinates = np.array([9, 10]) + assert [0, 9] == test_walker.get_start_point() + + +def test_get_end_point(): + """Test whether the correct coordinates are returned for the end point""" + walking_time = 1 + walking_speed = 1 + test_walker = walker.Walker(walking_time, walking_speed) + test_walker.x_coordinates = np.array([0, 1]) + test_walker.y_coordinates = np.array([9, 10]) + assert [1, 10] == test_walker.get_end_point() + + +def test_plotting(): + """Test that an image is written by the function plot_the_paths() and that it can + be opened""" + walking_time = 1 + walking_speed = 1 + outfile_name = "test_image.png" + test_walker = walker.Walker(walking_time, walking_speed) + test_walker.calculate_the_path() + with tempfile.TemporaryDirectory() as tmp_dirname: + outfile = os.path.join(tmp_dirname, outfile_name) + walker.plot_the_paths([test_walker], outfile) + image = imread(outfile) + assert len(image.shape) == 3 diff --git a/walker.py b/walker.py index d0a1ae5..9d9e9dd 100644 --- a/walker.py +++ b/walker.py @@ -1,138 +1,306 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -"""A Random Walk Simulation For Multiple Walkers""" - +"""A Random Walk Simulation For Multiple Walker""" +# based on the idea of: # Python code for 2D random walk. # Source: https://www.geeksforgeeks.org/random-walk-implementation-python/ -import sys + import math -import numpy as np +import sys + import matplotlib.pyplot as plt +import numpy as np -def create_walkers(number_of_steps, number_of_walkers): +def create_walker( + walking_time: int, + number_of_usual_walker: int, + number_of_fast_walker: int, + number_of_running_walker: int, +) -> list: """ - Creates a list of numpy arrays which each hold the coordinates of a walker. The coordinates - are randomly chosen in a range from 0 to the number of steps - :param number_of_steps: the number of steps the walker will make. This defines the - dimension of the array which represents the walker - :param number_of_walkers: the number of walkers defines the number of arrays, which - will be created - :return: a list, the 'scene' which contains all walkers, so all arrays containing coordinates + Checks if all user definitions of the walker are valid. If so, Creates a list of + all walker objects and calculates their paths. + :param walking_time: the 'time' each walker walks and therefore (depending on it's + respective speed) the number of steps the walker will make + :param number_of_usual_walker: the number of usual walker defines the number of + objects of this respective class which will be appended to the scene + :param number_of_fast_walker:the number of fast walker defines the number of + objects of this respective class which will be appended to the scene + :param number_of_running_walker: the number of running walker defines the number + of objects of this respective class which will be appended to the scene + :return: a list, the 'scene' which contains all walker, so all objects and their + coordinates """ + number_of_walker = ( + number_of_usual_walker + number_of_fast_walker + number_of_running_walker + ) + assert ( + walking_time >= 1 + ), "walking_time must be greater than '0'. " "You stated '{}'".format( + walking_time - 1 + ) + assert ( + number_of_usual_walker >= 0 + and number_of_fast_walker >= 0 + and number_of_running_walker >= 0 + ), ( + "The number of walker can't be negative for any class. You stated '{}', " + "'{}' and '{}' for the walker classes".format( + number_of_usual_walker, number_of_fast_walker, number_of_running_walker + ) + ) + assert ( + number_of_walker > 0 + ), "The number of walker must be greater than '1'. " "You stated {}".format( + number_of_walker + ) + assert ( + number_of_walker <= 12 + ), "The number of walker must be max. '12'. " "You stated {}".format( + number_of_walker + ) + scene = [] - for _ in range(number_of_walkers): + for _ in range(number_of_usual_walker): # create the array of a walker and add it to the scene-list - walker = np.random.randint(low=0, high=number_of_steps, - size=(number_of_steps, 2)) - scene.append(walker) - + scene.append(Walker(walking_time, 1)) + for _ in range(number_of_fast_walker): + # create the array of a walker and add it to the scene-list + scene.append(Walker(walking_time, 2)) + for _ in range(number_of_running_walker): + # create the array of a running walker and add it to the scene-list + scene.append(Walker(walking_time, 4)) + for walker in scene: + walker.calculate_the_path() + continue return scene -def calculate_the_path(walker, number_of_steps): - """ - Calculates the path the walker walks - :param walker: The array representing the walker, holding random coordinates - :param number_of_steps: the number of steps the walker takes - :return: the updated array representing the walker, holding all coordinates the walker walks to - """ - # split coordinates - x_coord = walker[:, 0] - y_coord = walker[:, 1] - - # calculate new coordinates for each step - for stepnumber in range(1, number_of_steps): - direction_of_step = np.random.randint(1, 5) - if direction_of_step == 1: # east - x_coord[stepnumber] = x_coord[stepnumber - 1] + 1 - y_coord[stepnumber] = y_coord[stepnumber - 1] - elif direction_of_step == 2: # west - x_coord[stepnumber] = x_coord[stepnumber - 1] - 1 - y_coord[stepnumber] = y_coord[stepnumber - 1] - elif direction_of_step == 3: # north - x_coord[stepnumber] = x_coord[stepnumber - 1] - y_coord[stepnumber] = y_coord[stepnumber - 1] + 1 - else: # south - x_coord[stepnumber] = x_coord[stepnumber - 1] - y_coord[stepnumber] = y_coord[stepnumber - 1] - 1 - - # return all coordinates of the path - return walker - - -def plot_the_paths(list_of_walkers, outputfilename): +def plot_the_paths(list_of_walker: list, outfile_name: str) -> None: """ - Creates the plot of the calculated path of the walker - :param list_of_walkers: Arrays representing the walkers. Each array holds the - coordinates of the respective path the walker walked. - :param outputfilename: The file which will be created with the plotted paths + Creates the plots of the calculated paths of the walker as well as the building + next to it + :param list_of_walker: A list holding the walker objects. Each object holds the + coordinates of the respective path the walker walked. + :param outfile_name: The file which will be created with the plotted paths """ # define the number of rows and columns of subplots - if len(list_of_walkers) == 1: + if len(list_of_walker) == 1: columns_of_plots = 1 else: columns_of_plots = 2 - rows_of_plots = math.ceil(len(list_of_walkers)/2) + rows_of_plots = math.ceil(len(list_of_walker) / 2) # create the subplots - figure, axis = plt.subplots(rows_of_plots, columns_of_plots, squeeze=False) - for counter in enumerate(list_of_walkers): - # get the coordinates of this walker, get its subplot and plot the path in it - x_coords = counter[1][:, 0] - y_coords = counter[1][:, 1] - - row = int(counter[0]/2) - if counter[0] % 2 == 0: + figure, axes = plt.subplots(rows_of_plots, columns_of_plots, squeeze=False) + figure.set_figheight(4.8 * rows_of_plots + 1) + flying_walker = [] + for walker in enumerate(list_of_walker): + # get the walker subplot and plot the path in it + row = int(walker[0] / 2) + if walker[0] % 2 == 0: column = 0 else: column = 1 + if walker[1].walking_speed == 1: + walker_type = "walking casually" + elif walker[1].walking_speed == 2: + walker_type = "walking fast" + elif walker[1].walking_speed == 4: + walker_type = "running" + start_coordinates = np.array(walker[1].get_start_point()) + end_coordinates = np.array(walker[1].get_end_point()) + distance = start_coordinates - end_coordinates + if ( + math.sqrt(distance[0] ** 2 + distance[1] ** 2) + ) >= 150: # pythagorean theorem + axes[row, column].plot( + [start_coordinates[0], end_coordinates[0]], + [start_coordinates[1], end_coordinates[1]], + ) + flying_walker.append(walker[0] + 1) + else: + axes[row, column].plot(walker[1].x_coordinates, walker[1].y_coordinates) + axes[row, column].fill( + [ + walker[1].building[0], + walker[1].building[1], + walker[1].building[1], + walker[1].building[0], + walker[1].building[0], + ], + [ + walker[1].building[2], + walker[1].building[2], + walker[1].building[3], + walker[1].building[3], + walker[1].building[2], + ], + c="grey", + label="Building", + ) + axes[row, column].scatter( + walker[1].get_start_point()[0], + walker[1].get_start_point()[1], + label="Startposition", + marker="o", + c="turquoise", + ) + axes[row, column].scatter( + walker[1].get_end_point()[0], + walker[1].get_end_point()[1], + label="Endposition", + marker="^", + c="orange", + ) + axes[row, column].legend() + axes[row, column].set_title(f"Walker {walker[0] + 1} is {walker_type}") - axis[row, column].plot(x_coords, y_coords) - axis[row, column].set_title(f'Walker {counter[0]+1}') - - if len(list_of_walkers) % 2 != 0 and len(list_of_walkers) != 1: - # if the number of walkers is odd, delete the last (unused) subplot - figure.delaxes(axis[(rows_of_plots - 1), 1]) + if len(list_of_walker) % 2 != 0 and len(list_of_walker) != 1: + # if the number of walker is odd, delete the last (unused) subplot + figure.delaxes(axes[(rows_of_plots - 1), 1]) - # arange subplot to not interfere each other, save the figure to the outputfile and + # arrange subplot to not interfere each other, save the figure to the outfile and # show the plot to the user - figure.tight_layout() - plt.savefig(outputfilename) + if len(flying_walker) > 0: + plt.figtext( + 0.5, + 0.01, + f"\nWalker(s) {flying_walker} took a plane, as they don't want to walk" + f"such a long distance!", + ha="center", + ) + figure.tight_layout(rect=[0, 0.01, 1, 1]) + plt.savefig(outfile_name) plt.show() +class Walker: + """Represents a walker to which a walking speed and walking time are given""" + + def __init__(self, walking_time: int, walking_speed: int): + self.walking_speed = walking_speed + self.walking_time = walking_time + self.number_of_steps = self.walking_time * self.walking_speed + 1 + (self.x_coordinates, self.y_coordinates) = self.assign_random_coordinates() + self.building = self.create_building() + + def assign_random_coordinates(self) -> tuple: + """ + This function creates random coordinates, as many as the walker does steps. + These will be updated later when the walker walks by calling the function + calculate_the_path() + :return: A tuple of two arrays holding the x- or y-coordinates + """ + # create random coordinates + x_coord = np.random.randint( + low=0, high=self.number_of_steps, size=self.number_of_steps + ) + y_coord = np.random.randint( + low=0, high=self.number_of_steps, size=self.number_of_steps + ) + return x_coord, y_coord + + def calculate_the_path(self) -> None: + """ + Calculates the path the walker walks by updating each position and checking if + the walker does not collide with the building. + """ + # calculate new coordinates for each step + for step_number in range(1, self.number_of_steps): + self.calculate_next_step(step_number) + while ( + (self.x_coordinates[step_number] > self.building[0]) + and (self.x_coordinates[step_number] < self.building[1]) + and (self.y_coordinates[step_number] > self.building[2]) + and (self.y_coordinates[step_number] < self.building[3]) + ): + self.calculate_next_step(step_number) + + def get_start_point(self) -> list: + """ + gets the starting position of the walker + :return: a list with the x-coordinate as the first element and the y-coordinate + as the second element + """ + return [self.x_coordinates[0], self.y_coordinates[0]] + + def get_end_point(self) -> list: + """ + gets the last position of the walker + :return: a list with the x-coordinate as the first element and the y-coordinate + as the second element + """ + return [self.x_coordinates[-1], self.y_coordinates[-1]] + + def calculate_next_step(self, step_number: int) -> None: + """ + This is a helper function which is used by the function calculate_the_path. It + is executed each time the next step needs to be calculated or if the walker + would walk into the building. It takes a random direction and updates the + coordinates from the position before and adds a step according to the + randomly determined direction + :param step_number: The number of step to be calculated + """ + direction_of_step = np.random.randint(1, 5) + if direction_of_step == 1: # east + self.x_coordinates[step_number] = self.x_coordinates[step_number - 1] + 1 + self.y_coordinates[step_number] = self.y_coordinates[step_number - 1] + elif direction_of_step == 2: # west + self.x_coordinates[step_number] = self.x_coordinates[step_number - 1] - 1 + self.y_coordinates[step_number] = self.y_coordinates[step_number - 1] + elif direction_of_step == 3: # north + self.x_coordinates[step_number] = self.x_coordinates[step_number - 1] + self.y_coordinates[step_number] = self.y_coordinates[step_number - 1] + 1 + else: # south + self.x_coordinates[step_number] = self.x_coordinates[step_number - 1] + self.y_coordinates[step_number] = self.y_coordinates[step_number - 1] - 1 + + def create_building(self) -> list: + """ + This function calculates the building of the walker. It's a rectangle north of + the walker starting position + :return: a list holding the 4 coordinates of the building + """ + xmin = float(self.get_start_point()[0]) - 20.5 + xmax = xmin + 40 + ymin = float(self.get_start_point()[1]) + 0.5 + ymax = ymin + 15 + return [xmin, xmax, ymin, ymax] + + def main(): - """The main program. Reads in the user definitions, creates the scene, calculates - the path and plots it""" + """The main program. Assigns the user definitions, creates the scene and plots it""" + # read in specifications defined by the user try: - # read in specifications defined by the user - number_of_steps = int(sys.argv[1]) + 1 - number_of_walkers = int(sys.argv[2]) - outputfilename = sys.argv[3] - - assert number_of_steps > 1, "number_of_steps must be greater than '0'. " \ - "You stated '{}'".format(number_of_steps - 1) - assert number_of_walkers > 0, "number_of_walkers must be greater than '1'. " \ - "You stated '{}'".format(number_of_walkers) - assert number_of_walkers <= 12, "number_of_walkers must be max. '12'. " \ - "You stated '{}'".format(number_of_walkers) - except ValueError as err: - print("Error: one of the inputs was not correctly specified.\n" - "The Input must be specified as 'python main.py number_of_steps " - "number_of_walkers outputfilename'.\n" - "Inputformats: number_of_steps --> Integer, number_of_walkers --> " - "Integer, outputfilename --> string\n" - "outputfilename: path_to_output/filename.png\n" - "The number of walkers and the number of steps to be made must be " - "positive & at least 1\n\n\n", - err) + walking_time = int(sys.argv[1]) + number_of_usual_walker = int(sys.argv[2]) + number_of_fast_walker = int(sys.argv[3]) + number_of_running_walker = int(sys.argv[4]) + outfile_name = sys.argv[5] + except (SyntaxError, IndexError, ValueError) as err: + print( + "Error: At least one of the inputs was not correctly specified.\n" + "The Input must be specified as 'python walker.py walking_time " + "number_of_usual_walker number_of_fast_walker number_of_running_walker " + "outfile_name'.\n" + "Inputformats: walking time --> Integer, number of walker --> " + "Integer, outfile_name --> string\n" + "outfile_name: path_to_output/filename.png\n" + "The number of walker and the walking time must be positive & at least 1" + "\n\n\n", + err, + ) sys.exit(1) - scene = create_walkers(number_of_steps, number_of_walkers) - for walker in scene: - walker = calculate_the_path(walker, number_of_steps) - plot_the_paths(scene, outputfilename) + scene = create_walker( + walking_time, + number_of_usual_walker, + number_of_fast_walker, + number_of_running_walker, + ) + plot_the_paths(scene, outfile_name) if __name__ == "__main__":