Skip to content
UoL CS Notes

Home

This website houses notes from my studies at the University of Liverpool. If you see any errors or issues, please do open an issue on this site's GitHub.

Cliques & Network Associativity

COMP324 Lectures

These are methods for finding important groups of nodes rather than individual nodes. Dense Subgraphs It may be useful to obtain a dense part of the network rather than a set of nodes with high degree. $k$-kernel The $k$-kernel of a network is the largest induced sub-network with no node...

Read More

Centrality - Important Nodes

COMP324 Lectures

One task with a network is to find which nodes are important. We can do this in several ways. Degree Centrality The simplest way to measure the importance of a node $v$ is to measure its degree $\deg v$. Nodes with higher degree are more important. An example would be...

Read More

Compiler Optimisations

COMP328 Lectures

Optimisation Types There are several operations that can increase the execution speed of the same code: Instruction ordering Memory access order Inlining Functions are included to where they are called from. Dead code/stores Code and variables that are never reached, or never have their values read, are removed. Code Hoisting...

Read More

Auction Misbehaviour

COMP315 Lectures

Several people may want to cheat in an acution: Seller Auctioneer Buyer Sometimes the seller is also the auctioneer. Second Price Sealed Bid Cheating Consider the following cheats: The auctioneer could drive up the price by faking a higher second bid. The seller could drive up the price by bidder...

Read More

Additional Auction Theory

COMP315 Lectures

Social Welfare Commerce is about distributing resources in such a way where everyone is better off after each transaction. The goal is to maximise social welfare. This is controversial as no-one wants to have less money (rich or poor). Maximising Social Welfare An auction protocol maximises social welfare if whenever...

Read More

Computer Architectures

COMP328 Lectures

Von Neumann Architecture The Von Neumann architecture has the following block diagram: flowchart LR subgraph cpu cu[control unit] alu[arithmetic logic unit] end id[input device] --> cpu cpu --> od[output device] cpu <--> mu[memory unit] Building on Alan Turing’s work, Von Neumann invented the concept of the stored program where the...

Read More

Measuring Performance of Code

COMP328 Lectures

Performance Lists You can measure super computers by different metrics: Top500 (By linpack, $R_\max$) Green500 (Flops/Watt) Graph500 (Graph computing) HPL-AI (AI computing) Using a HPC Cluster Login to login node (don’t do any hard work here). Submit work to the compute nodes. Measuring Runtime Use one of the functions to...

Read More

Bidding Strategy (Other Auctions)

COMP315 Lectures

Sealed Bid Auction Strategy You should bid: Slightly more than what you expect the highest other bid to be. $v$ - your value of the item. In this case you will make zero profit. You can also play mind games to make your opponents think you have a lower value...

Read More

Learning Processes

ELEC320 Lectures

Learning Learning is a process by which the free parameters of a NN are adapted through a process of stimulation by the environment in which the network is embedded. Learning is defined in the following actions: The network is stimulated by the environment. It’s free parameters undergo changes to reflect...

Read More

Degrees and Connectivity of Networks

COMP324 Lectures

Degrees in a Network The degree of a node $v$ in a network $G$ is the number of links attaches to that node. This is denoted by: \[\deg_Gv\] We can omit the subscript $G$ when the graph is clear from the context. In general the sum of degrees of the...

Read More