TempAccess was a side company that I created with the purpose of providing temporary login credentials to any site. In my original implementation I created webapp for users to store their passwords and their associated url and TempAccess would generate a 'proxy' password. They could then give this proxy password to a contractor, friend, employee, etc. who could navigate to the url and use the TempAccess chrome extension to log in using the proxy password instead of the real one.
The problem with this approach was security. With this implementation you had to replace the proxy password with the real password on the user's browser and anytime you are sending information to a client, it is exposed. Even with encryption, at some point it had to be unencrypted to be able to be sent to the site's authentication.
This snippet has 3 parts:
1. The function that handles the password field locating and replacing logic.
2. A function that extracts the relevant cookies from the headless browser session to be sent back to the user.
3. A function to handle user input as they execute mouse moves, clicks, typing, etc.
Finding the bounding box of a pointcloud, which is just a collection of points in 3D space, is a trivial task: just take the minimum and maximum values along each axis. However, finding the bounding box of a point cloud where need to find the smallest bounding box of the point cloud while allowing the bounding box to be rotated in 3D space is a more difficult task.
This algorithm first uses Principal Component Analysis to reduce the dimensionality of the point cloud. It then iterates over all the edges of the convex hull of the 2 dimensional cloud and fits a bounding box to the point cloud aligned along that edge. It keeps track of the bounding box with the minimum volume as the optimal solution. The insight behind this algorithm is the assumption that the smallest bounding box will likely be aligned along one of the edges of this convex hull.
Optio was based on the theory that all manufacturing processes could be represented by a directed graph. However, the complexity of these graphs can often become pretty hairy. Some processes may have certain workstations where parts are separated but then come back together somewhere down the line. Some processes run parts in parallel, so the worker chooses which station to send the parts to next. Some processes even have cycles, where a part may need to visit the station multiple times. Some processes have all of these and more!
This algorithm was used to analyze a process and given a particular workstation that the parts are currently at, determine if the parts are ready to be sent on to the next station. That requires traversing the process graph to determine if the parts split, and if so, determine all the routes that parts must have come in from to be combined. It also requires ensuring that if the process has a cycle, that the part has reached station the desired number of times.
Solomon is an algorithmic crypto trading bot that uses Proximal Policy Optimization the develop a policy for executing trades. A key insight of my implementation was a way to determine the maximal trajectory along a rollout to receive highest reward. This information could be used to augment the baseline of the training algorithm to improve performance. The maximal trajectory is non-trivial because of the fee associated with making a trade.
The insight I had was to envision the environment's state space as a directed graph, where each node represents a position (e.x. long, short, liquid) and each edge represented the reward associated with traversing from a position at timestamp t to a position at timestamp t + 1. I can then leverage a modern path planning algorithm like A* to determine a good approximation of the best trajectory for a given rollout length.