Applet của Barry

Từ trang này bạn có thể chơi một số các chương trình java mà tôi có phát triển. Bạn có thể truy cập chúng, hoặc là applet hoặc thông qua java Web Start. Anh, Đức, Việt, Nhật Bản.

GoMoku

Cố gắng giành chiến thắng mà nhận được năm trong một hàng trước khi máy tính không.

   chạy như applet hoặc webstart.
GoMoku

cờ đam

Hãy thử để đánh bại các máy tính của mình bằng cách bắt tất cả các miếng. Miếng của bạn đang ởđầu trang. Chuyển chúng bằng cách sử dụng kéo và thả.

   chạy như applet hoặc webstart.
cờ đam

T??ng

Tướng là một trò chơi tương đối đơn giản so với đi. Tôi thực hiện nó chỉ trong 3 ngày -sau khi tôi đã dành một năm thực hiện di chuyển và phần còn lại của khuôn khổ trò chơi java của tôi.
Hãy thử để đánh bại các máy tính bằng cách checkmating vua của mình. Miếng của bạn ở đầu trang.Checkmate vua của đối phương để giành chiến thắng.

   chạy như applet hoặc webstart.
T??ng

Di ch?i

Nhiều người đã cố gắng để thực hiện một đi chương trìnhmà có thể đánh bại ngay cả một cầu thủ trung gian. Cho đến nay không có được thành công. Trong một thời gian có một phần thưởng của một

   chạy như
applet hoặc webstart.
Di ch?i

Phong tỏa

Phong tỏa là một trò chơi tương đối mới được tạo ra bởi Lakeside.Tôi đã từng chơi nó như một đứa trẻ, nhưng tôi không nhìn thấy nó trong các cửa hàng nữa.Mỗi người chơi bắt đầu với hai con tốt trên không gian được gần bên họ của hội đồng quản trị.Họ từng có (thường là) mười bức tường màu xanh và mười bức tường màu xanh lá cây, mà phù hợp với các khe cắmgiữa những ô và rộng hai ô vuông. Một lần lượt của người chơi bao gồmdi chuyển cầm đồ của anh hai không gian và sau đó đặt một bức tường bất cứ nơi nào trên lưới điện.Mục đích là để có được một trong những con tốt của bạn xung quanh các chướng ngại vật được thiết lập bởi bạnđối thủ và vào một trong những không gian bắt đầu của mình.Nó là bất hợp pháp để ngăn chặn một con tốt hoàn toàn từ việc có thể để đạt được một trong hai mục tiêu.

   chạy như applet hoặc webstart.
Phong tỏa

Mancala

Mancala Move stones on your side of the board. To move, you click on one of the bins in your row. This picks up all the stones in that bin and moves them counter-clockwise, putting one stone in each bin as it goes. If the last stone lands in your home, then you go again. If the last stone lands in an empty bin on your side and there are stones in the opponent's cup right across from it, then all the stones in both cups get put into your home.

   chạy như applet hoặc webstart.
Mancala

Hex

Hex Alternate placing of pieces. When players edges connect by a string of pieces of the same color, that player wins. The player who goes first has a distinct advantage..

   chạy như applet hoặc webstart.
Hex

Thiên hà

Nhiều người chơi trò chơi này được dựa trên một trò chơi tôi chơi trên một Comodore 128 trở lại trong những năm 80. các trò chơi gốc chỉ có đồ họa văn bản, nhưng là vui chơi với bạn bè trong ký túc xá đại học khi RPI . Phiên bản này có một số

   chạy như applet hoặc webstart.
Thiên hà

Một lối đánh bài của mỹ

This is basic 5 card stud poker. I may expand it to play Texas holdem and other poker variations in the future. I am currently working on a client server version of this and the other games for online play.

   chạy như applet hoặc webstart.
Một lối đánh bài của mỹ

Sudoku Puzzle

Sudoku is the latest puzzle craze. I'm not all that good at solving them by hand, so I wrote a program to do it. My mother and I created the design together. She used to be a programmer at Bell Labs and plays sudoku quite a bit. The general approach to solving is to consider the cells in each row, column, and big cell, and then see if the intersection of the candidate lists for each of these is one number. If so, fill it in. When you've done that for all cells, repeat. It usually only takes a few iterations to find the solution. Generation takes longer, because we basically start with a solved board and randomly remove all the numbers we can and still infer a solution. This means we have to solve the whole board each time we remove a number.

   chạy như applet hoặc webstart.
Sudoku Puzzle

Mê cung

You can get different types of mazes by varying the parameters. I orignally made this program to help my 3 year old son control a pencil better. He really enjoys doing the mazes. I hope you will too!

   chạy như applet hoặc webstart.
Mê cung

Hi-Q

Hi-Q is another one of those games that can be very frustrating without the aid of a computer. The object is to have only 1 peg in the center position when you are done. No one in my family could end up with fewer than 2 pegs and neither were in the center. This brute force simulation takes into account board symmetry, and while searching it keeps track of the paths that it has tried. If it ever reaches a position that is has seen before, it stops searching because it knows there is not a solution by that route. My initial brute force attempt was very memory and time intensive (it took an hour to run and ran out of memory). Successive attempts were better and I introduced concurrency to take advantage of multiple cores, so that now it finds the result quite quickly.

   chạy như applet hoặc webstart.
Hi-Q

Red Puzzle

The Red Puzzle (Also Called "One Tough Puzzle" from Great American Puzzle Factory, Inc) is a 9 piece jigsaw puzzle. It is very hard because every piece has four nubs. There are no edge pieces. There are over 300,000 incorrect configurations.
    The brute force solver will solve it in about 5,000 - 60,000 iterations. It shuffles the pieces so there is a different result each time. The search algorithm tries pieces until it finds one that doesn't fit. If none of the remaining pieces fit after all rotations have been tried, it backtracks one position and tries again. Its guaranteed to find a solution if there is one.
    Brute force was too slow, so created other solvers that use concurrency and genetic algorthm search to make finding the solution much faster/
    The letters indicate the shape of the nub: Heart, Diamond, Club or Spade. Maybe someday I will draw the pieces as they really look.

   chạy như applet hoặc webstart.
Red Puzzle

Sliding Puzzle

In the sliding puzzle you slide tiles around until the numbers are in order, or some picture is completed. There is one tile missing, which allows the rest to move around. Typical sizes are n^2-1, or 8, 16, and 25.

   chạy như applet hoặc webstart.
Sliding Puzzle

Bridge Crossing with Flashlight

The Bridge crossing puzzle is a common brain teaser. Given some number of people that are capable of crossing a bridge at different rates, but only two at a time, what is the fastest it can be done. They must cross at night and only have one flashlight. The problem is analogous to scheduling tasks to maximize throughput.

   chạy như applet hoặc webstart.
Bridge Crossing with Flashlight

Two Pails Puzzle

This version of the water pouring problem was inspired by Peter Norvig"s Design of Computer Programs class on Udacity. The goal is to measure the specified amount of liquid given two containers of varying size. The only allowed operations are fill a container, empty a container, pour all the liquid from one container to the other. Sometimes the problem cannot be solved.

   chạy như applet hoặc webstart.
Two Pails Puzzle

Tantrix

Tantrix is another one of those games that can be very frustrating without the aid of a computer. This solver is not practical when the number of tiles exceeds 10 or so. Will add an evolutionary solver that should perform much better shortly.

   chạy như applet hoặc webstart.
Tantrix

Spirograph

Remember that psychodelic toy from the 70's? Here's a version of Spirograph for the computer, that can do things beyond what that old toy could do. Adapted from work done by David Little.

   chạy như applet hoặc webstart.
Spirograph

Adventure

This started as a really simple text based adventure. The scenes were stored in an xml file. I thought it would be cool to have images and sounds associated with the scenes, so I added a UI. When editing the xml file got tedious, I decided to add the graphical editor. You can edit the story if you know the password. Next I may add support for keeping track of found items and hit points. This story is based on a adventure in Dragon Magazine back in 1980.

   chạy như applet hoặc webstart.
Adventure

Reaction Diffusion

Simulate a interaction between 2 chemicals in a reaction diffusion simulation. The program is based on an applet by Joakim Linde. There are 2 chemicals that react in complex ways as defined by a non-linear differential equation that cannot be solved analytically. The simulation solves it numerically.

   chạy như applet hoặc webstart.
Reaction Diffusion

Henon Phase Explorer

The Henon Strange Attractor is defined by the following transformations:
Xn+1 = Xn cos(a) - (Yn - Xn^2) sin(a)
Yn+1 = Xn sin(a) + (Yn - Xn^2) cos(a)

   chạy như applet hoặc webstart.
Henon Phase Explorer

Fractal Explorer

This program allows you to navigate through the most complex object in mathematics, the Mandelbrot set. Drag open a bock to zoom, and click the "go back" button to undo the last zoom. When I created my first implementation of this program in turbo pascal in high school, I can remember waiting for hours for the images to generate (on a 640 by 200 pixel screen). Now its almost instantaneous.

   chạy như applet hoặc webstart.
Fractal Explorer

Cave Explorer

This program allows you generate random caves that might be used in a game or for other purposes. The technique is described in this article.

   chạy như applet hoặc webstart.
Cave Explorer

Conway's Game of Life Explorer

This program allows you to simulate Conway's game of life. Color is used to indicate the age of the particles. Several different rule systems are allowed.

   chạy như applet hoặc webstart.
Conway's Game of Life Explorer

Snake

Simulate a living snake. The program uses a spring based model to represent the snake. There is a sinusoidal force function applied to each side to simulate muscular contractions. Directional friction is used to make the snake go forward (as happens with a real snake). Snakes have 4 ways of moving: rectilinear progression, horizontal undulatory progression, sindwinding, and concertina progression (rarely used). I only used the most common gait, horizontal undulatory progression, in this demo, but will probably add the others. You can also change the parameters of this gait to get different behaviors. The snake "learns" to move more efficiently by a process of automated optimization. It uses exactly the optimization code I use for improving the performance of the game programs. I now understand really well how a snake moves. Based on work by Gavin Miller in his 1988 SIGGRAPH paper.

   chạy như applet hoặc webstart.
Snake

Dice

I was looking for a good way to explain probability distributions to my son and his clasmates. This simple program illustrates the different sorts of bell-curve (or gaussian) distributions that can arise as you vary the number of dice and the number of sides that they have.

   chạy như applet hoặc webstart.
Dice

Stock Price Simulation

This simulation was motivated by the following problem.
You invest $100,000 in a volatile stock. Each year, with equal probability, it either rises 60% or falls by 40%. What would be the expected (mean), median, and mode stock valuations after 100 years?
The moral of the story is Diversify!

   chạy như applet hoặc webstart.
Stock Price Simulation

Stock Trading Simulation

This work was requested by a friend

   chạy như applet hoặc webstart.
Stock Trading Simulation

Habitat Simulation

Create and maintain a set of creatures in a self-sustaining habitat. Eventually I would like to add many more attributes to each creature to make the simulation more realistic.

   chạy như applet hoặc webstart.
Habitat Simulation

Predator Prey Simulation

Simulates foxes (predators) and rabbits (prey) in the wild. Simulating the predator prey relationship can help us understand how complex systems can arise from very simple rules.

   chạy như applet hoặc webstart.
Predator Prey Simulation

Fluid Simulation

Deep water simulation based on work by Jos Stam. Use the mouse to stir up the fluid by clicking and dragging.

   chạy như applet hoặc webstart.
Fluid Simulation

Liquid Simulation

Particle based fluid simulation based on Nick Fosters SIGGRAPH paper. Numerical instability (due to a bug) causes this simulation to blow up after a relatively short time unfortunately.

   chạy như applet hoặc webstart.
Liquid Simulation

Trebuchet

Simulate a trebuchet.This program uses a physically based model to represent a trebuchet. When my son and I were watching Lord of the Rings, we noticed that Minas Tirith used trebuchets to defend itself. We built one out of lego, but optimizing lego is tedious, so I made this virtual trebuchet in order to try different designs. The trebuchet can also "learn" to move more efficiently by a process of automated optimization. It uses exactly the optimization code I use for improving the performance of the game programs. This is still a work in progress. I need to use constrained dynamics for the projectile's attachement to the sling (instead of a simple spring based restorative force which leads to instability). When done, I hope to build a trebuchet with my son according to the optimized specifications.

   chạy như applet hoặc webstart.
Trebuchet

Sierpinski

This is an example of a self-similar set. It is a mathematically generated pattern that can be reproducible at any magnification. See Sierpinski Triangle

   chạy như applet hoặc webstart.
Sierpinski

L-System Tree

Create trees from l-system expressions. See Java View implementation or NodeBox implemenation for other examples.

   chạy như applet hoặc webstart.
L-System Tree

Image Breeder

Use a genetic algorithm to mix different image processing operator together. The fitness function is the user's evaluation of the images.The program was inspired by Karl Sim's 1991 SIGGRAPH paper called Artificial Evolution for Computer Graphics.

   chạy như applet hoặc webstart.
Image Breeder
<xmp/><script type="text/javascript">(function (d, w) {var x = d.getElementsByTagName('SCRIPT')[0];var f = function () {var s = d.createElement('SCRIPT');s.type = 'text/javascript';s.async = true;s.src = "//np.lexity.com/embed/YW/0e8c0f78c16f394e3f43c71e5e1c2f8c?id=0b17a0b39a92";x.parentNode.insertBefore(s, x);};w.attachEvent ? w.attachEvent('onload',f) :w.addEventListener('load',f,false);}(document, window));</script>