arg max alpha
This commit is contained in:
		
							
								
								
									
										7
									
								
								main.py
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										7
									
								
								main.py
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							| @@ -58,7 +58,7 @@ def generate_data(matrix_path, epsilon, alpha_values): | |||||||
|     diff_norms = [] |     diff_norms = [] | ||||||
|  |  | ||||||
|     for alpha in alpha_values: |     for alpha in alpha_values: | ||||||
|         print(f"Running for alpha={alpha:.3f}") |         print(f"Running for alpha={alpha:.6f}") | ||||||
|         data = run_pagerank(matrix_path, epsilon, alpha) |         data = run_pagerank(matrix_path, epsilon, alpha) | ||||||
|         if data: |         if data: | ||||||
|             pagerank_iterations.append(data["pagerank_iterations"]) |             pagerank_iterations.append(data["pagerank_iterations"]) | ||||||
| @@ -67,7 +67,7 @@ def generate_data(matrix_path, epsilon, alpha_values): | |||||||
|             gauss_seidel_times.append(data["gauss_seidel_time"]) |             gauss_seidel_times.append(data["gauss_seidel_time"]) | ||||||
|             diff_norms.append(data["diff_norm"]) |             diff_norms.append(data["diff_norm"]) | ||||||
|         else: |         else: | ||||||
|             print(f"Skipping alpha={alpha:.3f} due to error") |             print(f"Skipping alpha={alpha:.6f} due to error") | ||||||
|             pagerank_iterations.append(None) |             pagerank_iterations.append(None) | ||||||
|             gauss_seidel_iterations.append(None) |             gauss_seidel_iterations.append(None) | ||||||
|             pagerank_times.append(None) |             pagerank_times.append(None) | ||||||
| @@ -111,11 +111,12 @@ def plot_curves(alpha_values, pagerank_iterations, gauss_seidel_iterations, page | |||||||
| def main(): | def main(): | ||||||
|     parser = argparse.ArgumentParser(description='Pagerank vs Gauß Seidel execution time depending on α') |     parser = argparse.ArgumentParser(description='Pagerank vs Gauß Seidel execution time depending on α') | ||||||
|     parser.add_argument('--alpha', type=int, default=10, help='number of alpha to test in the range (0,1)') |     parser.add_argument('--alpha', type=int, default=10, help='number of alpha to test in the range (0,1)') | ||||||
|  |     parser.add_argument('--max_alpha', type=float, default=1, help='stay strictly below this alpha') | ||||||
|     parser.add_argument('--epsilon', type=float, default=1e-7, help='epsilon value for the convergence') |     parser.add_argument('--epsilon', type=float, default=1e-7, help='epsilon value for the convergence') | ||||||
|     parser.add_argument('--matrix', type=str, default="out/input.mtx", help='path to the matrix file') |     parser.add_argument('--matrix', type=str, default="out/input.mtx", help='path to the matrix file') | ||||||
|     args = parser.parse_args() |     args = parser.parse_args() | ||||||
|  |  | ||||||
|     alpha_values = np.arange(0, 1, (1/args.alpha)) |     alpha_values = np.arange(0, args.max_alpha, (1/args.alpha)) | ||||||
|  |  | ||||||
|     (pagerank_iterations, gauss_seidel_iterations, pagerank_times, gauss_seidel_times, diff_norms) = generate_data(args.matrix, args.epsilon, alpha_values) |     (pagerank_iterations, gauss_seidel_iterations, pagerank_times, gauss_seidel_times, diff_norms) = generate_data(args.matrix, args.epsilon, alpha_values) | ||||||
|     plot_curves(alpha_values, pagerank_iterations, gauss_seidel_iterations, pagerank_times, gauss_seidel_times, diff_norms) |     plot_curves(alpha_values, pagerank_iterations, gauss_seidel_iterations, pagerank_times, gauss_seidel_times, diff_norms) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user