Compare commits

...

45 Commits

Author SHA1 Message Date
485e2b0187 2025-05-01 00:14:54 2025-05-01 00:14:54 -03:00
14383747d0 2025-04-09 14:09:25 2025-04-09 14:09:25 -03:00
1850ff554a 2025-04-09 13:22:21 2025-04-09 13:22:21 -03:00
b321ce79f8 2025-03-26 18:52:00 2025-03-26 18:52:00 -03:00
1b84c3fe88 2025-02-05 18:46:58 2025-02-05 18:46:58 -04:00
8d056833da 2025-02-05 18:07:19 2025-02-05 18:07:19 -04:00
bca338e55f 2025-02-05 17:48:47 2025-02-05 17:48:47 -04:00
9f55f9c334 2025-02-04 11:13:47 2025-02-04 11:13:47 -04:00
a64e549c1f 2025-01-30 13:13:02 2025-01-30 13:13:02 -04:00
2490b5a065 2025-01-29 18:36:04 2025-01-29 18:36:04 -04:00
23576a2265 2025-01-29 18:05:21 2025-01-29 18:05:21 -04:00
11c7e304ed 2025-01-28 13:10:52 2025-01-28 13:10:52 -04:00
bd5ed6f2a3 2025-01-23 14:19:31 2025-01-23 14:19:31 -04:00
f9f7000168 2025-01-23 13:29:54 2025-01-23 13:29:54 -04:00
759b25a40a 2025-01-22 18:48:41 2025-01-22 18:48:41 -04:00
86a85e3c5a 2025-01-22 18:36:13 2025-01-22 18:36:13 -04:00
cdae485aef 2025-01-22 17:43:09 2025-01-22 17:43:09 -04:00
2e28778412 2025-01-22 13:41:46 2025-01-22 13:41:46 -04:00
2eb98aa15b 2025-01-22 10:20:35 2025-01-22 10:20:35 -04:00
ae285129c8 2025-01-22 10:10:40 2025-01-22 10:10:40 -04:00
7ba74544b4 2025-01-22 09:49:03 2025-01-22 09:49:03 -04:00
1c6597c3f9 2025-01-21 09:06:08 2025-01-21 09:06:08 -04:00
de2d10441a 2025-01-21 08:45:19 2025-01-21 08:45:20 -04:00
3c90f58039 2025-01-16 13:17:32 2025-01-16 13:17:32 -04:00
6fe529f2be 2025-01-16 08:51:08 2025-01-16 08:51:08 -04:00
a0357132b3 2025-01-15 19:34:30 2025-01-15 19:34:30 -04:00
857aa10e63 2025-01-15 18:49:46 2025-01-15 18:49:47 -04:00
c00557700f 2025-01-15 13:59:38 2025-01-15 13:59:38 -04:00
c5a1ddb862 2025-01-15 13:41:37 2025-01-15 13:41:37 -04:00
239b0c84d7 2025-01-15 12:45:37 2025-01-15 12:45:37 -04:00
6b9ef1a5b6 2025-01-14 13:21:18 2025-01-14 13:21:18 -04:00
71a58ee205 2025-01-14 09:54:04 2025-01-14 09:54:04 -04:00
887f487935 2025-01-14 09:25:30 2025-01-14 09:25:30 -04:00
a53f96755f 2025-01-14 09:04:52 2025-01-14 09:04:53 -04:00
9ed144d7f1 2025-01-14 08:38:50 2025-01-14 08:38:50 -04:00
6d518246ff 2025-01-10 14:17:23 2025-01-10 14:17:23 -04:00
09ba19831a 2025-01-10 13:35:00 2025-01-10 13:35:00 -04:00
1d2853cc13 2025-01-10 13:15:28 2025-01-10 13:15:28 -04:00
8221b91925 2025-01-09 14:19:04 2025-01-09 14:19:04 -04:00
e15615c83f 2025-01-09 13:23:01 2025-01-09 13:23:01 -04:00
ddb073a5a3 2025-01-09 09:46:36 2025-01-09 09:46:36 -04:00
e9733709be 2025-01-08 17:46:29 2025-01-08 17:46:29 -04:00
e9731ca71e 2025-01-08 17:36:05 2025-01-08 17:36:05 -04:00
46478ef0ef 2025-01-08 14:20:02 2025-01-08 14:20:02 -04:00
ac3276e88f 2025-01-08 13:50:24 2025-01-08 13:50:24 -04:00
15 changed files with 396 additions and 45 deletions

View File

@ -1,6 +1,6 @@
[ [
"table-editor-obsidian", "table-editor-obsidian",
"obsidian-icon-folder", "obsidian-icon-folder",
"obsidian-git", "obsidian-git",
"various-complements" "various-complements"
] ]

View File

@ -26,5 +26,6 @@
"workspaces": false, "workspaces": false,
"file-recovery": true, "file-recovery": true,
"publish": false, "publish": false,
"sync": false "sync": false,
"webviewer": false
} }

View File

@ -1 +1 @@
{"studied":{"studied":{"currentFile":{"count":1,"lastUpdated":1732902129152}}},"History":{"History":{"currentFile":{"count":1,"lastUpdated":1733161472463}}},"historical":{"historical":{"currentFile":{"count":1,"lastUpdated":1733161505181}}},"events":{"events":{"currentFile":{"count":1,"lastUpdated":1733161507343}}},"intervention":{"intervention":{"currentFile":{"count":1,"lastUpdated":1733161512207}}},"invention":{"invention":{"currentFile":{"count":1,"lastUpdated":1733161517029}}},"gradual":{"gradual":{"currentFile":{"count":1,"lastUpdated":1733161523429}}},"divide":{"divide":{"currentFile":{"count":1,"lastUpdated":1733161561862}}},"historians":{"historians":{"currentFile":{"count":1,"lastUpdated":1733162394642}}},"European":{"European":{"currentFile":{"count":1,"lastUpdated":1733162425591}}},"thought":{"thought":{"currentFile":{"count":1,"lastUpdated":1733162447174}}},"Agree":{"Agree":{"currentFile":{"count":1,"lastUpdated":1733162452692}}},"Renaissance":{"Renaissance":{"currentFile":{"count":2,"lastUpdated":1733334673165}}},"chronology":{"chronology":{"currentFile":{"count":1,"lastUpdated":1733162474220}}},"Pre-modern":{"Pre-modern":{"currentFile":{"count":1,"lastUpdated":1733162481516}}},"history":{"history":{"currentFile":{"count":2,"lastUpdated":1733334453837}}},"constructed":{"constructed":{"currentFile":{"count":1,"lastUpdated":1733162542410}}},"party":{"party":{"currentFile":{"count":3,"lastUpdated":1733327828516}}},"Friday":{"Friday":{"currentFile":{"count":1,"lastUpdated":1733328142948}}},"final":{"final":{"currentFile":{"count":1,"lastUpdated":1733328254232}}},"Exam Stuff":{"Exam Stuff":{"internalLink":{"count":1,"lastUpdated":1733334237677}}},"Points":{"Points":{"currentFile":{"count":2,"lastUpdated":1733334365299}}},"sections":{"sections":{"currentFile":{"count":2,"lastUpdated":1733335567864}}},"Question":{"Question":{"currentFile":{"count":1,"lastUpdated":1733334351043}}},"Questions":{"Questions":{"currentFile":{"count":2,"lastUpdated":1733336070309}}},"essays":{"essays":{"currentFile":{"count":1,"lastUpdated":1733334658406}}},"module":{"module":{"currentFile":{"count":1,"lastUpdated":1733334733227}}},"following":{"following":{"currentFile":{"count":2,"lastUpdated":1733334837779}}},"slides":{"slides":{"currentFile":{"count":1,"lastUpdated":1733334870532}}},"about":{"about":{"currentFile":{"count":1,"lastUpdated":1733334924510}}},"Leaders":{"Leaders":{"currentFile":{"count":1,"lastUpdated":1733334953245}}},"predetermined":{"predetermined":{"currentFile":{"count":1,"lastUpdated":1733335169087}}},"analysis":{"analysis":{"currentFile":{"count":2,"lastUpdated":1733335210664}}},"readings":{"readings":{"currentFile":{"count":1,"lastUpdated":1733335322786}}},"topics":{"topics":{"currentFile":{"count":1,"lastUpdated":1733335343548}}},"submittting":{"submittting":{"currentFile":{"count":1,"lastUpdated":1733335588409}}},"generalization":{"generalization":{"currentFile":{"count":1,"lastUpdated":1733336078936}}},"example":{"example":{"currentFile":{"count":1,"lastUpdated":1733336081284}}}} {"Important":{"Important":{"currentFile":{"count":1,"lastUpdated":1744212756873}}},"Questions":{"Questions":{"currentFile":{"count":1,"lastUpdated":1744212758410}}},"answers":{"answers":{"currentFile":{"count":1,"lastUpdated":1744212929208}}},"probabilities":{"probabilities":{"currentFile":{"count":1,"lastUpdated":1744215350670}}},"decision":{"decision":{"currentFile":{"count":1,"lastUpdated":1744215513253}}}}

View File

@ -1,20 +1,24 @@
{ {
"main": { "main": {
"id": "183ca32fc922b6a9", "id": "e1a53579631687bf",
"type": "split", "type": "split",
"children": [ "children": [
{ {
"id": "ec7e7df827f4ad68", "id": "a8daf086ad08fd88",
"type": "tabs", "type": "tabs",
"children": [ "children": [
{ {
"id": "a4868a0d0ec2cb3a", "id": "2ffcd449f234cfb2",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "empty", "type": "markdown",
"state": {}, "state": {
"file": "UNB/Year 5/Semester 2/CS4725/Final Review.md",
"mode": "preview",
"source": false
},
"icon": "lucide-file", "icon": "lucide-file",
"title": "New tab" "title": "Final Review"
} }
} }
] ]
@ -23,27 +27,28 @@
"direction": "vertical" "direction": "vertical"
}, },
"left": { "left": {
"id": "0744dc9fa0738eb9", "id": "07178968c0b4f60d",
"type": "split", "type": "split",
"children": [ "children": [
{ {
"id": "5ea38d58b47894a9", "id": "006b9729c9d7e840",
"type": "tabs", "type": "tabs",
"children": [ "children": [
{ {
"id": "46a6eee907728856", "id": "724d50474acd511c",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "file-explorer", "type": "file-explorer",
"state": { "state": {
"sortOrder": "alphabetical" "sortOrder": "alphabetical",
"autoReveal": false
}, },
"icon": "lucide-folder-closed", "icon": "lucide-folder-closed",
"title": "Files" "title": "Files"
} }
}, },
{ {
"id": "599c0606cbdae503", "id": "3ee353d7850a4513",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "search", "type": "search",
@ -60,7 +65,7 @@
} }
}, },
{ {
"id": "83d50ec171aad0c4", "id": "13b29070f0312d32",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "bookmarks", "type": "bookmarks",
@ -73,18 +78,18 @@
} }
], ],
"direction": "horizontal", "direction": "horizontal",
"width": 300 "width": 200
}, },
"right": { "right": {
"id": "fd365c876965e293", "id": "75bd23c3d21f228b",
"type": "split", "type": "split",
"children": [ "children": [
{ {
"id": "01dcd9438e47f021", "id": "07bc882d75fe7881",
"type": "tabs", "type": "tabs",
"children": [ "children": [
{ {
"id": "19e2cfb1793c556e", "id": "27eb57880cb7a30d",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "backlink", "type": "backlink",
@ -103,7 +108,7 @@
} }
}, },
{ {
"id": "a9c85c2607fba8d7", "id": "e874b7ec2e7755c5",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "outgoing-link", "type": "outgoing-link",
@ -117,7 +122,7 @@
} }
}, },
{ {
"id": "45e365dc9d561267", "id": "a34764e0ca80e0b3",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "tag", "type": "tag",
@ -130,7 +135,7 @@
} }
}, },
{ {
"id": "e12a218078936d8d", "id": "81f8d381eff656aa",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "outline", "type": "outline",
@ -140,16 +145,28 @@
"icon": "lucide-list", "icon": "lucide-list",
"title": "Outline of In class notes" "title": "Outline of In class notes"
} }
},
{
"id": "2fdc1454fc8434d2",
"type": "leaf",
"state": {
"type": "advanced-tables-toolbar",
"state": {},
"icon": "lucide-file",
"title": "Plugin no longer active"
}
} }
] ],
"currentTab": 4
} }
], ],
"direction": "horizontal", "direction": "horizontal",
"width": 300, "width": 200,
"collapsed": true "collapsed": true
}, },
"left-ribbon": { "left-ribbon": {
"hiddenItems": { "hiddenItems": {
"audio-recorder:Start/stop recording": false,
"switcher:Open quick switcher": false, "switcher:Open quick switcher": false,
"graph:Open graph view": false, "graph:Open graph view": false,
"canvas:Create new canvas": false, "canvas:Create new canvas": false,
@ -157,32 +174,46 @@
"templates:Insert template": false, "templates:Insert template": false,
"command-palette:Open command palette": false, "command-palette:Open command palette": false,
"table-editor-obsidian:Advanced Tables Toolbar": false, "table-editor-obsidian:Advanced Tables Toolbar": false,
"audio-recorder:Start/stop recording": false,
"obsidian-git:Open Git source control": false "obsidian-git:Open Git source control": false
} }
}, },
"active": "46a6eee907728856", "active": "2ffcd449f234cfb2",
"lastOpenFiles": [ "lastOpenFiles": [
"UNB/Year 5/Semester 2",
"UNB/Year 5/Semester 1/CS3113/Exam Review.md",
"UNB/Year 5/Semester 1/HIST1001/Exam Stuff.md",
"UNB/Year 5/Semester 1/HIST1451/Exam Stuff.md",
"UNB/Year 5/Semester 1/HIST1451/In class notes.md",
"UNB/Year 5/Semester 1/HIST1001/In class notes.md", "UNB/Year 5/Semester 1/HIST1001/In class notes.md",
"UNB/Year 5/Semester 1/HIST1001/Module 3 - Ur-Nase Activity.md", "UNB/Year 5/Semester 2/HIST3925/Presentation Notes.md",
"UNB/Year 5/Semester 1/MAAC3113/In class notes.md", "UNB/Year 5/Semester 2/HIST3925/Lecture Notes.md",
"UNB/Year 5/Semester 2/HIST3925/Guest Lecture Notes.md",
"UNB/Year 5/Semester 2/HIST3925/Breakout Questions.md",
"UNB/Year 5/Semester 2/CS4745/Lecture Notes.md",
"UNB/Year 5/Semester 2/CS4725/Lecture Notes.md",
"UNB/Year 5/Semester 2/CS4725/Final Review.md",
"UNB/Year 5/Semester 2/CS4613/Lecture Notes.md",
"UNB/Year 5/Semester 2/CS3383/Tutorial Notes.md",
"UNB/Year 5/Semester 2/CS3383/Lecture Notes.md",
"UNB/Year 5/Semester 2/CS3383/Final Info.md",
"UNB/Year 5/Semester 2/HIST3925",
"UNB/Year 5/Semester 2/CS4745",
"UNB/Year 5/Semester 2/CS4725",
"UNB/Year 5/Semester 2/CS4613",
"UNB/Year 5/Semester 2/CS3383",
"UNB/Year 5/Semester 2",
"UNB/Year 5/Semester 1/HIST1001/Module 2 - Reading 1.md", "UNB/Year 5/Semester 1/HIST1001/Module 2 - Reading 1.md",
"UNB/Year 5/Semester 1/HIST1001/Module 3 - Ur-Nase Activity.md",
"UNB/Year 5/Semester 1/HIST1001/Exam Stuff.md",
"UNB/Year 4/Semester 3/MAAC2095/23-05-2024.md",
"UNB/Year 5/Semester 1/MAAC3113/In class notes.md",
"UNB/Year 5/Semester 1/HIST1451/Race predictions group project.md",
"UNB/Year 5/Semester 1/HIST1451/Political questionaire.md",
"UNB/Year 5/Semester 1/HIST1451/In class notes.md",
"UNB/Year 5/Semester 1/HIST1451/Exam Stuff.md",
"UNB/Year 5/Semester 1/CS3113/Midterm 1 Review.md", "UNB/Year 5/Semester 1/CS3113/Midterm 1 Review.md",
"UNB/Year 5/Semester 1/CS3113/In class notes.md", "UNB/Year 5/Semester 1/CS3113/In class notes.md",
"gcm-diagnose.log", "UNB/Year 5/Semester 1/CS3113/Exam Review.md",
"UNB/Year 5/Semester 1/HIST1451/Race predictions group project.md",
"README.md",
"UNB/Year 5/Semester 1/MAAC3113", "UNB/Year 5/Semester 1/MAAC3113",
"UNB/Year 5/Semester 1/HIST1451/Political questionaire.md",
"UNB/Year 5/Semester 1/CS3113",
"UNB/Year 5/Semester 1/HIST1001",
"UNB/Year 5/Semester 1/HIST1451", "UNB/Year 5/Semester 1/HIST1451",
"UNB/Year 5/Semester 1", "UNB/Year 5/Semester 1/HIST1001",
"UNB/Year 5" "UNB/Year 5/Semester 1/CS3113",
"UNB/Year 4/Semester 2/CS3873/2024-02-21.md",
"UNB/Year 4/Semester 3/MAAC2095/01-05-2024.md"
] ]
} }

View File

@ -0,0 +1,2 @@
No notes allowed
Calculator allowed

View File

@ -0,0 +1,38 @@
### Running Time
Most Algorithms transform input objects into output objects. The running time typically grows with the input size. Average case time is often difficult to determine. We focus on the worst case running time, as it's easier to analyze and its crucial to applications such as games, finance, and robotics.
### Space Complexity
In algorithms, you need to think about the amount of space, memory, that you need to compute the algorithm.
### Algorithm Structure?
Need to think about how complex an algorithm is in implementation, the simpler the better. Code organization is also important in the structure.
### Fibonacci
Algorithm which uses array to store previous fib numbers vs one which uses constant number of variables to compute the sequence. Space complexity varies between the two between one being O(n) and one is O(1).
The naive recursive solution for this problem is very bad. By using multiple return values we can make the recursive algorithm equal to the non-recursive algorithm.
### Counting Primitive Operations
The algorithm described is a simple implementation to find the max value of an array containing only numbers
By inspecting the pseudo-code, we can determine the maximum number of primitive operations executed by an algorithm, as a function of the input size.
Looking at the number of times n is used, in the worst case scenario, we can see a for loop, as well as other stuff? ending up with a number of operations of 8n-2, with a big O of O(n)
### Relatives of Big O,
- Big Omega
- Big Theta - If this is n squared, it means big omega and big o are also n squared.
## GO over slides for Jan 13th as I missed first half
### Greedy Algorithms
Greedy algorithms always optimize for the current best chest, ignoring any possible better outcomes in the future.
This can work in cases where a problem has a greedy property.
### Making Change Problem
In the case where the denominations are always larger/equal to 2 of the smaller denominations then it makes sense when giving change, to simply give the largest coin available.
### Fractional Knapsack Problem
Given a set S of n items, with each item i having a positive benefit factor, b, and a positive weight, w.
Goal: Choose items with maximum total benefit but with weight at most W.
If we are allowed to take factional amounts, then this is the fractional knapsack problem. The objective is to maximize the benefit given the amount divided by the weight, with the constraint that the amount is less than the total amount W.
### Interval Partitioning: Greedy

View File

@ -0,0 +1,13 @@
# Schedule Problem
A single server has n customers to serve. The sere time t_i required by each customer i is known in advance. Goal is to minimize T, the time in the system for customer i.
For example, t_1=5, t_2=10, t_3=3. Schedule 1: 123, Schedule 2: 231
Input: The set C of all customers C = { t_1, ... }. t_i is the service time for customer i
Output: The total time in the system for all customers
Merge Sort C in ascending order. A greedy solution works in this case.
We can simply run through the sorted list and serve them in order.
But if we assume the greedy algorithm is not optimal in this case
Try to reduce total time T

View File

@ -0,0 +1,17 @@
TODO: Go over slide 1 stuff and fill in
TODO: Go over slide 2 stuff and fill in
# Lecture 2
## S-Expressions
### Simplified Calculator Parser
# Lecture 3: Local binding
Stacker helps show the environment, heap allocations, and stackframes
# Lecture 4: Functions
# Lecture 5: Macros
# Lecture 6-7: Objects
Desugared objects, defining a function that takes a case for method arguments
# Lecture 8: Types

View File

@ -0,0 +1,102 @@
# Instructions:
12 FRQ, written answers
3 MCQ, multiple choice
1 Matching question, algorithms (role of algorithms)
15 total questions (?)
1 A4 size double sided hand written notes allowed (Important!!!)
2 hour exam
Partial marks allowed for partially correct answers
Bring a calculator (Important!!!)
# Part 1 Important Questions
Horn form for logic?
Why are these conditions not solvable without a truth table?
# Part 2 Important Questions
## 1
Arithmetic assertions can be written in first order logic with the predicate symbol <, the function symbols + and x, and the constant symbols 0 and 1. Additional predicates can also be defined with bi-conditionals
a) Represent the property "x is and even number"
Ax Even(x) <=> Ey x=y+y
b) Represent the property "x is prime"
Ax Prime(x) <=> Ey,z x=y * z => y = 1 V z = 1
c) Goldbach's conjecture is the conjecture (unproven as of yet) that "every even number is equal to the sum of two primes". Represent this conjecture as a logical sentence.
Ax Even(x)=> Ey,z Prime(y) /\ Prime(z) /\ x=y+z
# 2
Find the values for the probabilities a and b in joint probability table below so that the binary variables X and Y are independent
| X | Y | P(X, Y) |
| --- | --- | ------- |
| t | t | 3/5 |
| t | f | 1/5 |
| f | t | a |
| f | f | b |
Due to probability being max 1, we know that a + b must be 1/5
P(Yt)/P(Yf) = a/b = 3
b = 1/20
a = 3/20
# 3
idk where R comes from, look into slides about bayes theorem
Show the three forms of independence in Equation (12.11) are equivalent
P(a|b) = P(a) or P(b|a) = P(b) or P(a /\ b) = P(a) * P(b) / R(?)
First two are logically the same, just inverted
From bayes theorem
P(a | b) * P(b) = P(a) * P(b) / R(?)
P(a /\ b) = P(a | b) * P(b)
# 4
Consider the following propability distrobutions:
| A | P(A) |
| --- | ---- |
| t | 0.8 |
| f | 0.2 |
| A | B | P(B\|A) |
| --- | --- | ------- |
| t | t | 0.9 |
| t | f | 0.1 |
| f | t | 0.6 |
| f | f | 0.4 |
| B | C | P(C\|B) |
| --- | --- | ------- |
| t | t | 0.8 |
| t | f | 0.2 |
| f | t | 0.8 |
| f | f | 0.2 |
Given these tables and no other assumptions, calculate the following probabilities.
a. P(a, ~b)
= P(a) * P(~b|a)
= 0.8 * 0.1
= 0.08
b. P(b)
= P(bt|a) * P(a) + P(bt | ~a) * P(~a)
= 0.9 * 0.8 + 0.6 * 0.2
= 0.84
# 5
Let A and B be Boolean Random variables. You are given the following probabilities
P(A=true) = 0.5
P(B=true |A=true) = 1
P(B=true) = 0.75
What is P(B=true|A=false)?
# 6
Consider the XOR function of three binary input attributes, which produces the value 1 if and only if an odd number of the three input attributes has value 1.
Draw a minimal sized decision tree for the three input XOR function.
Three layer decision three, A > B > C. Output of tree would be
0 1 1 0 1 0 0 1 if on the left of the decision is always 0 and 1 is right
# 7
Consider the problem of separating N data points into +ve and -ve examples using a linear separator. Clearly this can always be done for N=2 points on a line of dimension d=1, regardless of how many points are labeled or where they are located (unless the points are in the same place)
a) Show that it can always be done for N=3 points on a plane of dimension d=2 unless they are co-linear.
b) Show that it cannot (or can we?) always be done for N=4 points on a plane of dimension d=2

View File

@ -0,0 +1,40 @@
## AI Agents
AI agents are defined as a program (state of all previous actions and inputs) that produces an agent function
### Reflex Vacuum Cleaner Agent
Essentially a rules table, based on the state of the environment and the agent, (state of dirt in a/b, position of cleaner in a or b)
### Rational Agents
A fixed performance measure the agent should set as their goal, based on the environment and the agents actions
- One point per square cleaned in time T?
- One point per clean square per time step, minus one per move?
- Penalize for > k dirty moves?
A rational agent chooses the action that maximizes the expected value of the performance measure given the percept sequence to date.
A rational agent is not omniscient or clairvoyant. It is not guaranteed they will perceive everything relevant, or are given the relevant information. They also may not be successful in the action as expected. A rational agent does not mean a successful one.
### Defining internet agents
#### Automated Taxi
- Performance measure
- environment
- actuators
- sensors
#### Internet Shopping Agent
- Performance measure
- environment
- actuators
- Sensors
### Task environment characteristics
- Fully/Partially observable - Agents sensors give it access to complete state of the environment at each point in time
- Single/multi-agent - Single agent solving a problem (puzzle vs chess)
- Deterministic/Non-deterministic - Whatever next state is determined completely by the current state, ie randomness
- Episodic/sequential - Agent's experience divided into atomic episode (agent receives a percept and perform a single action)
- Dynamic/static - If environment changes while an agent is deliberating
- Discrete/Continuous - State of the environment (states in chess vs taxi driving)
- Known/Unknown - In known environments, the outcomes for all given actions are given
### Agent types
- Simple reflex agents
- Model based reflex agents with state
- Goal-based agents
- Utility based agents
All of these can be turned into learning types
A learning agent has 4 main components, a performance algorithm, a critic, a learning element, and a problem generator, which forms a feedback loop which enables the agent to learn to adapt to it's environment.

View File

@ -0,0 +1,58 @@
### Models of Parallel Computing
- SISD (x86)
- SIMD (AVX)
- MISD
- MIMD (GPU)
### History of parallel computing
Prior to the 1990s, computers had modules for parallel computation, usually specialized.
Clusters of computers (Beowulf Revolution) connected by a network, which were able to be dispatched commands and do computation together. Grid computing was the idea of connecting "all" computers to a grid, similar to the power grid, and to distribute computing resources among connected peers. Cloud computing is a model of distributing computation resources based on payment to a provider which provides managed computing. This led to the Hadoop file system (2004), which led to computation directly on files, with no need to load all contents of the file into memory. This led to Map Reduce, which was the main framework the file system worked under. GPU computing naturally lends itself to processing linear algebra operations (transformations of pixels and triangles), suitable for massive parallelization of these tasks, even outside of graphics. FPGA devices can be used to parallelized specific/specialized tasks given a logic design that is lends itself to parallelization. Quantum computers are highly parallel accelerators, still in development. The algorithms were known starting in the 1980s, but the hardware is still behind. Multicore systems are designed for improved latency, and they can fulfill general purpose computation, example: CPU with multiple cores. Manycore systems have much higher core count, and they are focused on the throughput (amount of computation performed per unit of time), example: GPU.
### Parallel Programming
Implicit
- MapReduce
- fork-join, Executor services with thread pools
- Allows shifting attention from implementation to task description
Semi-implicit
- Parallel for
- OpenMP
- Allows you to use the pre-defined directives for achieving parallel execution without focusing on how it works
Explicit
- Scatter, Gather
- pthreads
- The developers have the most control on computation, but have to manage and assure there are no problems in results
Compilers are good at designing optimal sequential code, but compiler optimizations may prevent the algorithm from working as expected, as well as instruction reordering impacting results.
## Patterns
Like OOP, patterns for parallel processing exist. They can be classified as "structural, computational or ..." TODO: look at notes
### Structural Pattern: Pipe and Filter
Stream of Messages -> Language Identification -> English Messages -> Metadata Removal -> Plain Text -> Tokenization -> Words -> ...
The time and process requirements of each task may differ, which introduces the need to load balance, as well as the concept of the bottleneck, which is the slowest task in the chain.
Embarrassingly parallel: Problem which can be parallelized by simply allocating more hardware resources.
### Word Count with Map Reduce
Each thread can map a document of a word to a count, which after completion can be reduced to one map from each thread, usually with a parallel hash table.
## Memory Schemes
Multicore systems, ones which have the ability to compute multiple tasks at the same time in a shared memory environment are often latency oriented, with the start and stop time of results being minimized, as well as the time between results is minimized.
Manycore systems, ones which are often a large number of cores tasked with the same problem, in a shared memory environment are often throughput oriented, with the amount computation being higher amortized over a period of time, or focusing on longer running tasks/computation.
### Distributed Memory
The tasks are not within the same memory space, and do not share memory addresses, and there is no need for communication between nodes
## SIMD
TODO: Go and insert tables/data from slides
## Threads and Processes
Threads are fundamental units of execution, with their own program counter, and implemented in most operating system, are schedulable entities.
Processes are instances of a running program. Each process has its own memory space and cannot share memory between processes.
Starting threads are a bit simpler, as assigning a process needs to be registered with the OS as its own PID, as well as creation of virtual memory space by the OS.
## Multiprocessor Architecture Design
# Software Considerations
Programming languages use building blocks and their order of execution to make a program, based on functions with input and outputs.
JIT compilers can by using runtime data optimize for certain sub tasks. Juilia is JIT compiled to LLVM IR and then translated to machine code by LLVM.
## Task Graph Model
The main motivation for using this is for data dependancies, as we cannot use data that is not loaded.

View File

@ -0,0 +1,9 @@
# Develop a theory of technological development.
What would you borrow from Bacon, Merton, and Kuhn to create your theory?
Paradigm shifts are norm in technology as opposed to the chaos that Kuhn described, due to the exponential nature of technological growth (in a broad sense). New tech thought/innovation leaders are similar to the most popular scientists in the age of science. In terms of competition technology is unbounded by the restraint of gifting knowledge, more focused on gaining wealth and hoarding knowledge for profit/power, with technological innovation concentrating on those with the most resources like big companies. Technologies are invented not to benefit the populous but to create wealth/power for the inventors.
# Defend one of the four theories of why the great divergence happened as the critical theory
Capitalism and Exploitation
Transitioned the ruling class from that of Divine Kings by birth and nobility, to that of wealth, often with overlap. Capitalism and exploitation brought about a search for cheap materials and labour. It promoted mobility of European populations by using external labour markets, often cheaper than European labour.

View File

@ -0,0 +1 @@
# Aquaculture

View File

@ -0,0 +1,31 @@
## Philosophy of Science
Francis Bacon believed that the previous study of science was flawed, as it believed that truth could be obtained through debate and philosophy. He envisioned a model of science based on experimentation and results, and study of the natural world.
This model was later applied to many disciplines in the 19th century, such as political science, social science, computer science and changed things again.
## Sociology of Science
Robert Burton showed us how the essence of scientific life is competitive to gain priority in discovery. This creates ambivalent attitudes in scientists and academia, as the system doctrine says that importance or glory is not the point of the ordeal, but the system itself re-enforces the reward system.
Databases changed how the field was studied, as now with everything being cataloged digitally, you could now very easily perform statistical analysis and examine how science was performed.
The study revealed that academia or science was a pyramid, with only a small number of scientists producing the most amount of research and only a small number of that research was cited in other research, i.e, important.
## History of Science
Thomas Kuhn came out with a book called "The Structure of Scientific Revolutions", which claimed that science must not focus on the individual scientists but on disciplinary communities that decide on the context of their research.
Scientists are to find the known not to discover the unknown as Kuhn says?
### Kuhn's Conclusions
Scientific Method's appeal to nature does not suffice to guide scientists to their most important decisions, i.e. you must have new ideas and cannot simply continue extenuated research
We cannot say science makes progress or moves closer to truth in passing through a revolution from one paradigm, to its successor.
Come back to this and review
## Gender and Science
# Industrial Revolution
Transition
- Factory System (important!): A transition from artisans who produced the whole product to an individual worker who did a fraction of the overall work to manufacture a product
- English working class (farmers to factory workers)
# For Test 2
Social Shaping of Technology Theory
Breakout group questions from 2025-03-26

View File

@ -0,0 +1,8 @@
# Group 1
Women/Non-binary in STEM
Interesting things
- Statistics?
- Personal Experience
- Kahoot
- Discussion Questions