diff --git a/Assignment 1/assignment1.py b/Assignment 1/assignment1.py
index a8bb96f43e0bd65507dae1241962134c59595c98..ec014de86ffa47a4f76245ab301beb9b91af7caa 100644
--- a/Assignment 1/assignment1.py	
+++ b/Assignment 1/assignment1.py	
@@ -1,4 +1,4 @@
-iimport numpy as np
+import numpy as np
 # Initialize iteration counter
 # Import text files 
 Q = np.asmatrix(np.loadtxt('Q.txt'))
@@ -10,7 +10,7 @@ m = 0
 # Make a guess for x vector
 x = np.asmatrix(np.zeros(np.size(b)))
 x = np.transpose(x) #make column vector 
-alpha0 = 1
+alpha0 = 10
 count = 0
 # Define f(x)
 def f(Q,b,c,x): 
@@ -24,18 +24,19 @@ def gradf(Q,b,x):
 def armijo(alpha0,Q,b,c,D,m):
 	
 	alpha = alpha0
+	print('alpha is ', alpha)
 	s = 1
 	sigma = 10e-1
-	beta = 1/10
-	if f(Q,b,c,x+np.transpose(alpha*D)) <= f(Q,b,c,x) + sigma*alpha*(np.transpose(gradf(Q,b,x)))*np.transpose(D):
-		return alpha
-	else: 
+	beta = 1.0/2
+	while f(Q,b,c,x+np.transpose(alpha*D)) > f(Q,b,c,x) + sigma*alpha*(np.transpose(gradf(Q,b,x)))*np.transpose(D):
 		m+=1
 		#print('m is ', m)
 		alpha = beta**m*s
-		alpha = armijo(alpha,Q,b,c,D,m)
+		#print('alpha is ', alpha)
+	return alpha
+		
+		
 		
-		return alpha
 		
 def xval():
 	return x
@@ -45,32 +46,29 @@ def countval():
 
 # Begin Gradient Descent Algorithm
 def grad_opt(epsilon,x,count):
-	
-	
 	alpha = armijo(alpha0,Q,b,c,D,m)
-	print('alpha is ', alpha)
-	f1 = f(Q,b,c,x)
-	x = x - alpha*np.transpose(gradf(Q,b,x))*(np.identity(np.size(b)))*gradf(Q,b,x)
-	if np.linalg.norm(gradf(Q,b,x))>= epsilon:
+	xnew = x
+	#print('alpha is ', alpha)
+	while np.linalg.norm(gradf(Q,b,x))>= epsilon:
 		count += 1
-		print('x is ', x)
-		grad_opt(epsilon,x,count)
-		return 0
-	else:
-		print('Done')
-		print('x* is ', x)
-		print('f(x*) is ', f(Q,b,c,x))
-		print('epsilon is ', epsilon)
-		return 0
+		#print('f(x) is ', f(Q,b,c,x))
+		print('norm of gradf(x) is ', np.linalg.norm(gradf(Q,b,x)))
+		xnew -= alpha*gradf(Q,b,x)
+				
+	print('Done')
+	print('x* is ', x)
+	print('f(x*) is ', f(Q,b,c,x))
+	print('epsilon is ', epsilon)
+	return 0
 
 
 def run(epsilon):
 	xstart = xval()
 	countstart = countval()
-	epsilon = 0.1
 	grad_opt(epsilon,xstart,countstart)
+	return 0 
 	
-
+run(0.8895)