• Breaking News

    Sunday, September 29, 2019

    Where can I learn to build AI to play board games using Python? Computer Science

    Where can I learn to build AI to play board games using Python? Computer Science


    Where can I learn to build AI to play board games using Python?

    Posted: 28 Sep 2019 12:04 PM PDT

    How did you go from self study to research?

    Posted: 28 Sep 2019 08:04 PM PDT

    This post assumes that a person has completed his undergraduate in a field other than CS (but STEM) or CS from not so good an institution. Now he wants to learn about CS through self study from the online class materials available from so many good institutions like CMU, MIT, Berkeley, Stanford, Cornell, etc. He wants to do so because he is fascinated by reading about research prospects in CS. How should he get along.

    People who pursue(d) research either in PhD or in any research lab, have you ever come across anyone who has done so? How was their journey and what are their achievements?

    P.S: I found two such roadmaps.

    https://teachyourselfcs.com/

    https://functionalcs.github.io/curriculum/

    Edit: The research may be in any specialisation of CS. The question is not specific to any specific domain/field. It may be theory, system, networks, AI, Computational Biology - anything. The process and the journey from being new to becoming an expert is what matters.

    submitted by /u/dsengupta16
    [link] [comments]

    Experiences of Post Grad study vs career

    Posted: 29 Sep 2019 02:19 AM PDT

    Hey Guys,

    I'm in my last semester of Bachelor of Computer Science, I have found that over the last 2 or 3 semesters that researching/ learning about proofs/ and just the maths behind computer science is super interesting. This has made me consider going into post grad. However I am also really excited to get a career. Just curious to see everyone's opinion/ experience.

    TL;DR - Thoughts/ experience on post grad study vs career

    Edit: As comment suggested to add. The path I want to go down in Academic and Career is ML/AI.

    submitted by /u/briefs123
    [link] [comments]

    I wanted to know how to self study to get into software industry.. Like what are the best resources out there that I can use to learn and get me a software engineer job...please help me!

    Posted: 29 Sep 2019 12:14 AM PDT

    Thanks in advance!

    submitted by /u/stormchaser_01
    [link] [comments]

    Home made encryption algorithm

    Posted: 28 Sep 2019 01:40 PM PDT

    I have recently become interested in encryption algorithms and how they work and I thought one way to learn was to try and write my own in Python, what I have come up with is slow and very inefficient but I think I might be onto something and thought I would post here to see if anyone could provide advice or comments on how this might be improved or just to tell me this is a dead end and could be cracked easily.

    The basis of the algorithm is this.

    1. Take a string to be encrypted and a int as a key.
    2. for each character in the input string generate a specific key for it (must be between 1 to 9).
    3. Find your character in a list of random characters and offset it to a different one in the list using its key.
    4. Find your specific key in the same list of random characters and offset it using the input key.
    5. Write the encrypted specific key and then the encrypted character to your out put.
    6. loop as needed.

    Provisionally I am calling this "Base 9 key injector encryption" as I don't think there is anything slimier out there (please correct me if I am wrong).

    There are quite a few down sides to this, namely.

    1. You can only have as many input keys as the number of characters in your list - 9.
    2. Your out put string is double in length for each loop.
    3. There is a pattern to the encrypted string.

    The up side I have observed is that the complexity multiplies by 9*n(characters) for each loop or extra character to be encrypted, for example encrypting one character for 3 loops turns it into a string of 8 with 4,782,969 combinations per key.

    So this is all great but doesn't mean much as there are a very small number of keys, if you have the decrypter it won't take you very long to find the right key. But this is only for one random character list, you could easily have lots of them (just re-order the list). So you would need to know three inputs for decryption, the key, the list used, and the number of passes.

    Code is below,

    import random def encryptor(String, Encryption, Key_Input, passes, Table_key): Table = ['X', '=', 'p', 'A', 'g', ',', '-', '3', 'D', 'x', 'r',\ 'Y', 'W', 'w', '!', 'H', '9', 'e', 'R', '2', 'F', '/', 'h', \ ':', 'a', '#', '@', 't', 'O', '\\', 'l', 'm', 'L', '<', '}',\ '6', 'd', 'f', ' ', '[', 'J', '+', 'j', '(', '*', 'b', 'G', \ 'B', 'E', '>', 'n', 'K', 'i', '{', '£', '^', 'I', '4', ']', \ '~', '1', 'V', 'N', '?', 'C', 's', '&', '_', 'z', 'c', ')', \ '.', 'U', 'q', 'Z', ';', '%', 'k', 'S', '5', 'M', 'y', 'P', \ 'o', '0', 'T', '7', '8', 'Q', 'u', 'v', '"', "'"] random.seed(Table_key) random.shuffle(Table) random.seed() Data = String Out_put = "" for i in range(passes): if Encryption == True: for i in Data: key = random.randint(1, 9) key_Location = int(Table.index(str(key))) + Key_Input if key_Location >= len(Table): key_Location = key_Location - len(Table) Out_put = Out_put + Table[key_Location] if i == '\n': Out_put = Out_put + i else: data_location = int(Table.index(i)) + key if data_location >= len(Table): data_location = data_location - len(Table) Out_put = Out_put + Table[data_location] Data = Out_put Out_put = "" elif Encryption == False: Count = 1 key = "" for i in Data: if (Count % 2) == 0: if i == '\n': Out_put = Out_put + i else: Out_put = Out_put + Table[Table.index(i) - int(key)] else: key = int(Table[Table.index(i) - Key_Input]) Count = Count + 1 Data = Out_put Out_put = "" return Data #inputs for encryptor(input sting, 1 for encrypt 0 for decrypt, key offset, number of loops, table number) print(encryptor(r"", 0, 45, 3, 764486757696875707376869908768975689)) 

    EDIT: now with random table generation.

    The below are examples generated with a different table key from the one shown.

    mj=TyVm\}+<%y_<c}u=jwS<ly0}p}m<7=NwXybvU}+}Om@}LyV=^GEw^Gov,mL<fGKvFGfGh ~Uv0v:v\Gfvi~nG8y0~@<xyJw@wWGKG wtGZGo}~<lyz<9G+v<~"<Y=.y:=@mzmb<5yEybwH <W=4vly.}^<>vdG.yYGnGmmbwnvYGA=7G8<QwS=iw@~0G8=Im#yEvH}Dv3Gw=2}NGE=s<XyC }'vuwov.=Nm'GomcvHytGo=l}^mF=gwBvlmZ<Xm.wo</}uG6<XG7v:<7vH<>}'}S~Cyx~UmM G8~ =X}q<W<£wnmQ=%<£}uy(y0<ZyV=MwS=sy:yU}"G)vlGF~d<^m#=cy_wt<Yvf=%<dvdy vd~2wSyU}'}yy:~Qm@G)=c}lG,y,}9=8mjy9<xy3~UGSvKm<Go~VwnvC<z=bwr~wm7=vmE}\ Go=4~UvQ<YmZ<xm =A}SyVyO~U~:y&GC})~Y<t~Uwtvm<xm+vdGPyNw ~#G^yNG-=g~3<z= mqy8v<~.v-muw ~G<Xyn}Swfv[mJ~&mxyb~oGo=;<Wy9wr}L="Gjy:};GEwO~vw[m@=d~U}H <YG'<5GD=L~)}9}a~v<&m[G£mq~3v-mk}^w+GEyawrm:yN=<G_~nv<m\<tG%}"mmy&<£v<=Q <9yO}u}3v<Gv~(~0Gm<Oy0yfwSw}wtw yrmRw@GUm[G+y&m6m7vj}^m^<tv4<XG(~Uv_~Tm0 m#vw<t~D~U~-Gf~GvH=ZGAv#<X}}<zmc}SyNv-<~m#wX=gGF})y)mE=.vdG£y:GmG,<2vdv 
    submitted by /u/Sirsmorgasboard
    [link] [comments]

    Best way to remember basic math for proofs?

    Posted: 28 Sep 2019 10:38 PM PDT

    I find my main difficulty is remembering the basic math theorems and techniques. For example I was working on an assignment from school and one problem I had no idea. After the solutions were posted, it required some things I completely forgot such as geometric series theorem where 1 + x + x^2 + ... + x^n = a formula, and logarithmic rules. I do remember being taught this but it is hard to remember these things after a while.

    Any tips?

    submitted by /u/UnfriendlySoloutions
    [link] [comments]

    The 10 commandments of navigating code reviews

    Posted: 28 Sep 2019 11:57 AM PDT

    Made a Discord Community for people interested in competitive programming! subreddit: r/competitivprogramming

    Posted: 28 Sep 2019 11:09 PM PDT

    Question regarding truth tables and boolean algebra

    Posted: 28 Sep 2019 03:03 PM PDT

    OK.

    so basically recently I got a bit into redstone haha and thru it I wondered how more complex circuits are constructed in irl

    The most interesting part for me personally is the raw theory behind it and also the following problem:

    When given a truth table, how do you arrive at the needed logic gates to obtain a working circuit that behaves like the truth table? (a trivial question, just stick with me)

    After some thinking I came to the following:

    A B|C 0 0 α 0 1 β 1 0 γ 1 1 δ 

    now let us focus on α:

    For this C to be true we need to check if A is 0, B = 0 and that alpha is ON:

    Cα = A≡0∧B≡0∧α≡0

    for β γ and δ we just do the same but with changed values for A and B respectively ofc and add everything together with OR gates:

    C = (A≡0∧B≡0∧α≡1) ∨ (A≡0∧B≡1∧β≡1) ∨ (A≡1∧B≡0∧γ≡1) ∨ (A≡1∧B≡1∧δ≡1)

    simplify a bit to get rid of the redundant EQUIVALENCE signs...

    C = (¬A∧¬B∧α) ∨ (¬A∧B∧β) ∨ (A∧¬B∧γ) ∨ (A∧B∧δ)

    C = ¬(A∨B∨¬Î±)∨¬(A∨¬B∨¬Î²)∨¬(¬A∨B∨¬Î³)∨¬(¬A∨¬B∨¬Î´)

    and from here, we can insert our values for α β γ and δ, simplify from there and obtain our final formula from which we can then build our logic circuit as needed.

    Now, with as much insight as to how I came to this formula, it should be pretty obvious that this seems somewhat trivial and so I was wondering:
    Is it so obvious it doesnt need a name?
    do I just not know what to look for?

    What is this formula called?
    it seems too useful to just be a nameless thing floating around in some void-

    submitted by /u/MachiToons
    [link] [comments]

    No comments:

    Post a Comment