Changes

Jump to navigation Jump to search
no edit summary
<onlyinclude>[[Abhijit Brahme]] [[Work Logs]][[Abhijit Brahme (Work Log) | (log page)]]</onlyinclude>
==6/20/2017==
Created a script in python to concatenate 162 excel files
The file is located in the following location:
"E:\McNair\Projects\SBIR\Aggregate SBIR"
It is titled "concat_excel.py" <br>
The text file is in the folder, titled "SBIR" <br>
 
==6/23/2017==
fixed some bugs in the k-means based enclosing circle algorithm <br>
started running the algorithm on list of houston city coords <br>
==6/26/2017==
For a total of 41 coordinate sets, the algorithm completed the plots in about 32 hours. <br>
Average run time at a little over an hour per coordinate set <br>
Added functionality that would save the area of the total circles to a text file <br>
Running this now and will be completed end of the day tomorrow. <br>
Worked through the MATLAB code for the monte carlo <br>
Stripped the code for MSM,Monte Data, Industry 4, and Genetic Algorithm <br>
Will run tomorrow and adjust the data locations to try and debug <br>
 
==6/27/2017==
Identified some key errors in the stripped code for the Monte
1. The genetic algorithm is not returning a scalar value
2. The problem is the objective function is returning an empty vector, instead of a scalar
Made a plotter for Diana so she can visualize Houston Start-Up Data
==6/28/2017==
Fixed the bug. It was because we didn't have a global variable in the master script. <br>
James helped figure this out. <br>
 
==6/29/2017==
Figured out there was another bug in the code. After the optimization finished, there is a problem of mismatched dimensions. <br>
The code itself still takes a very long time to run. <br>
 
==6/30/2017==
Fixed the mismatched dimensions problem, but the code is still running. <br>
Went over a few methods to speed up the code:
1. Use gurobi for the solver
2. run the sampling on a bunch of clusters
Downloaded gurobi:
password: amount
Updated the plotter to include heatmaps. <br>
The geocode might be erroneous.
 
==7/10/2017==
Ran the MATLAB code for the monte carlo after fixing the bugs. <br>
Installed the MATLAB interface for Gurobi <br>
Worked on finishing some test cases for the enclosing circle. <br>
 
==7/11/2017==
The code ran and worked just fine. <br>
Now I need to figure out how to replace the optimization in the code with a Gurobi optimization. <br>
Finished the code for test cases on the enclosing circle. <br>
 
 
==7/12/2017==
Ran the enclosing circle and plotted run time vs. number of points <br>
Received an exponential graph. <br>
Finished deriving the areas for the test vc data using enclosing circle <br>
Worked on modularizing the google plotting functions <br>
Need to make the code a command line tool <br>
 
==7/13/2017==
Ran enclosing circle and saw that it used 2.6% of the CPU and ~200 MB of memory. <br>
Talked to Oliver about parallelizing the code in C++ or Java. <br>
Talked about using the highest K, with the lowest error to run the algorithm. <br>
Made an interactive command line tool for plotting the google maps circles <br>
 
==7/14/2017==
Started running the enclosing circle for the PhD students. <br>
Made an interactive command line tool for using the enclosing circle algorithm. <br>
Started looking at how to attack the MATLAB monte carlo problem using Gurobi. <br>
 
==7/17/2017==
Looked at the optimization function for the Monte. <br>
It is called readme.pdf <br>
It seems that the output of msmf_corr_coeff.m contains the appropriate objective function. <br>
It seems that nonlinearcons_msm.m outputs the appropriate constraints. <br>
Need to look at how to implement this in Gurobi for Matlab.
 
==7/18/2017==
Helped Diana learn how to implement the circle plotter for startup locations. <br>
Read up more about the genetic algorithm function in matlab. <br>
 
==7/19/2017==
Created a separate script for gmm_2stage_estimation which is used to implement gurobi. <br>
Was able to implement the lower bound,upper bound of the variables using gurobi. <br>
Am finding it difficult to describe the objective function in terms of the variables themselves. <br>
If I could do that, this would be a whole lot easier. <br>
The objective function does not match the readme.pdf the author has provided. <br>
Tried running the same program with the altered objective function. <br>
 
==7/20/2017==
Currently timing each of the functions involved with this script. <br>
Matlab encountered an error which forced the closing of the script. <br>
Will re-run
 
==7/21/2017==
Ran the monte and timed the functions. <br>
[[File:monteruntime.png]]
 
==7/24/2017==
Since the code actually runs now, thought about ways to add more info to what we know about the code. <br>
Still don't know how the function fed into the genetic algorithm actually relates to the documentation. <br>
Some ideas for tomorrow:
1. use the actual generations and values from the original script and time it
 
==7/25/2017==
Did as suggested above. <br>
Here are the results. <br>
[[File:runtime2.png]] <br>
When comparing the two, it seems like changing the generation size just makes the function take longer to run, but even after one generation the fitness function does not improve its value. <br>
I don't understand why you'd need more than one generation.
 
==7/28/2017==
Fixed the monte with James' help and utilized integer linear programming inside the genetic algorithm. <br>
Previously, the author was using a linear program and rounding the results (not advisable). <br>
We figure there must be some error in the monte because the genetic algorithm does not update. <br>
 
==7/31/2017==
The value passed into the genetic algorithm is either 0 or .1642. <br>
Here are the values of the key variables that determine the input of the genetic algorithm:
1. mm: either .1111 or .2462
2. M0: always .1111
3. W: either 1 or .0240
4. L: always 9
James seems to think the "trueval" is already set close enough to the optimal. <br>
This seems correct. <br>
==8/1/2017==
I changed trueval to be a larger margin to see if the genetic algorithm changes. <br>
And it didn't do anything. The function value always remains at 0 and the variables retain their values. <br>
We changed the market size, etc and now the function seems to change its values. <br>
==8/2/2017==
Got the function to work and produce a different outcome. <br>
Seems to be a problem with the strip_mkt_resample. <br>
Got a lot of resulting "NaN" values, traced it to stderr. <br>
We changed a value to an outer product in stderr and ran the code. <br>
==8/3/2017==
Here is the output when incorporating the outer product instead. <br>
[[File:monte_using_outer_product.png]]
==8/4/2017==
All the master files will run appropriately with the proper "task". <br>
These files are located here:
1. E:\McNair\Projects\MatchingEntrepsToVC\AdjustedCode
You literally open up the master.m file and press run.
[[Category: Work Log]]

Navigation menu