Here is an example of an expert system for decision making coded in SWI-Prolog.
It takes a sample portfolio, a current asset price list and a risk tolerance profile it can then make decisions regrading selling financial assets based on specific strategy being applied.
These strategies are based on predefined tactics, and the tactics in turn are an application of lists of sell rules.
This an exercise in declarative logic programming, please DO NOT TAKE ANY OF THIS AS INVESTMENT ADVICE.
Currently only some sell rules, tactics and a strategy are implemented, this framework can however be easily extended to encompass a full spectrum trading decision making.
At some point in time I will also extend this post to further describe and document this code. For now you can just head over to https://swish.swi-prolog.org/ paste the code in the online IDE and take it for a spin.
Here is some of the work that we have done in a signal processing class CSC214 I was sitting in on during spring semester 2018, held at MCC, Rochester NY and instructed by D. Venable.
I helped with some of the software development for the creation of the first iteration of this class a long while ago, now years later it has been fully revamped.
The students now take hands on approach with both the hardware and software development. Unlike previews iterations where software was built by me and the instructor who originated the class and hardware was designed and built by the instructor. The old curriculum involved them experimenting and exploring this pre-built system, while in the new curriculum students are active part in all aspects of camera development, including embedded on camera and pc client software, case and mechanics design and building, circuit board layout and population, etc. Continue reading →
It is accomplished by changing the background color in-between scan lines being drawn on the monitor/screen. This requires accessing the video controller hardware directly and changing appropriate registers as well as a way to time it precisely with the screen being drawn.
HD44780 compatible LCD displays are controlled via a built in MCU, as such driving them to display text is just a matter of sending them the appropriate commands in the control protocol. Doing that from another MCU is quite trivial, however I had seen it done with just dip switches and seemed like a good exercise in some electronics basics, so built the circuit in Tinkercad.